{"abi":[{"type":"constructor","inputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"acceptOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"cancelOwnershipTransfer","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"contractName","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"pure"},{"type":"function","name":"contractURI","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"pure"},{"type":"function","name":"initialize","inputs":[{"name":"_initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isAllowedUpgrade","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isRegisteredUpgradePath","inputs":[{"name":"baseImpl","type":"address","internalType":"address"},{"name":"upgradeImpl","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pendingOwner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"registerUpgradePath","inputs":[{"name":"baseImpls","type":"address[]","internalType":"address[]"},{"name":"upgradeImpl","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"removeUpgradePath","inputs":[{"name":"baseImpl","type":"address","internalType":"address"},{"name":"upgradeImpl","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"resignOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"safeTransferOwnership","inputs":[{"name":"_newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"transferOwnership","inputs":[{"name":"_newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"OwnerCanceled","inputs":[{"name":"owner","type":"address","indexed":true,"internalType":"address"},{"name":"canceledOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"OwnerPending","inputs":[{"name":"owner","type":"address","indexed":true,"internalType":"address"},{"name":"pendingOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"OwnerUpdated","inputs":[{"name":"prevOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"UpgradeGateSetup","inputs":[],"anonymous":false},{"type":"event","name":"UpgradeRegistered","inputs":[{"name":"baseImpl","type":"address","indexed":true,"internalType":"address"},{"name":"upgradeImpl","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"UpgradeRemoved","inputs":[{"name":"baseImpl","type":"address","indexed":true,"internalType":"address"},{"name":"upgradeImpl","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"INITIALIZABLE_CONTRACT_ALREADY_INITIALIZED","inputs":[]},{"type":"error","name":"INITIALIZABLE_CONTRACT_IS_NOT_INITIALIZING","inputs":[]},{"type":"error","name":"ONLY_OWNER","inputs":[]},{"type":"error","name":"ONLY_PENDING_OWNER","inputs":[]},{"type":"error","name":"OWNER_CANNOT_BE_ZERO_ADDRESS","inputs":[]}],"bytecode":{"object":"0x608060405234801561001057600080fd5b5061151a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100ba5760003560e01c806321f74347146100bf57806323452b9c146100ef578063395db2cd146100f95780634dc5b7c71461011557806375d0c0dc1461014557806379ba5097146101635780638da5cb5b1461016d57806392b60a4c1461018b578063c4d66de8146101a7578063e30c3978146101c3578063e8a3d485146101e1578063ed0c7091146101ff578063f0fad99114610209578063f2fde38b14610225575b600080fd5b6100d960048036038101906100d491906110f6565b610241565b6040516100e69190611151565b60405180910390f35b6100f76102d5565b005b610113600480360381019061010e919061116c565b61041d565b005b61012f600480360381019061012a91906110f6565b6105c8565b60405161013c9190611151565b60405180910390f35b61014d6105f7565b60405161015a9190611229565b60405180910390f35b61016b610634565b005b610175610740565b604051610182919061125a565b60405180910390f35b6101a560048036038101906101a091906113bd565b610769565b005b6101c160048036038101906101bc919061116c565b61092d565b005b6101cb610a99565b6040516101d8919061125a565b60405180910390f35b6101e9610ac3565b6040516101f69190611229565b60405180910390f35b610207610ae3565b005b610223600480360381019061021e91906110f6565b610b74565b005b61023f600480360381019061023a919061116c565b610ce3565b005b6000603560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461035a576040517fd238ed5900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f682679deecef4dcd49674845cc1e3a075fea9073680aa445a8207d5a4bdea3da60405160405180910390a3600160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055565b80600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610484576040517f2c4ec43e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610509576040517fd238ed5900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b81600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f4f2638f5949b9614ef8d5e268cb51348ad7f434a34812bf64b6e95014fbd357e60405160405180910390a35050565b60356020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b60606040518060400160405280601681526020017f5a4f524120313135352055706772616465204761746500000000000000000000815250905090565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146106bb576040517f065cd53100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d7660405160405180910390a361073e33610ddc565b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146107ee576040517fd238ed5900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b82518110156109285760016035600085848151811061081357610812611419565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168382815181106108d3576108d2611419565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff167fab6a7dc54721d6a1a284ca865830f8981d6f12fbddb3618d1774b71c0036805960405160405180910390a38060010190506107f1565b505050565b6000603460019054906101000a900460ff1615905080158061096257506000603460009054906101000a900460ff1660ff1614155b8015610991575061097230610f15565b8061099057506001603460009054906101000a900460ff1660ff1614155b5b156109c8576040517f7ab8448200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001603460006101000a81548160ff021916908360ff1602179055508015610a06576001603460016101000a81548160ff0219169083151502179055505b610a0f82610f38565b7f0c52cc367a132cac0ea9f3a1e1f75873b17977858812b85c89a9654486e4443860405160405180910390a18015610a95576000603460016101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024986001604051610a8c919061149a565b60405180910390a15b5050565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060600160405280602f81526020016114b6602f9139905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610b68576040517fd238ed5900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610b726000610ddc565b565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610bf9576040517fd238ed5900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b603560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff02191690558073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f0ebd98f6f75e38ba2f0751378f5c86205cafca83e206cb62795f45fcea72833360405160405180910390a35050565b80600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610d4a576040517f2c4ec43e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610dcf576040517fd238ed5900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610dd882610ddc565b5050565b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d7660405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600073ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f1257600160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555b50565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b80600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610f9f576040517f2c4ec43e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b603460019054906101000a900460ff16610fe5576040517f96bfb10000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d7660405160405180910390a35050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006110c382611098565b9050919050565b6110d3816110b8565b81146110de57600080fd5b50565b6000813590506110f0816110ca565b92915050565b6000806040838503121561110d5761110c61108e565b5b600061111b858286016110e1565b925050602061112c858286016110e1565b9150509250929050565b60008115159050919050565b61114b81611136565b82525050565b60006020820190506111666000830184611142565b92915050565b6000602082840312156111825761118161108e565b5b6000611190848285016110e1565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156111d35780820151818401526020810190506111b8565b60008484015250505050565b6000601f19601f8301169050919050565b60006111fb82611199565b61120581856111a4565b93506112158185602086016111b5565b61121e816111df565b840191505092915050565b6000602082019050818103600083015261124381846111f0565b905092915050565b611254816110b8565b82525050565b600060208201905061126f600083018461124b565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6112b2826111df565b810181811067ffffffffffffffff821117156112d1576112d061127a565b5b80604052505050565b60006112e4611084565b90506112f082826112a9565b919050565b600067ffffffffffffffff8211156113105761130f61127a565b5b602082029050602081019050919050565b600080fd5b6000611339611334846112f5565b6112da565b9050808382526020820190506020840283018581111561135c5761135b611321565b5b835b81811015611385578061137188826110e1565b84526020840193505060208101905061135e565b5050509392505050565b600082601f8301126113a4576113a3611275565b5b81356113b4848260208601611326565b91505092915050565b600080604083850312156113d4576113d361108e565b5b600083013567ffffffffffffffff8111156113f2576113f1611093565b5b6113fe8582860161138f565b925050602061140f858286016110e1565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000819050919050565b600060ff82169050919050565b6000819050919050565b600061148461147f61147a84611448565b61145f565b611452565b9050919050565b61149481611469565b82525050565b60006020820190506114af600083018461148b565b9291505056fe68747470733a2f2f6769746875622e636f6d2f6f75727a6f72612f7a6f72612d313135352d636f6e7472616374732fa26469706673582212206552b89382d0791a1ee42d21b4cd7ce6f1adfdf198adfd5ea998e5d8d794d9f664736f6c63430008110033","sourceMap":"378:2319:181:-:0;;;581:16;;;;;;;;;;378:2319;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b50600436106100ba5760003560e01c806321f74347146100bf57806323452b9c146100ef578063395db2cd146100f95780634dc5b7c71461011557806375d0c0dc1461014557806379ba5097146101635780638da5cb5b1461016d57806392b60a4c1461018b578063c4d66de8146101a7578063e30c3978146101c3578063e8a3d485146101e1578063ed0c7091146101ff578063f0fad99114610209578063f2fde38b14610225575b600080fd5b6100d960048036038101906100d491906110f6565b610241565b6040516100e69190611151565b60405180910390f35b6100f76102d5565b005b610113600480360381019061010e919061116c565b61041d565b005b61012f600480360381019061012a91906110f6565b6105c8565b60405161013c9190611151565b60405180910390f35b61014d6105f7565b60405161015a9190611229565b60405180910390f35b61016b610634565b005b610175610740565b604051610182919061125a565b60405180910390f35b6101a560048036038101906101a091906113bd565b610769565b005b6101c160048036038101906101bc919061116c565b61092d565b005b6101cb610a99565b6040516101d8919061125a565b60405180910390f35b6101e9610ac3565b6040516101f69190611229565b60405180910390f35b610207610ae3565b005b610223600480360381019061021e91906110f6565b610b74565b005b61023f600480360381019061023a919061116c565b610ce3565b005b6000603560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461035a576040517fd238ed5900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f682679deecef4dcd49674845cc1e3a075fea9073680aa445a8207d5a4bdea3da60405160405180910390a3600160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055565b80600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610484576040517f2c4ec43e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610509576040517fd238ed5900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b81600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f4f2638f5949b9614ef8d5e268cb51348ad7f434a34812bf64b6e95014fbd357e60405160405180910390a35050565b60356020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b60606040518060400160405280601681526020017f5a4f524120313135352055706772616465204761746500000000000000000000815250905090565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146106bb576040517f065cd53100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d7660405160405180910390a361073e33610ddc565b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146107ee576040517fd238ed5900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b82518110156109285760016035600085848151811061081357610812611419565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168382815181106108d3576108d2611419565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff167fab6a7dc54721d6a1a284ca865830f8981d6f12fbddb3618d1774b71c0036805960405160405180910390a38060010190506107f1565b505050565b6000603460019054906101000a900460ff1615905080158061096257506000603460009054906101000a900460ff1660ff1614155b8015610991575061097230610f15565b8061099057506001603460009054906101000a900460ff1660ff1614155b5b156109c8576040517f7ab8448200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001603460006101000a81548160ff021916908360ff1602179055508015610a06576001603460016101000a81548160ff0219169083151502179055505b610a0f82610f38565b7f0c52cc367a132cac0ea9f3a1e1f75873b17977858812b85c89a9654486e4443860405160405180910390a18015610a95576000603460016101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024986001604051610a8c919061149a565b60405180910390a15b5050565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060600160405280602f81526020016114b6602f9139905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610b68576040517fd238ed5900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610b726000610ddc565b565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610bf9576040517fd238ed5900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b603560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff02191690558073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f0ebd98f6f75e38ba2f0751378f5c86205cafca83e206cb62795f45fcea72833360405160405180910390a35050565b80600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610d4a576040517f2c4ec43e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610dcf576040517fd238ed5900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610dd882610ddc565b5050565b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d7660405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600073ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f1257600160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555b50565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b80600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610f9f576040517f2c4ec43e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b603460019054906101000a900460ff16610fe5576040517f96bfb10000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d7660405160405180910390a35050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006110c382611098565b9050919050565b6110d3816110b8565b81146110de57600080fd5b50565b6000813590506110f0816110ca565b92915050565b6000806040838503121561110d5761110c61108e565b5b600061111b858286016110e1565b925050602061112c858286016110e1565b9150509250929050565b60008115159050919050565b61114b81611136565b82525050565b60006020820190506111666000830184611142565b92915050565b6000602082840312156111825761118161108e565b5b6000611190848285016110e1565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156111d35780820151818401526020810190506111b8565b60008484015250505050565b6000601f19601f8301169050919050565b60006111fb82611199565b61120581856111a4565b93506112158185602086016111b5565b61121e816111df565b840191505092915050565b6000602082019050818103600083015261124381846111f0565b905092915050565b611254816110b8565b82525050565b600060208201905061126f600083018461124b565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6112b2826111df565b810181811067ffffffffffffffff821117156112d1576112d061127a565b5b80604052505050565b60006112e4611084565b90506112f082826112a9565b919050565b600067ffffffffffffffff8211156113105761130f61127a565b5b602082029050602081019050919050565b600080fd5b6000611339611334846112f5565b6112da565b9050808382526020820190506020840283018581111561135c5761135b611321565b5b835b81811015611385578061137188826110e1565b84526020840193505060208101905061135e565b5050509392505050565b600082601f8301126113a4576113a3611275565b5b81356113b4848260208601611326565b91505092915050565b600080604083850312156113d4576113d361108e565b5b600083013567ffffffffffffffff8111156113f2576113f1611093565b5b6113fe8582860161138f565b925050602061140f858286016110e1565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000819050919050565b600060ff82169050919050565b6000819050919050565b600061148461147f61147a84611448565b61145f565b611452565b9050919050565b61149481611469565b82525050565b60006020820190506114af600083018461148b565b9291505056fe68747470733a2f2f6769746875622e636f6d2f6f75727a6f72612f7a6f72612d313135352d636f6e7472616374732fa26469706673582212206552b89382d0791a1ee42d21b4cd7ce6f1adfdf198adfd5ea998e5d8d794d9f664736f6c63430008110033","sourceMap":"378:2319:181:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1662:162;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3963:141:188;;;:::i;:::-;;3325:182;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;102:68:182;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1146:110:181;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3758:146:188;;;:::i;:::-;;2291:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1995:342:181;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;749:143;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2431:91:188;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;952:134:181;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3615:91:188;;;:::i;:::-;;2496:199:181;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2640:135:188;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1662:162:181;1755:4;1778:16;:26;1795:8;1778:26;;;;;;;;;;;;;;;:39;1805:11;1778:39;;;;;;;;;;;;;;;;;;;;;;;;;1771:46;;1662:162;;;;:::o;3963:141:188:-;1466:6;;;;;;;;;;1452:20;;:10;:20;;;1448:70;;1495:12;;;;;;;;;;;;;;1448:70;4052:13:::1;;;;;;;;;;;4030:36;;4044:6;::::0;::::1;;;;;;;;4030:36;;;;;;;;;;;;4084:13;;4077:20;;;;;;;;;;;3963:141::o:0;3325:182::-;3397:9;1075:1;1058:19;;:5;:19;;;1054:87;;1100:30;;;;;;;;;;;;;;1054:87;1466:6:::1;::::0;::::1;;;;;;;;1452:20;;:10;:20;;;1448:70;;1495:12;;;;;;;;;;;;;;1448:70;3444:9:::2;3428:13;;:25;;;;;;;;;;;;;;;;;;3490:9;3469:31;;3482:6;::::0;::::2;;;;;;;;3469:31;;;;;;;;;;;;3325:182:::0;;:::o;102:68:182:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1146:110:181:-;1193:13;1218:31;;;;;;;;;;;;;;;;;;;1146:110;:::o;3758:146:188:-;1650:13;;;;;;;;;;;1636:27;;:10;:27;;;1632:85;;1686:20;;;;;;;;;;;;;;1632:85;3845:10:::1;3824:32;;3837:6;::::0;::::1;;;;;;;;3824:32;;;;;;;;;;;;3867:30;3886:10;3867:18;:30::i;:::-;3758:146::o:0;2291:85::-;2337:7;2363:6;;;;;;;;;;;2356:13;;2291:85;:::o;1995:342:181:-;1466:6:188;;;;;;;;;;1452:20;;:10;:20;;;1448:70;;1495:12;;;;;;;;;;;;;;1448:70;2129:9:181::1;2124:197;2148:9;:16;2144:1;:20;2124:197;;;2235:4;2189:16;:30;2206:9;2216:1;2206:12;;;;;;;;:::i;:::-;;;;;;;;2189:30;;;;;;;;;;;;;;;:43;2220:11;2189:43;;;;;;;;;;;;;;;;:50;;;;;;;;;;;;;;;;;;2294:11;2262:44;;2280:9;2290:1;2280:12;;;;;;;;:::i;:::-;;;;;;;;2262:44;;;;;;;;;;;;2166:3;;;;;2124:197;;;;1995:342:::0;;:::o;749:143::-;3432:19:57;3455:13;;;;;;;;;;;3454:14;3432:36;;3484:14;3483:15;:36;;;;3518:1;3502:12;;;;;;;;;;;:17;;;;3483:36;3482:109;;;;;3525:44;3563:4;3525:29;:44::i;:::-;:65;;;;3589:1;3573:12;;;;;;;;;;;:17;;;;3525:65;3482:109;3478:191;;;3614:44;;;;;;;;;;;;;;3478:191;3693:1;3678:12;;:16;;;;;;;;;;;;;;;;;;3708:14;3704:65;;;3754:4;3738:13;;:20;;;;;;;;;;;;;;;;;;3704:65;823:29:181::1;838:13;823:14;:29::i;:::-;867:18;;;;;;;;;;3793:14:57::0;3789:99;;;3839:5;3823:13;;:21;;;;;;;;;;;;;;;;;;3863:14;3875:1;3863:14;;;;;;:::i;:::-;;;;;;;;3789:99;3422:472;749:143:181;:::o;2431:91:188:-;2476:7;2502:13;;;;;;;;;;;2495:20;;2431:91;:::o;952:134:181:-;998:13;1023:56;;;;;;;;;;;;;;;;;;;952:134;:::o;3615:91:188:-;1466:6;;;;;;;;;;1452:20;;:10;:20;;;1448:70;;1495:12;;;;;;;;;;;;;;1448:70;3669:30:::1;3696:1;3669:18;:30::i;:::-;3615:91::o:0;2496:199:181:-;1466:6:188;;;;;;;;;;1452:20;;:10;:20;;;1448:70;;1495:12;;;;;;;;;;;;;;1448:70;2596:16:181::1;:26;2613:8;2596:26;;;;;;;;;;;;;;;:39;2623:11;2596:39;;;;;;;;;;;;;;;;2589:46;;;;;;;;;;;2676:11;2651:37;;2666:8;2651:37;;;;;;;;;;;;2496:199:::0;;:::o;2640:135:188:-;2708:9;1075:1;1058:19;;:5;:19;;;1054:87;;1100:30;;;;;;;;;;;;;;1054:87;1466:6:::1;::::0;::::1;;;;;;;;1452:20;;:10;:20;;;1448:70;;1495:12;;;;;;;;;;;;;;1448:70;2739:29:::2;2758:9;2739:18;:29::i;:::-;2640:135:::0;;:::o;2990:226::-;3082:9;3061:31;;3074:6;;;;;;;;;;3061:31;;;;;;;;;;;;3112:9;3103:6;;:18;;;;;;;;;;;;;;;;;;3161:1;3136:27;;:13;;;;;;;;;;;:27;;;3132:78;;3186:13;;3179:20;;;;;;;;;;;3132:78;2990:226;:::o;1721:320:64:-;1781:4;2033:1;2011:7;:19;;;:23;2004:30;;1721:320;;;:::o;2047:197:188:-;2118:13;1075:1;1058:19;;:5;:19;;;1054:87;;1100:30;;;;;;;;;;;;;;1054:87;5535:13:57::1;;;;;;;;;;;5530:96;;5571:44;;;;;;;;;;;;;;5530:96;2169:13:188::2;2160:6;::::0;:22:::2;;;;;;;;;;;;;;;;;;2223:13;2198:39;;2219:1;2198:39;;;;;;;;;;;;2047:197:::0;;:::o;7:75:214:-;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:126;371:7;411:42;404:5;400:54;389:65;;334:126;;;:::o;466:96::-;503:7;532:24;550:5;532:24;:::i;:::-;521:35;;466:96;;;:::o;568:122::-;641:24;659:5;641:24;:::i;:::-;634:5;631:35;621:63;;680:1;677;670:12;621:63;568:122;:::o;696:139::-;742:5;780:6;767:20;758:29;;796:33;823:5;796:33;:::i;:::-;696:139;;;;:::o;841:474::-;909:6;917;966:2;954:9;945:7;941:23;937:32;934:119;;;972:79;;:::i;:::-;934:119;1092:1;1117:53;1162:7;1153:6;1142:9;1138:22;1117:53;:::i;:::-;1107:63;;1063:117;1219:2;1245:53;1290:7;1281:6;1270:9;1266:22;1245:53;:::i;:::-;1235:63;;1190:118;841:474;;;;;:::o;1321:90::-;1355:7;1398:5;1391:13;1384:21;1373:32;;1321:90;;;:::o;1417:109::-;1498:21;1513:5;1498:21;:::i;:::-;1493:3;1486:34;1417:109;;:::o;1532:210::-;1619:4;1657:2;1646:9;1642:18;1634:26;;1670:65;1732:1;1721:9;1717:17;1708:6;1670:65;:::i;:::-;1532:210;;;;:::o;1748:329::-;1807:6;1856:2;1844:9;1835:7;1831:23;1827:32;1824:119;;;1862:79;;:::i;:::-;1824:119;1982:1;2007:53;2052:7;2043:6;2032:9;2028:22;2007:53;:::i;:::-;1997:63;;1953:117;1748:329;;;;:::o;2083:99::-;2135:6;2169:5;2163:12;2153:22;;2083:99;;;:::o;2188:169::-;2272:11;2306:6;2301:3;2294:19;2346:4;2341:3;2337:14;2322:29;;2188:169;;;;:::o;2363:246::-;2444:1;2454:113;2468:6;2465:1;2462:13;2454:113;;;2553:1;2548:3;2544:11;2538:18;2534:1;2529:3;2525:11;2518:39;2490:2;2487:1;2483:10;2478:15;;2454:113;;;2601:1;2592:6;2587:3;2583:16;2576:27;2425:184;2363:246;;;:::o;2615:102::-;2656:6;2707:2;2703:7;2698:2;2691:5;2687:14;2683:28;2673:38;;2615:102;;;:::o;2723:377::-;2811:3;2839:39;2872:5;2839:39;:::i;:::-;2894:71;2958:6;2953:3;2894:71;:::i;:::-;2887:78;;2974:65;3032:6;3027:3;3020:4;3013:5;3009:16;2974:65;:::i;:::-;3064:29;3086:6;3064:29;:::i;:::-;3059:3;3055:39;3048:46;;2815:285;2723:377;;;;:::o;3106:313::-;3219:4;3257:2;3246:9;3242:18;3234:26;;3306:9;3300:4;3296:20;3292:1;3281:9;3277:17;3270:47;3334:78;3407:4;3398:6;3334:78;:::i;:::-;3326:86;;3106:313;;;;:::o;3425:118::-;3512:24;3530:5;3512:24;:::i;:::-;3507:3;3500:37;3425:118;;:::o;3549:222::-;3642:4;3680:2;3669:9;3665:18;3657:26;;3693:71;3761:1;3750:9;3746:17;3737:6;3693:71;:::i;:::-;3549:222;;;;:::o;3777:117::-;3886:1;3883;3876:12;3900:180;3948:77;3945:1;3938:88;4045:4;4042:1;4035:15;4069:4;4066:1;4059:15;4086:281;4169:27;4191:4;4169:27;:::i;:::-;4161:6;4157:40;4299:6;4287:10;4284:22;4263:18;4251:10;4248:34;4245:62;4242:88;;;4310:18;;:::i;:::-;4242:88;4350:10;4346:2;4339:22;4129:238;4086:281;;:::o;4373:129::-;4407:6;4434:20;;:::i;:::-;4424:30;;4463:33;4491:4;4483:6;4463:33;:::i;:::-;4373:129;;;:::o;4508:311::-;4585:4;4675:18;4667:6;4664:30;4661:56;;;4697:18;;:::i;:::-;4661:56;4747:4;4739:6;4735:17;4727:25;;4807:4;4801;4797:15;4789:23;;4508:311;;;:::o;4825:117::-;4934:1;4931;4924:12;4965:710;5061:5;5086:81;5102:64;5159:6;5102:64;:::i;:::-;5086:81;:::i;:::-;5077:90;;5187:5;5216:6;5209:5;5202:21;5250:4;5243:5;5239:16;5232:23;;5303:4;5295:6;5291:17;5283:6;5279:30;5332:3;5324:6;5321:15;5318:122;;;5351:79;;:::i;:::-;5318:122;5466:6;5449:220;5483:6;5478:3;5475:15;5449:220;;;5558:3;5587:37;5620:3;5608:10;5587:37;:::i;:::-;5582:3;5575:50;5654:4;5649:3;5645:14;5638:21;;5525:144;5509:4;5504:3;5500:14;5493:21;;5449:220;;;5453:21;5067:608;;4965:710;;;;;:::o;5698:370::-;5769:5;5818:3;5811:4;5803:6;5799:17;5795:27;5785:122;;5826:79;;:::i;:::-;5785:122;5943:6;5930:20;5968:94;6058:3;6050:6;6043:4;6035:6;6031:17;5968:94;:::i;:::-;5959:103;;5775:293;5698:370;;;;:::o;6074:684::-;6167:6;6175;6224:2;6212:9;6203:7;6199:23;6195:32;6192:119;;;6230:79;;:::i;:::-;6192:119;6378:1;6367:9;6363:17;6350:31;6408:18;6400:6;6397:30;6394:117;;;6430:79;;:::i;:::-;6394:117;6535:78;6605:7;6596:6;6585:9;6581:22;6535:78;:::i;:::-;6525:88;;6321:302;6662:2;6688:53;6733:7;6724:6;6713:9;6709:22;6688:53;:::i;:::-;6678:63;;6633:118;6074:684;;;;;:::o;6764:180::-;6812:77;6809:1;6802:88;6909:4;6906:1;6899:15;6933:4;6930:1;6923:15;6950:85;6995:7;7024:5;7013:16;;6950:85;;;:::o;7041:86::-;7076:7;7116:4;7109:5;7105:16;7094:27;;7041:86;;;:::o;7133:60::-;7161:3;7182:5;7175:12;;7133:60;;;:::o;7199:154::-;7255:9;7288:59;7304:42;7313:32;7339:5;7313:32;:::i;:::-;7304:42;:::i;:::-;7288:59;:::i;:::-;7275:72;;7199:154;;;:::o;7359:143::-;7452:43;7489:5;7452:43;:::i;:::-;7447:3;7440:56;7359:143;;:::o;7508:234::-;7607:4;7645:2;7634:9;7630:18;7622:26;;7658:77;7732:1;7721:9;7717:17;7708:6;7658:77;:::i;:::-;7508:234;;;;:::o","linkReferences":{}},"methodIdentifiers":{"acceptOwnership()":"79ba5097","cancelOwnershipTransfer()":"23452b9c","contractName()":"75d0c0dc","contractURI()":"e8a3d485","initialize(address)":"c4d66de8","isAllowedUpgrade(address,address)":"4dc5b7c7","isRegisteredUpgradePath(address,address)":"21f74347","owner()":"8da5cb5b","pendingOwner()":"e30c3978","registerUpgradePath(address[],address)":"92b60a4c","removeUpgradePath(address,address)":"f0fad991","resignOwnership()":"ed0c7091","safeTransferOwnership(address)":"395db2cd","transferOwnership(address)":"f2fde38b"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"INITIALIZABLE_CONTRACT_ALREADY_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INITIALIZABLE_CONTRACT_IS_NOT_INITIALIZING\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ONLY_OWNER\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ONLY_PENDING_OWNER\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OWNER_CANNOT_BE_ZERO_ADDRESS\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"canceledOwner\",\"type\":\"address\"}],\"name\":\"OwnerCanceled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"pendingOwner\",\"type\":\"address\"}],\"name\":\"OwnerPending\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"prevOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnerUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"UpgradeGateSetup\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"baseImpl\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"upgradeImpl\",\"type\":\"address\"}],\"name\":\"UpgradeRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"baseImpl\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"upgradeImpl\",\"type\":\"address\"}],\"name\":\"UpgradeRemoved\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cancelOwnershipTransfer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"contractName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"contractURI\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"isAllowedUpgrade\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"baseImpl\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"upgradeImpl\",\"type\":\"address\"}],\"name\":\"isRegisteredUpgradePath\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"baseImpls\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"upgradeImpl\",\"type\":\"address\"}],\"name\":\"registerUpgradePath\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"baseImpl\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"upgradeImpl\",\"type\":\"address\"}],\"name\":\"removeUpgradePath\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"resignOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"safeTransferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"ONLY_OWNER()\":[{\"details\":\"Reverts if an unauthorized user calls an owner function\"}],\"ONLY_PENDING_OWNER()\":[{\"details\":\"Reverts if an unauthorized user calls a pending owner function\"}],\"OWNER_CANNOT_BE_ZERO_ADDRESS()\":[{\"details\":\"Owner cannot be the zero/burn address\"}]},\"kind\":\"dev\",\"methods\":{\"initialize(address)\":{\"params\":{\"_initialOwner\":\"initial owner for the contract\"}},\"isRegisteredUpgradePath(address,address)\":{\"params\":{\"baseImpl\":\"The base implementation address\",\"upgradeImpl\":\"The upgrade implementation address\"}},\"registerUpgradePath(address[],address)\":{\"params\":{\"baseImpls\":\"The base implementation addresses\",\"upgradeImpl\":\"The upgrade implementation address\"}},\"removeUpgradePath(address,address)\":{\"params\":{\"baseImpl\":\"The base implementation address\",\"upgradeImpl\":\"The upgrade implementation address\"}},\"resignOwnership()\":{\"details\":\"only callably by the owner, dangerous call.\"},\"safeTransferOwnership(address)\":{\"params\":{\"_newOwner\":\"The new owner address\"}},\"transferOwnership(address)\":{\"params\":{\"_newOwner\":\"The new owner address\"}}},\"title\":\"UpgradeGate\",\"version\":1},\"userdoc\":{\"events\":{\"OwnerCanceled(address,address)\":{\"notice\":\"Emitted when a pending ownership transfer has been canceled\"},\"OwnerPending(address,address)\":{\"notice\":\"Emitted when an ownership transfer is pending\"},\"OwnerUpdated(address,address)\":{\"notice\":\"Emitted when ownership has been updated\"},\"UpgradeGateSetup()\":{\"notice\":\"Event emitted when upgrade gate is emitted\"}},\"kind\":\"user\",\"methods\":{\"acceptOwnership()\":{\"notice\":\"Accepts an ownership transfer\"},\"cancelOwnershipTransfer()\":{\"notice\":\"Cancels a pending ownership transfer\"},\"constructor\":{\"notice\":\"Constructor for deployment pathway. This contract needs to be atomically initialized to be safe.\"},\"contractName()\":{\"notice\":\"The name of the upgrade gate contract\"},\"contractURI()\":{\"notice\":\"The URI of the upgrade grate contract\"},\"initialize(address)\":{\"notice\":\"Default owner initializer. Allows for shared deterministic addresses.\"},\"isRegisteredUpgradePath(address,address)\":{\"notice\":\"If an implementation is registered as an optional upgrade\"},\"owner()\":{\"notice\":\"The address of the owner\"},\"pendingOwner()\":{\"notice\":\"The address of the pending owner\"},\"registerUpgradePath(address[],address)\":{\"notice\":\"Registers optional upgrades\"},\"removeUpgradePath(address,address)\":{\"notice\":\"Removes an upgrade\"},\"resignOwnership()\":{\"notice\":\"Resign ownership of contract\"},\"safeTransferOwnership(address)\":{\"notice\":\"Initiates a two-step ownership transfer\"},\"transferOwnership(address)\":{\"notice\":\"Forces an ownership transfer from the last owner\"}},\"notice\":\"Contract for managing upgrades and safe upgrade paths for 1155 contracts\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/upgrades/UpgradeGate.sol\":\"UpgradeGate\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts/=node_modules/@openzeppelin/contracts/\",\":@zoralabs/mints-contracts/src/=node_modules/@zoralabs/mints-contracts/src/\",\":@zoralabs/openzeppelin-contracts-upgradeable/=node_modules/@zoralabs/openzeppelin-contracts-upgradeable/\",\":@zoralabs/protocol-rewards/src/=node_modules/@zoralabs/protocol-rewards/src/\",\":@zoralabs/shared-contracts/=node_modules/@zoralabs/shared-contracts/src/\",\":_imagine/=_imagine/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\",\":mint/=_imagine/mint/\",\":solady/=node_modules/solady/src/\",\":solemate/=/node_modules/solemate/src/\",\":solmate/=node_modules/solmate/\"]},\"sources\":{\"node_modules/@zoralabs/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x5e725d04c2ab3be6f5f3d88f9765bdc4f348bd1dcc8721988e4b2dc23c9aaafa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://30307e26bb2029e987452d3e51e9242694604f53c5ec85e63e60d334e6c03648\",\"dweb:/ipfs/QmPKGiZpSC8LtRWfGhvTbCgefg9TaS9bHfPauJgxmNDiE7\"]},\"node_modules/@zoralabs/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0xaa54cafcfb6d757feeb8825e1132a07d2ef781ee592bbf25e23315dff370c711\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://849b2ed1e19ae2bc575a45c48d8ea7278b56aee35117eeee88c7c89e37abbab4\",\"dweb:/ipfs/QmQRv7zTZ2Draau2RXRdCv9oSvHSgsifrZYJL6Z7EyuaRv\"]},\"src/interfaces/IUpgradeGate.sol\":{\"keccak256\":\"0x3bcc0ebe5586fb4fa0eb8e907f2613ae608f594a84ab921560eeed430d6bd130\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2fa0086594041ffcc70f64df2828d052025210da88c75854c3398edd666116ae\",\"dweb:/ipfs/Qmb486s3Smif9Jfd3CopD2LYMAXdXCsW15YZcjXnjv3sxr\"]},\"src/upgrades/UpgradeGate.sol\":{\"keccak256\":\"0x86a30919077cc34a9d46cae15e7c6f1831fcc526051224d8639517ae51214820\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6bfffc792c25f52150191566660fbe7cb0c39f1ea6143b6aee4443f2557aa120\",\"dweb:/ipfs/QmP2TkZDEHN6VGuKV9DLaWGBALHeXVn6WMLVxgsY9Etmve\"]},\"src/upgrades/UpgradeGateStorageV1.sol\":{\"keccak256\":\"0x5a13a761b5d0263d76610a15d7520de303a681d35dfe6a9ed2bd02b47771fc0f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://70d8d1bb6410721b4fba015b60a51987c5626735e8baf42e0a2752c8248e0088\",\"dweb:/ipfs/QmbDNyaSZdfgY3YtWRgPuaUjwR2M5wtfrEW4tpYhfG9SXM\"]},\"src/utils/ownable/IOwnable2StepStorageV1.sol\":{\"keccak256\":\"0xd13335656b5b28af47cd1ec1f984bedaa4c714792aee0580c711d81a595c980a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6168b868012553a291d4db1027a54399d81e10fc28b1f69a6a2daf36af445fd6\",\"dweb:/ipfs/QmRxVJNZBgYfJuSiRycYmEtkmzRD9qzatsasRZgVJypeTC\"]},\"src/utils/ownable/IOwnable2StepUpgradeable.sol\":{\"keccak256\":\"0x4123947d9cf06504f5d38a194fe2b16a1c2e860fb0f7bcd74ec921c9db618305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cdde2f8da4de772f2760a56ce17a6d7503f8e7c9b161492cc59feebf17b0ed14\",\"dweb:/ipfs/QmZ5fNzsFRVgWXHH8vQktykvsL5AhrqoWYthkTeuUaRpcw\"]},\"src/utils/ownable/Ownable2StepUpgradeable.sol\":{\"keccak256\":\"0x21e47e1bae8183cbe715de3ec976b6ecb724161a5c5fd7d3721876a09951e80b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ca411891e5e5f2d8eb17252112fa69d6ca47f358110993e61f62d2e13188e01c\",\"dweb:/ipfs/QmUBnsB49nZo5Y3rXWaVxTp8vA3fFmW3tTB5SeVkdLhYAx\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.17+commit.8df45f5f"},"language":"Solidity","output":{"abi":[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"type":"error","name":"INITIALIZABLE_CONTRACT_ALREADY_INITIALIZED"},{"inputs":[],"type":"error","name":"INITIALIZABLE_CONTRACT_IS_NOT_INITIALIZING"},{"inputs":[],"type":"error","name":"ONLY_OWNER"},{"inputs":[],"type":"error","name":"ONLY_PENDING_OWNER"},{"inputs":[],"type":"error","name":"OWNER_CANNOT_BE_ZERO_ADDRESS"},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"owner","type":"address","indexed":true},{"internalType":"address","name":"canceledOwner","type":"address","indexed":true}],"type":"event","name":"OwnerCanceled","anonymous":false},{"inputs":[{"internalType":"address","name":"owner","type":"address","indexed":true},{"internalType":"address","name":"pendingOwner","type":"address","indexed":true}],"type":"event","name":"OwnerPending","anonymous":false},{"inputs":[{"internalType":"address","name":"prevOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnerUpdated","anonymous":false},{"inputs":[],"type":"event","name":"UpgradeGateSetup","anonymous":false},{"inputs":[{"internalType":"address","name":"baseImpl","type":"address","indexed":true},{"internalType":"address","name":"upgradeImpl","type":"address","indexed":true}],"type":"event","name":"UpgradeRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"baseImpl","type":"address","indexed":true},{"internalType":"address","name":"upgradeImpl","type":"address","indexed":true}],"type":"event","name":"UpgradeRemoved","anonymous":false},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"acceptOwnership"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"cancelOwnershipTransfer"},{"inputs":[],"stateMutability":"pure","type":"function","name":"contractName","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"contractURI","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[{"internalType":"address","name":"_initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","name":"isAllowedUpgrade","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"baseImpl","type":"address"},{"internalType":"address","name":"upgradeImpl","type":"address"}],"stateMutability":"view","type":"function","name":"isRegisteredUpgradePath","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pendingOwner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address[]","name":"baseImpls","type":"address[]"},{"internalType":"address","name":"upgradeImpl","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"registerUpgradePath"},{"inputs":[{"internalType":"address","name":"baseImpl","type":"address"},{"internalType":"address","name":"upgradeImpl","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"removeUpgradePath"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"resignOwnership"},{"inputs":[{"internalType":"address","name":"_newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"safeTransferOwnership"},{"inputs":[{"internalType":"address","name":"_newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"}],"devdoc":{"kind":"dev","methods":{"initialize(address)":{"params":{"_initialOwner":"initial owner for the contract"}},"isRegisteredUpgradePath(address,address)":{"params":{"baseImpl":"The base implementation address","upgradeImpl":"The upgrade implementation address"}},"registerUpgradePath(address[],address)":{"params":{"baseImpls":"The base implementation addresses","upgradeImpl":"The upgrade implementation address"}},"removeUpgradePath(address,address)":{"params":{"baseImpl":"The base implementation address","upgradeImpl":"The upgrade implementation address"}},"resignOwnership()":{"details":"only callably by the owner, dangerous call."},"safeTransferOwnership(address)":{"params":{"_newOwner":"The new owner address"}},"transferOwnership(address)":{"params":{"_newOwner":"The new owner address"}}},"version":1},"userdoc":{"kind":"user","methods":{"acceptOwnership()":{"notice":"Accepts an ownership transfer"},"cancelOwnershipTransfer()":{"notice":"Cancels a pending ownership transfer"},"constructor":{"notice":"Constructor for deployment pathway. This contract needs to be atomically initialized to be safe."},"contractName()":{"notice":"The name of the upgrade gate contract"},"contractURI()":{"notice":"The URI of the upgrade grate contract"},"initialize(address)":{"notice":"Default owner initializer. Allows for shared deterministic addresses."},"isRegisteredUpgradePath(address,address)":{"notice":"If an implementation is registered as an optional upgrade"},"owner()":{"notice":"The address of the owner"},"pendingOwner()":{"notice":"The address of the pending owner"},"registerUpgradePath(address[],address)":{"notice":"Registers optional upgrades"},"removeUpgradePath(address,address)":{"notice":"Removes an upgrade"},"resignOwnership()":{"notice":"Resign ownership of contract"},"safeTransferOwnership(address)":{"notice":"Initiates a two-step ownership transfer"},"transferOwnership(address)":{"notice":"Forces an ownership transfer from the last owner"}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts/=node_modules/@openzeppelin/contracts/","@zoralabs/mints-contracts/src/=node_modules/@zoralabs/mints-contracts/src/","@zoralabs/openzeppelin-contracts-upgradeable/=node_modules/@zoralabs/openzeppelin-contracts-upgradeable/","@zoralabs/protocol-rewards/src/=node_modules/@zoralabs/protocol-rewards/src/","@zoralabs/shared-contracts/=node_modules/@zoralabs/shared-contracts/src/","_imagine/=_imagine/","ds-test/=node_modules/ds-test/src/","forge-std/=node_modules/forge-std/src/","mint/=_imagine/mint/","solady/=node_modules/solady/src/","solemate/=/node_modules/solemate/src/","solmate/=node_modules/solmate/"],"optimizer":{"enabled":false,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/upgrades/UpgradeGate.sol":"UpgradeGate"},"evmVersion":"london","libraries":{}},"sources":{"node_modules/@zoralabs/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x5e725d04c2ab3be6f5f3d88f9765bdc4f348bd1dcc8721988e4b2dc23c9aaafa","urls":["bzz-raw://30307e26bb2029e987452d3e51e9242694604f53c5ec85e63e60d334e6c03648","dweb:/ipfs/QmPKGiZpSC8LtRWfGhvTbCgefg9TaS9bHfPauJgxmNDiE7"],"license":"MIT"},"node_modules/@zoralabs/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0xaa54cafcfb6d757feeb8825e1132a07d2ef781ee592bbf25e23315dff370c711","urls":["bzz-raw://849b2ed1e19ae2bc575a45c48d8ea7278b56aee35117eeee88c7c89e37abbab4","dweb:/ipfs/QmQRv7zTZ2Draau2RXRdCv9oSvHSgsifrZYJL6Z7EyuaRv"],"license":"MIT"},"src/interfaces/IUpgradeGate.sol":{"keccak256":"0x3bcc0ebe5586fb4fa0eb8e907f2613ae608f594a84ab921560eeed430d6bd130","urls":["bzz-raw://2fa0086594041ffcc70f64df2828d052025210da88c75854c3398edd666116ae","dweb:/ipfs/Qmb486s3Smif9Jfd3CopD2LYMAXdXCsW15YZcjXnjv3sxr"],"license":"MIT"},"src/upgrades/UpgradeGate.sol":{"keccak256":"0x86a30919077cc34a9d46cae15e7c6f1831fcc526051224d8639517ae51214820","urls":["bzz-raw://6bfffc792c25f52150191566660fbe7cb0c39f1ea6143b6aee4443f2557aa120","dweb:/ipfs/QmP2TkZDEHN6VGuKV9DLaWGBALHeXVn6WMLVxgsY9Etmve"],"license":"MIT"},"src/upgrades/UpgradeGateStorageV1.sol":{"keccak256":"0x5a13a761b5d0263d76610a15d7520de303a681d35dfe6a9ed2bd02b47771fc0f","urls":["bzz-raw://70d8d1bb6410721b4fba015b60a51987c5626735e8baf42e0a2752c8248e0088","dweb:/ipfs/QmbDNyaSZdfgY3YtWRgPuaUjwR2M5wtfrEW4tpYhfG9SXM"],"license":"MIT"},"src/utils/ownable/IOwnable2StepStorageV1.sol":{"keccak256":"0xd13335656b5b28af47cd1ec1f984bedaa4c714792aee0580c711d81a595c980a","urls":["bzz-raw://6168b868012553a291d4db1027a54399d81e10fc28b1f69a6a2daf36af445fd6","dweb:/ipfs/QmRxVJNZBgYfJuSiRycYmEtkmzRD9qzatsasRZgVJypeTC"],"license":"MIT"},"src/utils/ownable/IOwnable2StepUpgradeable.sol":{"keccak256":"0x4123947d9cf06504f5d38a194fe2b16a1c2e860fb0f7bcd74ec921c9db618305","urls":["bzz-raw://cdde2f8da4de772f2760a56ce17a6d7503f8e7c9b161492cc59feebf17b0ed14","dweb:/ipfs/QmZ5fNzsFRVgWXHH8vQktykvsL5AhrqoWYthkTeuUaRpcw"],"license":"MIT"},"src/utils/ownable/Ownable2StepUpgradeable.sol":{"keccak256":"0x21e47e1bae8183cbe715de3ec976b6ecb724161a5c5fd7d3721876a09951e80b","urls":["bzz-raw://ca411891e5e5f2d8eb17252112fa69d6ca47f358110993e61f62d2e13188e01c","dweb:/ipfs/QmUBnsB49nZo5Y3rXWaVxTp8vA3fFmW3tTB5SeVkdLhYAx"],"license":"MIT"}},"version":1},"id":181}