[ { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [ { "internalType": "uint256", "name": "cap", "type": "uint256" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "CapExceeded", "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": "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": "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": "string", "name": "str", "type": "string" } ], "name": "StringTooLong", "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": [], "name": "EIP712DomainChanged", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferStarted", "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": "DOMAIN_SEPARATOR", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "acceptOwnership", "outputs": [], "stateMutability": "nonpayable", "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": "spender", "type": "address" }, { "internalType": "uint256", "name": "value", "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": "uint256", "name": "value", "type": "uint256" } ], "name": "burn", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "burnFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "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": [], "name": "maxCap", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "mint", "outputs": [], "stateMutability": "nonpayable", "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": [], "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": "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": "to", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "value", "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" } ]
610160604052348015610010575f80fd5b50604051612be0380380612be0833981810160405281019061003291906104cb565b806040518060400160405280600981526020017f34455645524c414e440000000000000000000000000000000000000000000000815250806040518060400160405280600181526020017f31000000000000000000000000000000000000000000000000000000000000008152506040518060400160405280600981526020017f34455645524c414e4400000000000000000000000000000000000000000000008152506040518060400160405280600581526020017f3445564552000000000000000000000000000000000000000000000000000000815250816003908161011b9190610730565b50806004908161012b9190610730565b50505061014260058361025f60201b90919060201c565b610120818152505061015e60068261025f60201b90919060201c565b6101408181525050818051906020012060e08181525050808051906020012061010081815250504660a0818152505061019b6102ac60201b60201c565b608081815250503073ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff16815250505050505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610249575f6040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401610240919061080e565b60405180910390fd5b6102588161030660201b60201c565b50506109b8565b5f602083511015610280576102798361033c60201b60201c565b90506102a6565b82610290836103a160201b60201c565b5f01908161029e9190610730565b5060ff5f1b90505b92915050565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60e0516101005146306040516020016102eb95949392919061084e565b60405160208183030381529060405280519060200120905090565b60095f6101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055610339816103aa60201b60201c565b50565b5f80829050601f8151111561038857826040517f305a27a900000000000000000000000000000000000000000000000000000000815260040161037f9190610905565b60405180910390fd5b80518161039490610952565b5f1c175f1b915050919050565b5f819050919050565b5f60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160085f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61049a82610471565b9050919050565b6104aa81610490565b81146104b4575f80fd5b50565b5f815190506104c5816104a1565b92915050565b5f602082840312156104e0576104df61046d565b5b5f6104ed848285016104b7565b91505092915050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061057157607f821691505b6020821081036105845761058361052d565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026105e67fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826105ab565b6105f086836105ab565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f61063461062f61062a84610608565b610611565b610608565b9050919050565b5f819050919050565b61064d8361061a565b6106616106598261063b565b8484546105b7565b825550505050565b5f90565b610675610669565b610680818484610644565b505050565b5b818110156106a3576106985f8261066d565b600181019050610686565b5050565b601f8211156106e8576106b98161058a565b6106c28461059c565b810160208510156106d1578190505b6106e56106dd8561059c565b830182610685565b50505b505050565b5f82821c905092915050565b5f6107085f19846008026106ed565b1980831691505092915050565b5f61072083836106f9565b9150826002028217905092915050565b610739826104f6565b67ffffffffffffffff81111561075257610751610500565b5b61075c825461055a565b6107678282856106a7565b5f60209050601f831160018114610798575f8415610786578287015190505b6107908582610715565b8655506107f7565b601f1984166107a68661058a565b5f5b828110156107cd578489015182556001820191506020850194506020810190506107a8565b868310156107ea57848901516107e6601f8916826106f9565b8355505b6001600288020188555050505b505050505050565b61080881610490565b82525050565b5f6020820190506108215f8301846107ff565b92915050565b5f819050919050565b61083981610827565b82525050565b61084881610608565b82525050565b5f60a0820190506108615f830188610830565b61086e6020830187610830565b61087b6040830186610830565b610888606083018561083f565b61089560808301846107ff565b9695505050505050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6108d7826104f6565b6108e1818561089f565b93506108f18185602086016108af565b6108fa816108bd565b840191505092915050565b5f6020820190508181035f83015261091d81846108cd565b905092915050565b5f81519050919050565b5f819050602082019050919050565b5f6109498251610827565b80915050919050565b5f61095c82610925565b826109668461092f565b90506109718161093e565b925060208210156109b1576109ac7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff836020036008026105ab565b831692505b5050919050565b60805160a05160c05160e0516101005161012051610140516121d7610a095f395f610f8301525f610f4801525f61147c01525f61145b01525f610c9101525f610ce701525f610d1001526121d75ff3fe608060405234801561000f575f80fd5b5060043610610140575f3560e01c806379ba5097116100b657806395d89b411161007a57806395d89b4114610344578063a9059cbb14610362578063d505accf14610392578063dd62ed3e146103ae578063e30c3978146103de578063f2fde38b146103fc57610140565b806379ba5097146102ac57806379cc6790146102b65780637ecebe00146102d257806384b0196e146103025780638da5cb5b1461032657610140565b8063313ce56711610108578063313ce567146101fe5780633644e5151461021c57806340c10f191461023a57806342966c681461025657806370a0823114610272578063715018a6146102a257610140565b806306fdde0314610144578063095ea7b31461016257806318160ddd1461019257806323548b8b146101b057806323b872dd146101ce575b5f80fd5b61014c610418565b60405161015991906119f5565b60405180910390f35b61017c60048036038101906101779190611aa6565b6104a8565b6040516101899190611afe565b60405180910390f35b61019a6104ca565b6040516101a79190611b26565b60405180910390f35b6101b86104d3565b6040516101c59190611b26565b60405180910390f35b6101e860048036038101906101e39190611b3f565b6104e3565b6040516101f59190611afe565b60405180910390f35b610206610511565b6040516102139190611baa565b60405180910390f35b610224610519565b6040516102319190611bdb565b60405180910390f35b610254600480360381019061024f9190611aa6565b610527565b005b610270600480360381019061026b9190611bf4565b6105ae565b005b61028c60048036038101906102879190611c1f565b6105c2565b6040516102999190611b26565b60405180910390f35b6102aa610607565b005b6102b461061a565b005b6102d060048036038101906102cb9190611aa6565b6106a8565b005b6102ec60048036038101906102e79190611c1f565b6106c8565b6040516102f99190611b26565b60405180910390f35b61030a6106d9565b60405161031d9796959493929190611d4a565b60405180910390f35b61032e61077e565b60405161033b9190611dcc565b60405180910390f35b61034c6107a6565b60405161035991906119f5565b60405180910390f35b61037c60048036038101906103779190611aa6565b610836565b6040516103899190611afe565b60405180910390f35b6103ac60048036038101906103a79190611e39565b610858565b005b6103c860048036038101906103c39190611ed6565b61099d565b6040516103d59190611b26565b60405180910390f35b6103e6610a1f565b6040516103f39190611dcc565b60405180910390f35b61041660048036038101906104119190611c1f565b610a47565b005b60606003805461042790611f41565b80601f016020809104026020016040519081016040528092919081815260200182805461045390611f41565b801561049e5780601f106104755761010080835404028352916020019161049e565b820191905f5260205f20905b81548152906001019060200180831161048157829003601f168201915b5050505050905090565b5f806104b2610af3565b90506104bf818585610afa565b600191505092915050565b5f600254905090565b6b204fce5e3e2502611000000081565b5f806104ed610af3565b90506104fa858285610b0c565b610505858585610b9e565b60019150509392505050565b5f6012905090565b5f610522610c8e565b905090565b61052f610d44565b6b204fce5e3e25026110000000816105456104ca565b61054f9190611f9e565b11156105a0576b204fce5e3e25026110000000816040517ff480e285000000000000000000000000000000000000000000000000000000008152600401610597929190611fd1565b60405180910390fd5b6105aa8282610dcb565b5050565b6105bf6105b9610af3565b82610e4a565b50565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b61060f610d44565b6106185f610ec9565b565b5f610623610af3565b90508073ffffffffffffffffffffffffffffffffffffffff16610644610a1f565b73ffffffffffffffffffffffffffffffffffffffff161461069c57806040517f118cdaa70000000000000000000000000000000000000000000000000000000081526004016106939190611dcc565b60405180910390fd5b6106a581610ec9565b50565b6106ba826106b4610af3565b83610b0c565b6106c48282610e4a565b5050565b5f6106d282610ef9565b9050919050565b5f6060805f805f60606106ea610f3f565b6106f2610f7a565b46305f801b5f67ffffffffffffffff81111561071157610710611ff8565b5b60405190808252806020026020018201604052801561073f5781602001602082028036833780820191505090505b507f0f00000000000000000000000000000000000000000000000000000000000000959493929190965096509650965096509650965090919293949596565b5f60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600480546107b590611f41565b80601f01602080910402602001604051908101604052809291908181526020018280546107e190611f41565b801561082c5780601f106108035761010080835404028352916020019161082c565b820191905f5260205f20905b81548152906001019060200180831161080f57829003601f168201915b5050505050905090565b5f80610840610af3565b905061084d818585610b9e565b600191505092915050565b8342111561089d57836040517f627913020000000000000000000000000000000000000000000000000000000081526004016108949190611b26565b60405180910390fd5b5f7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98888886108cb8c610fb5565b896040516020016108e196959493929190612025565b6040516020818303038152906040528051906020012090505f61090382611008565b90505f61091282878787611021565b90508973ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461098657808a6040517f4b800e4600000000000000000000000000000000000000000000000000000000815260040161097d929190612084565b60405180910390fd5b6109918a8a8a610afa565b50505050505050505050565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610a4f610d44565b8060095f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16610aae61077e565b73ffffffffffffffffffffffffffffffffffffffff167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b5f33905090565b610b07838383600161104f565b505050565b5f610b17848461099d565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610b985781811015610b89578281836040517ffb8f41b2000000000000000000000000000000000000000000000000000000008152600401610b80939291906120ab565b60405180910390fd5b610b9784848484035f61104f565b5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610c0e575f6040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600401610c059190611dcc565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610c7e575f6040517fec442f05000000000000000000000000000000000000000000000000000000008152600401610c759190611dcc565b60405180910390fd5b610c8983838361121e565b505050565b5f7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff16148015610d0957507f000000000000000000000000000000000000000000000000000000000000000046145b15610d36577f00000000000000000000000000000000000000000000000000000000000000009050610d41565b610d3e611437565b90505b90565b610d4c610af3565b73ffffffffffffffffffffffffffffffffffffffff16610d6a61077e565b73ffffffffffffffffffffffffffffffffffffffff1614610dc957610d8d610af3565b6040517f118cdaa7000000000000000000000000000000000000000000000000000000008152600401610dc09190611dcc565b60405180910390fd5b565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610e3b575f6040517fec442f05000000000000000000000000000000000000000000000000000000008152600401610e329190611dcc565b60405180910390fd5b610e465f838361121e565b5050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610eba575f6040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600401610eb19190611dcc565b60405180910390fd5b610ec5825f8361121e565b5050565b60095f6101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055610ef6816114cc565b50565b5f60075f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6060610f7560057f000000000000000000000000000000000000000000000000000000000000000061158f90919063ffffffff16565b905090565b6060610fb060067f000000000000000000000000000000000000000000000000000000000000000061158f90919063ffffffff16565b905090565b5f60075f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f815480929190600101919050559050919050565b5f61101a611014610c8e565b8361163c565b9050919050565b5f805f806110318888888861167c565b9250925092506110418282611763565b829350505050949350505050565b5f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036110bf575f6040517fe602df050000000000000000000000000000000000000000000000000000000081526004016110b69190611dcc565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361112f575f6040517f94280d620000000000000000000000000000000000000000000000000000000081526004016111269190611dcc565b60405180910390fd5b8160015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508015611218578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161120f9190611b26565b60405180910390a35b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361126e578060025f8282546112629190611f9e565b9250508190555061133c565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050818110156112f7578381836040517fe450d38c0000000000000000000000000000000000000000000000000000000081526004016112ee939291906120ab565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550505b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611383578060025f82825403925050819055506113cd565b805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161142a9190611b26565b60405180910390a3505050565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f7f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000046306040516020016114b19594939291906120e0565b60405160208183030381529060405280519060200120905090565b5f60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160085f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b606060ff5f1b83146115ab576115a4836118c5565b9050611636565b8180546115b790611f41565b80601f01602080910402602001604051908101604052809291908181526020018280546115e390611f41565b801561162e5780601f106116055761010080835404028352916020019161162e565b820191905f5260205f20905b81548152906001019060200180831161161157829003601f168201915b505050505090505b92915050565b5f6040517f190100000000000000000000000000000000000000000000000000000000000081528360028201528260228201526042812091505092915050565b5f805f7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0845f1c11156116b8575f600385925092509250611759565b5f6001888888886040515f81526020016040526040516116db9493929190612131565b6020604051602081039080840390855afa1580156116fb573d5f803e3d5ffd5b5050506020604051035190505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361174c575f60015f801b93509350935050611759565b805f805f1b935093509350505b9450945094915050565b5f600381111561177657611775612174565b5b82600381111561178957611788612174565b5b03156118c157600160038111156117a3576117a2612174565b5b8260038111156117b6576117b5612174565b5b036117ed576040517ff645eedf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002600381111561180157611800612174565b5b82600381111561181457611813612174565b5b0361185857805f1c6040517ffce698f700000000000000000000000000000000000000000000000000000000815260040161184f9190611b26565b60405180910390fd5b60038081111561186b5761186a612174565b5b82600381111561187e5761187d612174565b5b036118c057806040517fd78bce0c0000000000000000000000000000000000000000000000000000000081526004016118b79190611bdb565b60405180910390fd5b5b5050565b60605f6118d183611937565b90505f602067ffffffffffffffff8111156118ef576118ee611ff8565b5b6040519080825280601f01601f1916602001820160405280156119215781602001600182028036833780820191505090505b5090508181528360208201528092505050919050565b5f8060ff835f1c169050601f81111561197c576040517fb3512b0c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80915050919050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6119c782611985565b6119d1818561198f565b93506119e181856020860161199f565b6119ea816119ad565b840191505092915050565b5f6020820190508181035f830152611a0d81846119bd565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611a4282611a19565b9050919050565b611a5281611a38565b8114611a5c575f80fd5b50565b5f81359050611a6d81611a49565b92915050565b5f819050919050565b611a8581611a73565b8114611a8f575f80fd5b50565b5f81359050611aa081611a7c565b92915050565b5f8060408385031215611abc57611abb611a15565b5b5f611ac985828601611a5f565b9250506020611ada85828601611a92565b9150509250929050565b5f8115159050919050565b611af881611ae4565b82525050565b5f602082019050611b115f830184611aef565b92915050565b611b2081611a73565b82525050565b5f602082019050611b395f830184611b17565b92915050565b5f805f60608486031215611b5657611b55611a15565b5b5f611b6386828701611a5f565b9350506020611b7486828701611a5f565b9250506040611b8586828701611a92565b9150509250925092565b5f60ff82169050919050565b611ba481611b8f565b82525050565b5f602082019050611bbd5f830184611b9b565b92915050565b5f819050919050565b611bd581611bc3565b82525050565b5f602082019050611bee5f830184611bcc565b92915050565b5f60208284031215611c0957611c08611a15565b5b5f611c1684828501611a92565b91505092915050565b5f60208284031215611c3457611c33611a15565b5b5f611c4184828501611a5f565b91505092915050565b5f7fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b611c7e81611c4a565b82525050565b611c8d81611a38565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b611cc581611a73565b82525050565b5f611cd68383611cbc565b60208301905092915050565b5f602082019050919050565b5f611cf882611c93565b611d028185611c9d565b9350611d0d83611cad565b805f5b83811015611d3d578151611d248882611ccb565b9750611d2f83611ce2565b925050600181019050611d10565b5085935050505092915050565b5f60e082019050611d5d5f83018a611c75565b8181036020830152611d6f81896119bd565b90508181036040830152611d8381886119bd565b9050611d926060830187611b17565b611d9f6080830186611c84565b611dac60a0830185611bcc565b81810360c0830152611dbe8184611cee565b905098975050505050505050565b5f602082019050611ddf5f830184611c84565b92915050565b611dee81611b8f565b8114611df8575f80fd5b50565b5f81359050611e0981611de5565b92915050565b611e1881611bc3565b8114611e22575f80fd5b50565b5f81359050611e3381611e0f565b92915050565b5f805f805f805f60e0888a031215611e5457611e53611a15565b5b5f611e618a828b01611a5f565b9750506020611e728a828b01611a5f565b9650506040611e838a828b01611a92565b9550506060611e948a828b01611a92565b9450506080611ea58a828b01611dfb565b93505060a0611eb68a828b01611e25565b92505060c0611ec78a828b01611e25565b91505092959891949750929550565b5f8060408385031215611eec57611eeb611a15565b5b5f611ef985828601611a5f565b9250506020611f0a85828601611a5f565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680611f5857607f821691505b602082108103611f6b57611f6a611f14565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611fa882611a73565b9150611fb383611a73565b9250828201905080821115611fcb57611fca611f71565b5b92915050565b5f604082019050611fe45f830185611b17565b611ff16020830184611b17565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f60c0820190506120385f830189611bcc565b6120456020830188611c84565b6120526040830187611c84565b61205f6060830186611b17565b61206c6080830185611b17565b61207960a0830184611b17565b979650505050505050565b5f6040820190506120975f830185611c84565b6120a46020830184611c84565b9392505050565b5f6060820190506120be5f830186611c84565b6120cb6020830185611b17565b6120d86040830184611b17565b949350505050565b5f60a0820190506120f35f830188611bcc565b6121006020830187611bcc565b61210d6040830186611bcc565b61211a6060830185611b17565b6121276080830184611c84565b9695505050505050565b5f6080820190506121445f830187611bcc565b6121516020830186611b9b565b61215e6040830185611bcc565b61216b6060830184611bcc565b95945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffdfea2646970667358221220ca2f94e40b8731318462cfa15d88499166b5859c8a005983a60ce3af87cb2db364736f6c634300081a0033000000000000000000000000511d43510fb5409f4c147e9e9287420bbaf94cad
0x000000000000000000000000511d43510fb5409f4c147e9e9287420bbaf94cad
----Decoded View------------Arg [0] : owner (address): 0x511D43510FB5409F4c147E9e9287420bBaF94cad
----Encoded View------------Arg [0] : 0x000000000000000000000000511d43510fb5409f4c147e9e9287420bbaf94cad