[ { "inputs": [ { "internalType": "address", "name": "initialOwner", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "CheckpointUnorderedInsertion", "type": "error" }, { "inputs": [], "name": "ECDSAInvalidSignature", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "length", "type": "uint256" } ], "name": "ECDSAInvalidSignatureLength", "type": "error" }, { "inputs": [ { "internalType": "bytes32", "name": "s", "type": "bytes32" } ], "name": "ECDSAInvalidSignatureS", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "increasedSupply", "type": "uint256" }, { "internalType": "uint256", "name": "cap", "type": "uint256" } ], "name": "ERC20ExceededSafeSupply", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "allowance", "type": "uint256" }, { "internalType": "uint256", "name": "needed", "type": "uint256" } ], "name": "ERC20InsufficientAllowance", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "uint256", "name": "balance", "type": "uint256" }, { "internalType": "uint256", "name": "needed", "type": "uint256" } ], "name": "ERC20InsufficientBalance", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "approver", "type": "address" } ], "name": "ERC20InvalidApprover", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "receiver", "type": "address" } ], "name": "ERC20InvalidReceiver", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" } ], "name": "ERC20InvalidSender", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" } ], "name": "ERC20InvalidSpender", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "deadline", "type": "uint256" } ], "name": "ERC2612ExpiredSignature", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "signer", "type": "address" }, { "internalType": "address", "name": "owner", "type": "address" } ], "name": "ERC2612InvalidSigner", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "timepoint", "type": "uint256" }, { "internalType": "uint48", "name": "clock", "type": "uint48" } ], "name": "ERC5805FutureLookup", "type": "error" }, { "inputs": [], "name": "ERC6372InconsistentClock", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "currentNonce", "type": "uint256" } ], "name": "InvalidAccountNonce", "type": "error" }, { "inputs": [], "name": "InvalidShortString", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "OwnableInvalidOwner", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "OwnableUnauthorizedAccount", "type": "error" }, { "inputs": [ { "internalType": "uint8", "name": "bits", "type": "uint8" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "SafeCastOverflowedUintDowncast", "type": "error" }, { "inputs": [ { "internalType": "string", "name": "str", "type": "string" } ], "name": "StringTooLong", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "expiry", "type": "uint256" } ], "name": "VotesExpiredSignature", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "spender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "delegator", "type": "address" }, { "indexed": true, "internalType": "address", "name": "fromDelegate", "type": "address" }, { "indexed": true, "internalType": "address", "name": "toDelegate", "type": "address" } ], "name": "DelegateChanged", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "delegate", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "previousVotes", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "newVotes", "type": "uint256" } ], "name": "DelegateVotesChanged", "type": "event" }, { "anonymous": false, "inputs": [], "name": "EIP712DomainChanged", "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": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "inputs": [], "name": "CLOCK_MODE", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "DOMAIN_SEPARATOR", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" } ], "name": "allowance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "approve", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint32", "name": "pos", "type": "uint32" } ], "name": "checkpoints", "outputs": [ { "components": [ { "internalType": "uint48", "name": "_key", "type": "uint48" }, { "internalType": "uint208", "name": "_value", "type": "uint208" } ], "internalType": "struct Checkpoints.Checkpoint208", "name": "", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "clock", "outputs": [ { "internalType": "uint48", "name": "", "type": "uint48" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "delegatee", "type": "address" } ], "name": "delegate", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "delegatee", "type": "address" }, { "internalType": "uint256", "name": "nonce", "type": "uint256" }, { "internalType": "uint256", "name": "expiry", "type": "uint256" }, { "internalType": "uint8", "name": "v", "type": "uint8" }, { "internalType": "bytes32", "name": "r", "type": "bytes32" }, { "internalType": "bytes32", "name": "s", "type": "bytes32" } ], "name": "delegateBySig", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "delegates", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "eip712Domain", "outputs": [ { "internalType": "bytes1", "name": "fields", "type": "bytes1" }, { "internalType": "string", "name": "name", "type": "string" }, { "internalType": "string", "name": "version", "type": "string" }, { "internalType": "uint256", "name": "chainId", "type": "uint256" }, { "internalType": "address", "name": "verifyingContract", "type": "address" }, { "internalType": "bytes32", "name": "salt", "type": "bytes32" }, { "internalType": "uint256[]", "name": "extensions", "type": "uint256[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "timepoint", "type": "uint256" } ], "name": "getPastTotalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "timepoint", "type": "uint256" } ], "name": "getPastVotes", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "getVotes", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "nonces", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "numCheckpoints", "outputs": [ { "internalType": "uint32", "name": "", "type": "uint32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "froms", "type": "address[]" }, { "internalType": "address[]", "name": "tos", "type": "address[]" }, { "internalType": "uint256[]", "name": "values", "type": "uint256[]" } ], "name": "oracleTransfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" }, { "internalType": "uint256", "name": "deadline", "type": "uint256" }, { "internalType": "uint8", "name": "v", "type": "uint8" }, { "internalType": "bytes32", "name": "r", "type": "bytes32" }, { "internalType": "bytes32", "name": "s", "type": "bytes32" } ], "name": "permit", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "symbol", "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": "", "type": "address" }, { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
6101606040523480156200001257600080fd5b50604051620026c2380380620026c28339810160408190526200003591620002cb565b806040518060400160405280601781526020017f5669727475616c2050726f746f636f6c20566f74696e6700000000000000000081525080604051806040016040528060018152602001603160f81b8152506040518060400160405280601781526020017f5669727475616c2050726f746f636f6c20566f74696e67000000000000000000815250604051806040016040528060098152602001681d995592549515505360ba1b8152508160039081620000f09190620003a4565b506004620000ff8282620003a4565b506200011191508390506005620001fd565b6101205262000122816006620001fd565b61014052815160208084019190912060e052815190820120610100524660a052620001b060e05161010051604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201529081019290925260608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b60805250503060c052506001600160a01b038116620001ea57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b620001f58162000236565b5050620004e6565b60006020835110156200021d57620002158362000288565b905062000230565b816200022a8482620003a4565b5060ff90505b92915050565b600b80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600080829050601f81511115620002b6578260405163305a27a960e01b8152600401620001e1919062000470565b8051620002c382620004c1565b179392505050565b600060208284031215620002de57600080fd5b81516001600160a01b0381168114620002f657600080fd5b9392505050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200032857607f821691505b6020821081036200034957634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200039f576000816000526020600020601f850160051c810160208610156200037a5750805b601f850160051c820191505b818110156200039b5782815560010162000386565b5050505b505050565b81516001600160401b03811115620003c057620003c0620002fd565b620003d881620003d1845462000313565b846200034f565b602080601f831160018114620004105760008415620003f75750858301515b600019600386901b1c1916600185901b1785556200039b565b600085815260208120601f198616915b82811015620004415788860151825594840194600190910190840162000420565b5085821015620004605787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006020808352835180602085015260005b81811015620004a05785810183015185820160400152820162000482565b506000604082860101526040601f19601f8301168501019250505092915050565b80516020808301519190811015620003495760001960209190910360031b1b16919050565b60805160a05160c05160e051610100516101205161014051612181620005416000396000610e6f01526000610e4201526000610bb101526000610b8901526000610ae401526000610b0e01526000610b3801526121816000f3fe608060405234801561001057600080fd5b50600436106101a95760003560e01c80637ab7c65d116100f95780639ab24eb011610097578063d505accf11610071578063d505accf146103b8578063dd62ed3e146103cb578063f1127ed814610404578063f2fde38b1461044357600080fd5b80639ab24eb014610384578063a9059cbb14610397578063c3cda520146103a557600080fd5b80638da5cb5b116100d35780638da5cb5b146103395780638e539e8c1461034a57806391ddadf41461035d57806395d89b411461037c57600080fd5b80637ab7c65d146102f85780637ecebe001461030b57806384b0196e1461031e57600080fd5b80633a46b1a8116101665780635c19a95c116101405780635c19a95c1461028a5780636fcfff451461029f57806370a08231146102c7578063715018a6146102f057600080fd5b80633a46b1a81461022b5780634bf5d7e91461023e578063587cde1e1461024657600080fd5b806306fdde03146101ae578063095ea7b3146101cc57806318160ddd146101ef57806323b872dd14610201578063313ce567146102145780633644e51514610223575b600080fd5b6101b6610456565b6040516101c39190611bc3565b60405180910390f35b6101df6101da366004611bf2565b6104e8565b60405190151581526020016101c3565b6002545b6040519081526020016101c3565b6101df61020f366004611c1c565b610530565b604051601281526020016101c3565b6101f3610574565b6101f3610239366004611bf2565b610583565b6101b6610606565b610272610254366004611c58565b6001600160a01b039081166000908152600860205260409020541690565b6040516001600160a01b0390911681526020016101c3565b61029d610298366004611c58565b61067e565b005b6102b26102ad366004611c58565b61068d565b60405163ffffffff90911681526020016101c3565b6101f36102d5366004611c58565b6001600160a01b031660009081526020819052604090205490565b61029d610698565b6101df610306366004611d54565b6106ac565b6101f3610319366004611c58565b610779565b610326610784565b6040516101c39796959493929190611e32565b600b546001600160a01b0316610272565b6101f3610358366004611ecb565b6107ca565b610365610834565b60405165ffffffffffff90911681526020016101c3565b6101b661083e565b6101f3610392366004611c58565b61084d565b6101df61020f366004611bf2565b61029d6103b3366004611ef5565b61087d565b61029d6103c6366004611f4d565b61093a565b6101f36103d9366004611fb7565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b610417610412366004611fea565b610a74565b60408051825165ffffffffffff1681526020928301516001600160d01b031692810192909252016101c3565b61029d610451366004611c58565b610a99565b6060600380546104659061202a565b80601f01602080910402602001604051908101604052809291908181526020018280546104919061202a565b80156104de5780601f106104b3576101008083540402835291602001916104de565b820191906000526020600020905b8154815290600101906020018083116104c157829003601f168201915b5050505050905090565b60405162461bcd60e51b8152602060048201526015602482015274105c1c1c9bdd99481b9bdd081cdd5c1c1bdc9d1959605a1b60448201526000906064015b60405180910390fd5b60405162461bcd60e51b8152602060048201526016602482015275151c985b9cd9995c881b9bdd081cdd5c1c1bdc9d195960521b6044820152600090606401610527565b600061057e610ad7565b905090565b60008061058e610834565b90508065ffffffffffff1683106105c957604051637669fc0f60e11b81526004810184905265ffffffffffff82166024820152604401610527565b6105f36105d584610c02565b6001600160a01b038616600090815260096020526040902090610c39565b6001600160d01b03169150505b92915050565b6060610610610cef565b65ffffffffffff16610620610834565b65ffffffffffff1614610646576040516301bfc1c560e61b815260040160405180910390fd5b5060408051808201909152601d81527f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c74000000602082015290565b336106898183610cfa565b5050565b600061060082610d71565b6106a0610d93565b6106aa6000610dc0565b565b60006106b6610d93565b825184511480156106c8575081518351145b6107045760405162461bcd60e51b815260206004820152600d60248201526c125b9d985b1a59081a5b9c1d5d609a1b6044820152606401610527565b60005b845181101561076e5761076685828151811061072557610725612064565b602002602001015185838151811061073f5761073f612064565b602002602001015185848151811061075957610759612064565b6020026020010151610e12565b600101610707565b506001949350505050565b600061060082610e1d565b600060608060008060006060610798610e3b565b6107a0610e68565b60408051600080825260208201909252600f60f81b9b939a50919850469750309650945092509050565b6000806107d5610834565b90508065ffffffffffff16831061081057604051637669fc0f60e11b81526004810184905265ffffffffffff82166024820152604401610527565b61082461081c84610c02565b600a90610c39565b6001600160d01b03169392505050565b600061057e610cef565b6060600480546104659061202a565b6001600160a01b038116600090815260096020526040812061086e90610e95565b6001600160d01b031692915050565b834211156108a157604051632341d78760e11b815260048101859052602401610527565b604080517fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf60208201526001600160a01b03881691810191909152606081018690526080810185905260009061091b906109139060a00160405160208183030381529060405280519060200120610ece565b858585610efb565b90506109278187610f29565b6109318188610cfa565b50505050505050565b8342111561095e5760405163313c898160e11b815260048101859052602401610527565b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98888886109ab8c6001600160a01b0316600090815260076020526040902080546001810190915590565b6040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810186905260e0016040516020818303038152906040528051906020012090506000610a0682610ece565b90506000610a1682878787610efb565b9050896001600160a01b0316816001600160a01b031614610a5d576040516325c0072360e11b81526001600160a01b0380831660048301528b166024820152604401610527565b610a688a8a8a610f7c565b50505050505050505050565b6040805180820190915260008082526020820152610a928383610f89565b9392505050565b610aa1610d93565b6001600160a01b038116610acb57604051631e4fbdf760e01b815260006004820152602401610527565b610ad481610dc0565b50565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016148015610b3057507f000000000000000000000000000000000000000000000000000000000000000046145b15610b5a57507f000000000000000000000000000000000000000000000000000000000000000090565b61057e604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f0000000000000000000000000000000000000000000000000000000000000000918101919091527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b600065ffffffffffff821115610c35576040516306dfcc6560e41b81526030600482015260248101839052604401610527565b5090565b815460009081816005811115610c98576000610c5484610fbf565b610c5e9085612090565b60008881526020902090915081015465ffffffffffff9081169087161015610c8857809150610c96565b610c938160016120a3565b92505b505b6000610ca6878785856110a7565b90508015610ce157610ccb87610cbd600184612090565b600091825260209091200190565b54600160301b90046001600160d01b0316610ce4565b60005b979650505050505050565b600061057e43610c02565b6001600160a01b0382811660008181526008602052604080822080548686166001600160a01b0319821681179092559151919094169392849290917f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f9190a4610d6c8183610d6786611109565b611127565b505050565b6001600160a01b03811660009081526009602052604081205461060090611293565b600b546001600160a01b031633146106aa5760405163118cdaa760e01b8152336004820152602401610527565b600b80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610d6c8383836112c4565b6001600160a01b038116600090815260076020526040812054610600565b606061057e7f0000000000000000000000000000000000000000000000000000000000000000600561132b565b606061057e7f0000000000000000000000000000000000000000000000000000000000000000600661132b565b80546000908015610ec557610eaf83610cbd600184612090565b54600160301b90046001600160d01b0316610a92565b60009392505050565b6000610600610edb610ad7565b8360405161190160f01b8152600281019290925260228201526042902090565b600080600080610f0d888888886113d6565b925092509250610f1d82826114a5565b50909695505050505050565b6001600160a01b0382166000908152600760205260409020805460018101909155818114610d6c576040516301d4b62360e61b81526001600160a01b038416600482015260248101829052604401610527565b610d6c838383600161155e565b60408051808201909152600080825260208201526001600160a01b0383166000908152600960205260409020610a929083611634565b600081600003610fd157506000919050565b60006001610fde846116a4565b901c6001901b90506001818481610ff757610ff76120b6565b048201901c9050600181848161100f5761100f6120b6565b048201901c90506001818481611027576110276120b6565b048201901c9050600181848161103f5761103f6120b6565b048201901c90506001818481611057576110576120b6565b048201901c9050600181848161106f5761106f6120b6565b048201901c90506001818481611087576110876120b6565b048201901c9050610a92818285816110a1576110a16120b6565b04611738565b60005b818310156111015760006110be848461174e565b60008781526020902090915065ffffffffffff86169082015465ffffffffffff1611156110ed578092506110fb565b6110f88160016120a3565b93505b506110aa565b509392505050565b6001600160a01b038116600090815260208190526040812054610600565b816001600160a01b0316836001600160a01b0316141580156111495750600081115b15610d6c576001600160a01b038316156111f1576001600160a01b0383166000908152600960205260408120819061118c9061176961118786611775565b6117a9565b6001600160d01b031691506001600160d01b03169150846001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a72483836040516111e6929190918252602082015260400190565b60405180910390a250505b6001600160a01b03821615610d6c576001600160a01b0382166000908152600960205260408120819061122a906117e261118786611775565b6001600160d01b031691506001600160d01b03169150836001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248383604051611284929190918252602082015260400190565b60405180910390a25050505050565b600063ffffffff821115610c35576040516306dfcc6560e41b81526020600482015260248101839052604401610527565b6112cf8383836117ee565b6001600160a01b0383166113205760006112e860025490565b90506001600160d01b038082111561131d57604051630e58ae9360e11b81526004810183905260248101829052604401610527565b50505b610d6c838383611918565b606060ff83146113455761133e8361198e565b9050610600565b8180546113519061202a565b80601f016020809104026020016040519081016040528092919081815260200182805461137d9061202a565b80156113ca5780601f1061139f576101008083540402835291602001916113ca565b820191906000526020600020905b8154815290600101906020018083116113ad57829003601f168201915b50505050509050610600565b600080807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0841115611411575060009150600390508261149b565b604080516000808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015611465573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166114915750600092506001915082905061149b565b9250600091508190505b9450945094915050565b60008260038111156114b9576114b96120cc565b036114c2575050565b60018260038111156114d6576114d66120cc565b036114f45760405163f645eedf60e01b815260040160405180910390fd5b6002826003811115611508576115086120cc565b036115295760405163fce698f760e01b815260048101829052602401610527565b600382600381111561153d5761153d6120cc565b03610689576040516335e2f38360e21b815260048101829052602401610527565b6001600160a01b0384166115885760405163e602df0560e01b815260006004820152602401610527565b6001600160a01b0383166115b257604051634a1406b160e11b815260006004820152602401610527565b6001600160a01b038085166000908152600160209081526040808320938716835292905220829055801561162e57826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161162591815260200190565b60405180910390a35b50505050565b6040805180820190915260008082526020820152826000018263ffffffff168154811061166357611663612064565b60009182526020918290206040805180820190915291015465ffffffffffff81168252600160301b90046001600160d01b0316918101919091529392505050565b600080608083901c156116b957608092831c92015b604083901c156116cb57604092831c92015b602083901c156116dd57602092831c92015b601083901c156116ef57601092831c92015b600883901c1561170157600892831c92015b600483901c1561171357600492831c92015b600283901c1561172557600292831c92015b600183901c156106005760010192915050565b60008183106117475781610a92565b5090919050565b600061175d60028484186120e2565b610a92908484166120a3565b6000610a928284612104565b60006001600160d01b03821115610c35576040516306dfcc6560e41b815260d0600482015260248101839052604401610527565b6000806117d56117b7610834565b6117cd6117c388610e95565b868863ffffffff16565b8791906119cd565b915091505b935093915050565b6000610a92828461212b565b6001600160a01b03831661181957806002600082825461180e91906120a3565b9091555061188b9050565b6001600160a01b0383166000908152602081905260409020548181101561186c5760405163391434e360e21b81526001600160a01b03851660048201526024810182905260448101839052606401610527565b6001600160a01b03841660009081526020819052604090209082900390555b6001600160a01b0382166118a7576002805482900390556118c6565b6001600160a01b03821660009081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161190b91815260200190565b60405180910390a3505050565b6001600160a01b03831661193a57611937600a6117e261118784611775565b50505b6001600160a01b03821661195c57611959600a61176961118784611775565b50505b6001600160a01b03838116600090815260086020526040808220548584168352912054610d6c92918216911683611127565b6060600061199b836119db565b604080516020808252818301909252919250600091906020820181803683375050509182525060208101929092525090565b6000806117d5858585611a03565b600060ff8216601f81111561060057604051632cd44ac360e21b815260040160405180910390fd5b825460009081908015611b22576000611a2187610cbd600185612090565b60408051808201909152905465ffffffffffff808216808452600160301b9092046001600160d01b031660208401529192509087161015611a7557604051632520601d60e01b815260040160405180910390fd5b805165ffffffffffff808816911603611ac15784611a9888610cbd600186612090565b80546001600160d01b0392909216600160301b0265ffffffffffff909216919091179055611b12565b6040805180820190915265ffffffffffff80881682526001600160d01b0380881660208085019182528b54600181018d5560008d81529190912094519151909216600160301b029216919091179101555b6020015192508391506117da9050565b50506040805180820190915265ffffffffffff80851682526001600160d01b0380851660208085019182528854600181018a5560008a815291822095519251909316600160301b0291909316179201919091559050816117da565b6000815180845260005b81811015611ba357602081850181015186830182015201611b87565b506000602082860101526020601f19601f83011685010191505092915050565b602081526000610a926020830184611b7d565b80356001600160a01b0381168114611bed57600080fd5b919050565b60008060408385031215611c0557600080fd5b611c0e83611bd6565b946020939093013593505050565b600080600060608486031215611c3157600080fd5b611c3a84611bd6565b9250611c4860208501611bd6565b9150604084013590509250925092565b600060208284031215611c6a57600080fd5b610a9282611bd6565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715611cb257611cb2611c73565b604052919050565b600067ffffffffffffffff821115611cd457611cd4611c73565b5060051b60200190565b600082601f830112611cef57600080fd5b81356020611d04611cff83611cba565b611c89565b8083825260208201915060208460051b870101935086841115611d2657600080fd5b602086015b84811015611d4957611d3c81611bd6565b8352918301918301611d2b565b509695505050505050565b600080600060608486031215611d6957600080fd5b833567ffffffffffffffff80821115611d8157600080fd5b611d8d87838801611cde565b9450602091508186013581811115611da457600080fd5b611db088828901611cde565b945050604086013581811115611dc557600080fd5b86019050601f81018713611dd857600080fd5b8035611de6611cff82611cba565b81815260059190911b82018301908381019089831115611e0557600080fd5b928401925b82841015611e2357833582529284019290840190611e0a565b80955050505050509250925092565b60ff60f81b881681526000602060e06020840152611e5360e084018a611b7d565b8381036040850152611e65818a611b7d565b606085018990526001600160a01b038816608086015260a0850187905284810360c08601528551808252602080880193509091019060005b81811015611eb957835183529284019291840191600101611e9d565b50909c9b505050505050505050505050565b600060208284031215611edd57600080fd5b5035919050565b803560ff81168114611bed57600080fd5b60008060008060008060c08789031215611f0e57600080fd5b611f1787611bd6565b95506020870135945060408701359350611f3360608801611ee4565b92506080870135915060a087013590509295509295509295565b600080600080600080600060e0888a031215611f6857600080fd5b611f7188611bd6565b9650611f7f60208901611bd6565b95506040880135945060608801359350611f9b60808901611ee4565b925060a0880135915060c0880135905092959891949750929550565b60008060408385031215611fca57600080fd5b611fd383611bd6565b9150611fe160208401611bd6565b90509250929050565b60008060408385031215611ffd57600080fd5b61200683611bd6565b9150602083013563ffffffff8116811461201f57600080fd5b809150509250929050565b600181811c9082168061203e57607f821691505b60208210810361205e57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b818103818111156106005761060061207a565b808201808211156106005761060061207a565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b6000826120ff57634e487b7160e01b600052601260045260246000fd5b500490565b6001600160d01b038281168282160390808211156121245761212461207a565b5092915050565b6001600160d01b038181168382160190808211156121245761212461207a56fea2646970667358221220cf320dfee6114524277a7f23ea25feb7ab06b57f4c6b06a1db0eca813de713be64736f6c63430008170033000000000000000000000000ecb8d8eb7523ce9d4bd8316f0f180c4ddbd10794
0x000000000000000000000000ecb8d8eb7523ce9d4bd8316f0f180c4ddbd10794
----Decoded View------------Arg [0] : initialOwner (address): 0xEcB8d8eb7523cE9d4bD8316F0f180C4dDbd10794
----Encoded View------------Arg [0] : 0x000000000000000000000000ecb8d8eb7523ce9d4bd8316f0f180c4ddbd10794
Loading