Loading
[ { "inputs": [ { "internalType": "contract IKintoWalletFactory", "name": "_walletFactory", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "previousAdmin", "type": "address" }, { "indexed": false, "internalType": "address", "name": "newAdmin", "type": "address" } ], "name": "AdminChanged", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "_app", "type": "address" }, { "indexed": false, "internalType": "address", "name": "_owner", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "_timestamp", "type": "uint256" } ], "name": "AppCreated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "_app", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "_timestamp", "type": "uint256" } ], "name": "AppDSAEnabled", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "_app", "type": "address" }, { "indexed": false, "internalType": "address", "name": "_owner", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "_timestamp", "type": "uint256" } ], "name": "AppUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "approved", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "operator", "type": "address" }, { "indexed": false, "internalType": "bool", "name": "approved", "type": "bool" } ], "name": "ApprovalForAll", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "beacon", "type": "address" } ], "name": "BeaconUpgraded", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint8", "name": "version", "type": "uint8" } ], "name": "Initialized", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "implementation", "type": "address" } ], "name": "Upgraded", "type": "event" }, { "inputs": [], "name": "GAS_LIMIT_PERIOD", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "GAS_LIMIT_THRESHOLD", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "RATE_LIMIT_PERIOD", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "RATE_LIMIT_THRESHOLD", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "appCount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "approve", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "childToParentContract", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "app", "type": "address" } ], "name": "enableDSA", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_contract", "type": "address" } ], "name": "getAppMetadata", "outputs": [ { "components": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "bool", "name": "dsaEnabled", "type": "bool" }, { "internalType": "uint256", "name": "rateLimitPeriod", "type": "uint256" }, { "internalType": "uint256", "name": "rateLimitNumber", "type": "uint256" }, { "internalType": "uint256", "name": "gasLimitPeriod", "type": "uint256" }, { "internalType": "uint256", "name": "gasLimitCost", "type": "uint256" }, { "internalType": "string", "name": "name", "type": "string" } ], "internalType": "struct IKintoAppRegistry.Metadata", "name": "", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getApproved", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_contract", "type": "address" } ], "name": "getContractLimits", "outputs": [ { "internalType": "uint256[4]", "name": "", "type": "uint256[4]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_contract", "type": "address" } ], "name": "getSponsor", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "initialize", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "operator", "type": "address" } ], "name": "isApprovedForAll", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_app", "type": "address" }, { "internalType": "address", "name": "_contract", "type": "address" } ], "name": "isContractSponsored", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "ownerOf", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "proxiableUUID", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "_name", "type": "string" }, { "internalType": "address", "name": "parentContract", "type": "address" }, { "internalType": "address[]", "name": "appContracts", "type": "address[]" }, { "internalType": "uint256[4]", "name": "appLimits", "type": "uint256[4]" } ], "name": "registerApp", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "safeTransferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "safeTransferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "operator", "type": "address" }, { "internalType": "bool", "name": "approved", "type": "bool" } ], "name": "setApprovalForAll", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_app", "type": "address" }, { "internalType": "address[]", "name": "_contracts", "type": "address[]" }, { "internalType": "bool[]", "name": "_flags", "type": "bool[]" } ], "name": "setSponsoredContracts", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes4", "name": "interfaceId", "type": "bytes4" } ], "name": "supportsInterface", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "index", "type": "uint256" } ], "name": "tokenByIndex", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "tokenIdToApp", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "uint256", "name": "index", "type": "uint256" } ], "name": "tokenOfOwnerByIndex", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "tokenURI", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "transferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "_name", "type": "string" }, { "internalType": "address", "name": "parentContract", "type": "address" }, { "internalType": "address[]", "name": "appContracts", "type": "address[]" }, { "internalType": "uint256[4]", "name": "appLimits", "type": "uint256[4]" } ], "name": "updateMetadata", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newImplementation", "type": "address" } ], "name": "upgradeTo", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newImplementation", "type": "address" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "upgradeToAndCall", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "walletFactory", "outputs": [ { "internalType": "contract IKintoWalletFactory", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" } ]
60c0604052306080523480156200001557600080fd5b506040516200387838038062003878833981016040819052620000389162000115565b6200004262000054565b6001600160a01b031660a05262000147565b600054610100900460ff1615620000c15760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161462000113576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6000602082840312156200012857600080fd5b81516001600160a01b03811681146200014057600080fd5b9392505050565b60805160a0516136ef62000189600039600061069f0152600081816109ba015281816109fa01528181610b2b01528181610b6b0152610c9101526136ef6000f3fe6080604052600436106102305760003560e01c8063743fc7451161012e578063b55ca2c3116100ab578063c87b56dd1161006f578063c87b56dd146106c1578063e2c46316146106e1578063e614b4e914610701578063e985e9c51461072e578063f2fde38b1461077757600080fd5b8063b55ca2c31461060a578063b7b188d114610621578063b88d4fde14610636578063c1475bac14610656578063c5c036991461068d57600080fd5b80639461b868116100f25780639461b8681461053a57806395d89b41146105715780639de85d08146105a2578063a22cb465146105bd578063b17025b0146105dd57600080fd5b8063743fc745146104a75780637ed6a5cb146104c75780638129fc1c146104e75780638da5cb5b146104fc5780638e4c90091461051a57600080fd5b80633659cfe6116101bc57806352d1902d1161018057806352d1902d1461041d5780636352211e146104325780636ddb8da11461045257806370a0823114610472578063715018a61461049257600080fd5b80633659cfe61461038a57806340335d58146103aa57806342842e0e146103ca5780634f1ef286146103ea5780634f6ccce7146103fd57600080fd5b806318160ddd1161020357806318160ddd146102ff57806323b872dd1461031e57806323effcd11461033e57806329ef5c1b146103555780632f745c591461036a57600080fd5b806301ffc9a71461023557806306fdde031461026a578063081812fc146102a5578063095ea7b3146102dd575b600080fd5b34801561024157600080fd5b50610255610250366004612cc7565b610797565b60405190151581526020015b60405180910390f35b34801561027657600080fd5b5060408051808201909152600981526804b696e746f204150560bc1b60208201525b6040516102619190612d34565b3480156102b157600080fd5b506102c56102c0366004612d47565b6107a8565b6040516001600160a01b039091168152602001610261565b3480156102e957600080fd5b506102fd6102f8366004612d7c565b6107cf565b005b34801561030b57600080fd5b506099545b604051908152602001610261565b34801561032a57600080fd5b506102fd610339366004612da6565b6108e9565b34801561034a57600080fd5b5061031062278d0081565b34801561036157600080fd5b50610310600a81565b34801561037657600080fd5b50610310610385366004612d7c565b61091a565b34801561039657600080fd5b506102fd6103a5366004612de2565b6109b0565b3480156103b657600080fd5b506102556103c5366004612dfd565b610a8f565b3480156103d657600080fd5b506102fd6103e5366004612da6565b610b06565b6102fd6103f8366004612ed3565b610b21565b34801561040957600080fd5b50610310610418366004612d47565b610bf1565b34801561042957600080fd5b50610310610c84565b34801561043e57600080fd5b506102c561044d366004612d47565b610d37565b34801561045e57600080fd5b506102fd61046d366004612f7e565b610d97565b34801561047e57600080fd5b5061031061048d366004612de2565b610e80565b34801561049e57600080fd5b506102fd610f06565b3480156104b357600080fd5b506102c56104c2366004612de2565b610f1a565b3480156104d357600080fd5b506102fd6104e2366004612de2565b610f61565b3480156104f357600080fd5b506102fd611032565b34801561050857600080fd5b5060c9546001600160a01b03166102c5565b34801561052657600080fd5b506102fd610535366004612f7e565b6111a6565b34801561054657600080fd5b506102c5610555366004612d47565b610162602052600090815260409020546001600160a01b031681565b34801561057d57600080fd5b5060408051808201909152600881526704b494e544f4150560c41b6020820152610298565b3480156105ae57600080fd5b50610310662386f26fc1000081565b3480156105c957600080fd5b506102fd6105d836600461304d565b611305565b3480156105e957600080fd5b506105fd6105f8366004612de2565b611310565b6040516102619190613077565b34801561061657600080fd5b506103106101635481565b34801561062d57600080fd5b50610310603c81565b34801561064257600080fd5b506102fd6106513660046130a8565b611503565b34801561066257600080fd5b506102c5610671366004612de2565b610161602052600090815260409020546001600160a01b031681565b34801561069957600080fd5b506102c57f000000000000000000000000000000000000000000000000000000000000000081565b3480156106cd57600080fd5b506102986106dc366004612d47565b61153b565b3480156106ed57600080fd5b506102fd6106fc366004613110565b6115a1565b34801561070d57600080fd5b5061072161071c366004612de2565b611745565b6040516102619190613191565b34801561073a57600080fd5b50610255610749366004612dfd565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b34801561078357600080fd5b506102fd610792366004612de2565b6118d4565b60006107a28261194a565b92915050565b60006107b38261196f565b506000908152606960205260409020546001600160a01b031690565b60006107da82610d37565b9050806001600160a01b0316836001600160a01b03160361084c5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b038216148061086857506108688133610749565b6108da5760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c0000006064820152608401610843565b6108e483836119ce565b505050565b6108f33382611a3c565b61090f5760405162461bcd60e51b8152600401610843906131eb565b6108e4838383611abb565b600061092583610e80565b82106109875760405162461bcd60e51b815260206004820152602b60248201527f455243373231456e756d657261626c653a206f776e657220696e646578206f7560448201526a74206f6620626f756e647360a81b6064820152608401610843565b506001600160a01b03919091166000908152609760209081526040808320938352929052205490565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036109f85760405162461bcd60e51b815260040161084390613238565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610a4160008051602061364f833981519152546001600160a01b031690565b6001600160a01b031614610a675760405162461bcd60e51b815260040161084390613284565b610a7081611c2c565b60408051600080825260208201909252610a8c91839190611c34565b50565b6000826001600160a01b0316826001600160a01b03161480610ace57506001600160a01b03828116600090815261016160205260409020548116908416145b80610aff57506001600160a01b038084166000908152610160602090815260408083209386168352929052205460ff165b9392505050565b6108e483838360405180602001604052806000815250611503565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003610b695760405162461bcd60e51b815260040161084390613238565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610bb260008051602061364f833981519152546001600160a01b031690565b6001600160a01b031614610bd85760405162461bcd60e51b815260040161084390613284565b610be182611c2c565b610bed82826001611c34565b5050565b6000610bfc60995490565b8210610c5f5760405162461bcd60e51b815260206004820152602c60248201527f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60448201526b7574206f6620626f756e647360a01b6064820152608401610843565b60998281548110610c7257610c726132d0565b90600052602060002001549050919050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610d245760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c00000000000000006064820152608401610843565b5060008051602061364f83398151915290565b6000818152606760205260408120546001600160a01b0316806107a25760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610843565b6001600160a01b038416600090815261015f6020526040902054610dba81610d37565b6001600160a01b0316336001600160a01b031614610e255760405162461bcd60e51b815260206004820152602260248201527f4f6e6c7920646576656c6f7065722063616e20757064617465206d6574616461604482015261746160f01b6064820152608401610843565b610e3481888888888888611d9f565b604080513381524260208201526001600160a01b038716917f1c64f068a47e25f729fe0a695d5999e7c9669e2f9397d4a40fb04b3e89ad393f910160405180910390a250505050505050565b60006001600160a01b038216610eea5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610843565b506001600160a01b031660009081526068602052604090205490565b610f0e611f2b565b610f186000611f85565b565b6001600160a01b038181166000908152610161602052604081205490911615610f5d57506001600160a01b03908116600090815261016160205260409020541690565b5090565b610f69611f2b565b6001600160a01b038116600090815261015f602052604090206001015460ff1615610fcc5760405162461bcd60e51b81526020600482015260136024820152721114d048185b1c9958591e48195b98589b1959606a1b6044820152606401610843565b6001600160a01b038116600081815261015f6020526040908190206001908101805460ff19169091179055517f8aa2b15126b5f19780e90450219824aa62847223823a97580eda33ccad359a51906110279042815260200190565b60405180910390a250565b600054610100900460ff16158080156110525750600054600160ff909116105b8061106c5750303b15801561106c575060005460ff166001145b6110cf5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610843565b6000805460ff1916600117905580156110f2576000805461ff0019166101001790555b61113d6040518060400160405280600981526020016804b696e746f204150560bc1b8152506040518060400160405280600881526020016704b494e544f4150560c41b815250611fd7565b611145612008565b61114d61202f565b611155612008565b61115e33611f85565b8015610a8c576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150565b6001600160a01b038416600090815261015f6020526040902054156112065760405162461bcd60e51b8152602060048201526016602482015275105c1c08185b1c9958591e481c9959da5cdd195c995960521b6044820152606401610843565b6001600160a01b038481166000908152610161602052604090205416156112855760405162461bcd60e51b815260206004820152602d60248201527f506172656e7420636f6e747261637420616c726561647920726567697374657260448201526c195908185cc8184818da1a5b19609a1b6064820152608401610843565b6101638054906000611296836132fc565b91905055506112ad61016354878787878787611d9f565b6112ba336101635461205e565b604080513381524260208201526001600160a01b038616917fd6ab725e197a46204fcf11ae382d256c7bb2c66ec693170184f18d23dff8051b910160405180910390a2505050505050565b610bed338383612078565b611318612c93565b6001600160a01b0382811660009081526101616020526040812054909116611340578261135d565b6001600160a01b0380841660009081526101616020526040902054165b9050600061015f6000836001600160a01b03166001600160a01b031681526020019081526020016000206040518060e0016040529081600082015481526020016001820160009054906101000a900460ff16151515158152602001600282015481526020016003820154815260200160048201548152602001600582015481526020016006820180546113ef90613315565b80601f016020809104026020016040519081016040528092919081815260200182805461141b90613315565b80156114685780601f1061143d57610100808354040283529160200191611468565b820191906000526020600020905b81548152906001019060200180831161144b57829003601f168201915b50505050508152505090506040518060800160405280826040015160000361149157603c611497565b82604001515b815260200182606001516000036114af57600a6114b5565b82606001515b815260200182608001516000036114cf5762278d006114d5565b82608001515b81526020018260a001516000036114f357662386f26fc100006114f9565b8260a001515b9052949350505050565b61150d3383611a3c565b6115295760405162461bcd60e51b8152600401610843906131eb565b61153584848484612146565b50505050565b60606115468261196f565b6000611550612179565b905060008151116115705760405180602001604052806000815250610aff565b8061157a84612199565b60405160200161158b92919061334f565b6040516020818303038152906040529392505050565b8281146115e05760405162461bcd60e51b815260206004820152600d60248201526c125b9d985b1a59081a5b9c1d5d609a1b6044820152606401610843565b6001600160a01b038516600090815261015f60205260409020541580159061163b57506001600160a01b038516600090815261015f602052604090205461162690610d37565b6001600160a01b0316336001600160a01b0316145b61169a5760405162461bcd60e51b815260206004820152602a60248201527f4f6e6c7920646576656c6f7065722063616e207365742073706f6e736f72656460448201526920636f6e74726163747360b01b6064820152608401610843565b60005b8381101561173d578282828181106116b7576116b76132d0565b90506020020160208101906116cc919061337e565b6001600160a01b038716600090815261016060205260408120908787858181106116f8576116f86132d0565b905060200201602081019061170d9190612de2565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905560010161169d565b505050505050565b6117876040518060e001604052806000815260200160001515815260200160008152602001600081526020016000815260200160008152602001606081525090565b6001600160a01b03828116600090815261016160205260408120549091166117af57826117cc565b6001600160a01b0380841660009081526101616020526040902054165b6001600160a01b038116600090815261015f6020908152604091829020825160e08101845281548152600182015460ff161515928101929092526002810154928201929092526003820154606082015260048201546080820152600582015460a0820152600682018054939450909260c08401919061184a90613315565b80601f016020809104026020016040519081016040528092919081815260200182805461187690613315565b80156118c35780601f10611898576101008083540402835291602001916118c3565b820191906000526020600020905b8154815290600101906020018083116118a657829003601f168201915b505050505081525050915050919050565b6118dc611f2b565b6001600160a01b0381166119415760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610843565b610a8c81611f85565b60006001600160e01b0319821663780e9d6360e01b14806107a257506107a28261222c565b6000818152606760205260409020546001600160a01b0316610a8c5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610843565b600081815260696020526040902080546001600160a01b0319166001600160a01b0384169081179091558190611a0382610d37565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600080611a4883610d37565b9050806001600160a01b0316846001600160a01b03161480611a8f57506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80611ab35750836001600160a01b0316611aa8846107a8565b6001600160a01b0316145b949350505050565b826001600160a01b0316611ace82610d37565b6001600160a01b031614611af45760405162461bcd60e51b815260040161084390613399565b6001600160a01b038216611b565760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610843565b611b63838383600161227c565b826001600160a01b0316611b7682610d37565b6001600160a01b031614611b9c5760405162461bcd60e51b815260040161084390613399565b600081815260696020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260688552838620805460001901905590871680865283862080546001019055868652606790945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b610a8c611f2b565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615611c67576108e4836122f3565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611cc1575060408051601f3d908101601f19168201909252611cbe918101906133de565b60015b611d245760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610843565b60008051602061364f8339815191528114611d935760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610843565b506108e483838361238f565b6040805160e08101825288815260006020808301829052843583850152840135606083015291830135608082015260a081018360036020020135815260200188888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052509390945250508a81526101626020908152604080832080546001600160a01b0319166001600160a01b038c16908117909155835261015f825291829020845181559084015160018201805460ff1916911515919091179055908301516002820155606083015160038201556080830151600482015560a0830151600582015560c083015192935083929091506006820190611eab908261343f565b5090505060005b83811015611f2057856101616000878785818110611ed257611ed26132d0565b9050602002016020810190611ee79190612de2565b6001600160a01b039081168252602082019290925260400160002080546001600160a01b03191692909116919091179055600101611eb2565b505050505050505050565b60c9546001600160a01b03163314610f185760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610843565b60c980546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff16611ffe5760405162461bcd60e51b8152600401610843906134ff565b610bed82826123b4565b600054610100900460ff16610f185760405162461bcd60e51b8152600401610843906134ff565b600054610100900460ff166120565760405162461bcd60e51b8152600401610843906134ff565b610f186123f4565b610bed828260405180602001604052806000815250612424565b816001600160a01b0316836001600160a01b0316036120d95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610843565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b612151848484611abb565b61215d84848484612457565b6115355760405162461bcd60e51b81526004016108439061354a565b606060405180606001604052806024815260200161366f60249139905090565b606060006121a683612558565b600101905060008167ffffffffffffffff8111156121c6576121c6612e30565b6040519080825280601f01601f1916602001820160405280156121f0576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846121fa57509392505050565b60006001600160e01b031982166380ac58cd60e01b148061225d57506001600160e01b03198216635b5e139f60e01b145b806107a257506301ffc9a760e01b6001600160e01b03198316146107a2565b6001600160a01b03841615801561229b57506001600160a01b03831615155b6122e75760405162461bcd60e51b815260206004820152601f60248201527f4f6e6c79206d696e74207472616e73666572732061726520616c6c6f776564006044820152606401610843565b61153584848484612630565b6001600160a01b0381163b6123605760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610843565b60008051602061364f83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b61239883612770565b6000825111806123a55750805b156108e45761153583836127b0565b600054610100900460ff166123db5760405162461bcd60e51b8152600401610843906134ff565b60656123e7838261343f565b5060666108e4828261343f565b600054610100900460ff1661241b5760405162461bcd60e51b8152600401610843906134ff565b610f1833611f85565b61242e83836128a4565b61243b6000848484612457565b6108e45760405162461bcd60e51b81526004016108439061354a565b60006001600160a01b0384163b1561254d57604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061249b90339089908890889060040161359c565b6020604051808303816000875af19250505080156124d6575060408051601f3d908101601f191682019092526124d3918101906135d9565b60015b612533573d808015612504576040519150601f19603f3d011682016040523d82523d6000602084013e612509565b606091505b50805160000361252b5760405162461bcd60e51b81526004016108439061354a565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050611ab3565b506001949350505050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106125975772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef810000000083106125c3576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106125e157662386f26fc10000830492506010015b6305f5e10083106125f9576305f5e100830492506008015b612710831061260d57612710830492506004015b6064831061261f576064830492506002015b600a83106107a25760010192915050565b61263c84848484612a3d565b60018111156126ab5760405162461bcd60e51b815260206004820152603560248201527f455243373231456e756d657261626c653a20636f6e7365637574697665207472604482015274185b9cd9995c9cc81b9bdd081cdd5c1c1bdc9d1959605a1b6064820152608401610843565b816001600160a01b0385166127075761270281609980546000838152609a60205260408120829055600182018355919091527f72a152ddfb8e864297c917af52ea6c1c68aead0fee1a62673fcc7e0c94979d000155565b61272a565b836001600160a01b0316856001600160a01b03161461272a5761272a8582612ac5565b6001600160a01b0384166127465761274181612b62565b612769565b846001600160a01b0316846001600160a01b031614612769576127698482612c11565b5050505050565b612779816122f3565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606001600160a01b0383163b6128185760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610843565b600080846001600160a01b03168460405161283391906135f6565b600060405180830381855af49150503d806000811461286e576040519150601f19603f3d011682016040523d82523d6000602084013e612873565b606091505b509150915061289b828260405180606001604052806027815260200161369360279139612c55565b95945050505050565b6001600160a01b0382166128fa5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610843565b6000818152606760205260409020546001600160a01b03161561295f5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610843565b61296d60008383600161227c565b6000818152606760205260409020546001600160a01b0316156129d25760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610843565b6001600160a01b038216600081815260686020908152604080832080546001019055848352606790915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6001811115611535576001600160a01b03841615612a83576001600160a01b03841660009081526068602052604081208054839290612a7d908490613612565b90915550505b6001600160a01b03831615611535576001600160a01b03831660009081526068602052604081208054839290612aba908490613625565b909155505050505050565b60006001612ad284610e80565b612adc9190613612565b600083815260986020526040902054909150808214612b2f576001600160a01b03841660009081526097602090815260408083208584528252808320548484528184208190558352609890915290208190555b5060009182526098602090815260408084208490556001600160a01b039094168352609781528383209183525290812055565b609954600090612b7490600190613612565b6000838152609a602052604081205460998054939450909284908110612b9c57612b9c6132d0565b906000526020600020015490508060998381548110612bbd57612bbd6132d0565b6000918252602080832090910192909255828152609a90915260408082208490558582528120556099805480612bf557612bf5613638565b6001900381819060005260206000200160009055905550505050565b6000612c1c83610e80565b6001600160a01b039093166000908152609760209081526040808320868452825280832085905593825260989052919091209190915550565b60608315612c64575081610aff565b610aff8383815115612c795781518083602001fd5b8060405162461bcd60e51b81526004016108439190612d34565b60405180608001604052806004906020820280368337509192915050565b6001600160e01b031981168114610a8c57600080fd5b600060208284031215612cd957600080fd5b8135610aff81612cb1565b60005b83811015612cff578181015183820152602001612ce7565b50506000910152565b60008151808452612d20816020860160208601612ce4565b601f01601f19169290920160200192915050565b602081526000610aff6020830184612d08565b600060208284031215612d5957600080fd5b5035919050565b80356001600160a01b0381168114612d7757600080fd5b919050565b60008060408385031215612d8f57600080fd5b612d9883612d60565b946020939093013593505050565b600080600060608486031215612dbb57600080fd5b612dc484612d60565b9250612dd260208501612d60565b9150604084013590509250925092565b600060208284031215612df457600080fd5b610aff82612d60565b60008060408385031215612e1057600080fd5b612e1983612d60565b9150612e2760208401612d60565b90509250929050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112612e5757600080fd5b813567ffffffffffffffff80821115612e7257612e72612e30565b604051601f8301601f19908116603f01168101908282118183101715612e9a57612e9a612e30565b81604052838152866020858801011115612eb357600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060408385031215612ee657600080fd5b612eef83612d60565b9150602083013567ffffffffffffffff811115612f0b57600080fd5b612f1785828601612e46565b9150509250929050565b60008083601f840112612f3357600080fd5b50813567ffffffffffffffff811115612f4b57600080fd5b6020830191508360208260051b8501011115612f6657600080fd5b9250929050565b80608081018310156107a257600080fd5b60008060008060008060e08789031215612f9757600080fd5b863567ffffffffffffffff80821115612faf57600080fd5b818901915089601f830112612fc357600080fd5b813581811115612fd257600080fd5b8a6020828501011115612fe457600080fd5b60208301985080975050612ffa60208a01612d60565b9550604089013591508082111561301057600080fd5b5061301d89828a01612f21565b909450925061303190508860608901612f6d565b90509295509295509295565b80358015158114612d7757600080fd5b6000806040838503121561306057600080fd5b61306983612d60565b9150612e276020840161303d565b60808101818360005b600481101561309f578151835260209283019290910190600101613080565b50505092915050565b600080600080608085870312156130be57600080fd5b6130c785612d60565b93506130d560208601612d60565b925060408501359150606085013567ffffffffffffffff8111156130f857600080fd5b61310487828801612e46565b91505092959194509250565b60008060008060006060868803121561312857600080fd5b61313186612d60565b9450602086013567ffffffffffffffff8082111561314e57600080fd5b61315a89838a01612f21565b9096509450604088013591508082111561317357600080fd5b5061318088828901612f21565b969995985093965092949392505050565b60208152815160208201526020820151151560408201526040820151606082015260608201516080820152608082015160a082015260a082015160c0820152600060c083015160e080840152611ab3610100840182612d08565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161330e5761330e6132e6565b5060010190565b600181811c9082168061332957607f821691505b60208210810361334957634e487b7160e01b600052602260045260246000fd5b50919050565b60008351613361818460208801612ce4565b835190830190613375818360208801612ce4565b01949350505050565b60006020828403121561339057600080fd5b610aff8261303d565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b6000602082840312156133f057600080fd5b5051919050565b601f8211156108e4576000816000526020600020601f850160051c810160208610156134205750805b601f850160051c820191505b8181101561173d5782815560010161342c565b815167ffffffffffffffff81111561345957613459612e30565b61346d816134678454613315565b846133f7565b602080601f8311600181146134a2576000841561348a5750858301515b600019600386901b1c1916600185901b17855561173d565b600085815260208120601f198616915b828110156134d1578886015182559484019460019091019084016134b2565b50858210156134ef5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906135cf90830184612d08565b9695505050505050565b6000602082840312156135eb57600080fd5b8151610aff81612cb1565b60008251613608818460208701612ce4565b9190910192915050565b818103818111156107a2576107a26132e6565b808201808211156107a2576107a26132e6565b634e487b7160e01b600052603160045260246000fdfe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc68747470733a2f2f6b696e746f2e78797a2f6d657461646174612f6b696e746f6170702f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122065e8e6bde4ed320fcdc4c43327f043e2a61558e3ac1ce3e32a2a3cf855ab528664736f6c634300081700330000000000000000000000008a4720488ca32f1223ccfe5a087e250fe3bc5d75
0xa264697066735822122065e8e6bde4ed320fcdc4c43327f043e2a61558e3ac1ce3e32a2a3cf855ab528664736f6c634300081700330000000000000000000000008a4720488ca32f1223ccfe5a087e250fe3bc5d75
----Decoded View------------Arg [0] : _walletFactory (address): 0xE6bdE4eD320FCdc4C43327f043e2A61558e3AC1c
----Encoded View------------Arg [0] : 0x000000000000000000000000e6bde4ed320fcdc4c43327f043e2a61558e3ac1c