[ { "inputs": [ { "internalType": "address", "name": "_beneficiary", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "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": false, "internalType": "address", "name": "account", "type": "address" } ], "name": "Paused", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "bytes32", "name": "previousAdminRole", "type": "bytes32" }, { "indexed": true, "internalType": "bytes32", "name": "newAdminRole", "type": "bytes32" } ], "name": "RoleAdminChanged", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "RoleGranted", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "RoleRevoked", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "_beneficiary", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "_amount", "type": "uint256" }, { "indexed": false, "internalType": "string", "name": "_context", "type": "string" } ], "name": "TokensMinted", "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" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "account", "type": "address" } ], "name": "Unpaused", "type": "event" }, { "inputs": [], "name": "DEFAULT_ADMIN_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "INITIAL_SUPPLY", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MAX_SUPPLY", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MINTER_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "PAUSER_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "TOKEN_NAME", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "TOKEN_SYMBOL", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "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": "spender", "type": "address" }, { "internalType": "uint256", "name": "amount", "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": "amount", "type": "uint256" } ], "name": "burn", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "burnFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "cap", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "subtractedValue", "type": "uint256" } ], "name": "decreaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" } ], "name": "getRoleAdmin", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "uint256", "name": "index", "type": "uint256" } ], "name": "getRoleMember", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" } ], "name": "getRoleMemberCount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "grantRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "hasRole", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "addedValue", "type": "uint256" } ], "name": "increaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "mint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_account", "type": "address" }, { "internalType": "uint256", "name": "_amount", "type": "uint256" }, { "internalType": "string", "name": "_purpose", "type": "string" } ], "name": "mint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "paused", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "renounceRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "revokeRole", "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": "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": "amount", "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": "amount", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "unpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
60a06040523480156200001157600080fd5b5060405162004270380380620042708339818101604052810190620000379190620008e0565b670de0b6b3a7640000638f0d18006200005191906200094b565b6040518060400160405280600581526020017f56414e52590000000000000000000000000000000000000000000000000000008152506040518060400160405280600581526020017f56414e525900000000000000000000000000000000000000000000000000000081525081818160059080519060200190620000d7929190620007c6565b508060069080519060200190620000f0929190620007c6565b5050506000600760006101000a81548160ff021916908315150217905550620001326000801b620001266200023760201b60201c565b6200023f60201b60201c565b620001737f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6620001676200023760201b60201c565b6200023f60201b60201c565b620001b47f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a620001a86200023760201b60201c565b6200023f60201b60201c565b505060008111620001fc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620001f39062000a0d565b60405180910390fd5b8060808181525050506200023081670de0b6b3a76400006352b766806200022491906200094b565b6200025560201b60201c565b5062000c9a565b600033905090565b6200025182826200027060201b60201c565b5050565b6200026c8282620002b860201b62000f031760201c565b5050565b6200028782826200034960201b62000f6d1760201c565b620002b381600160008581526020019081526020016000206200043a60201b6200104d1790919060201c565b505050565b620002c86200047260201b60201c565b81620002de6200047c60201b620007d81760201c565b620002ea919062000a2f565b11156200032e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620003259062000adc565b60405180910390fd5b6200034582826200048660201b6200107d1760201c565b5050565b6200035b8282620005f460201b60201c565b6200043657600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620003db6200023760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b60006200046a836000018373ffffffffffffffffffffffffffffffffffffffff1660001b6200065e60201b60201c565b905092915050565b6000608051905090565b6000600454905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620004f8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620004ef9062000b4e565b60405180910390fd5b6200050c60008383620006d860201b60201c565b806004600082825462000520919062000a2f565b9250508190555080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620005d4919062000b81565b60405180910390a3620005f060008383620006f560201b60201c565b5050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000620006728383620006fa60201b60201c565b620006cd578260000182908060018154018082558091505060019003906000526020600020016000909190919091505582600001805490508360010160008481526020019081526020016000208190555060019050620006d2565b600090505b92915050565b620006f08383836200071d60201b620011d41760201c565b505050565b505050565b600080836001016000848152602001908152602001600020541415905092915050565b620007358383836200073a60201b620011e41760201c565b505050565b62000752838383620007aa60201b6200123c1760201c565b62000762620007af60201b60201c565b15620007a5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200079c9062000c14565b60405180910390fd5b505050565b505050565b6000600760009054906101000a900460ff16905090565b828054620007d49062000c65565b90600052602060002090601f016020900481019282620007f8576000855562000844565b82601f106200081357805160ff191683800117855562000844565b8280016001018555821562000844579182015b828111156200084357825182559160200191906001019062000826565b5b50905062000853919062000857565b5090565b5b808211156200087257600081600090555060010162000858565b5090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620008a8826200087b565b9050919050565b620008ba816200089b565b8114620008c657600080fd5b50565b600081519050620008da81620008af565b92915050565b600060208284031215620008f957620008f862000876565b5b60006200090984828501620008c9565b91505092915050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000620009588262000912565b9150620009658362000912565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620009a157620009a06200091c565b5b828202905092915050565b600082825260208201905092915050565b7f45524332304361707065643a2063617020697320300000000000000000000000600082015250565b6000620009f5601583620009ac565b915062000a0282620009bd565b602082019050919050565b6000602082019050818103600083015262000a2881620009e6565b9050919050565b600062000a3c8262000912565b915062000a498362000912565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111562000a815762000a806200091c565b5b828201905092915050565b7f45524332304361707065643a2063617020657863656564656400000000000000600082015250565b600062000ac4601983620009ac565b915062000ad18262000a8c565b602082019050919050565b6000602082019050818103600083015262000af78162000ab5565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b600062000b36601f83620009ac565b915062000b438262000afe565b602082019050919050565b6000602082019050818103600083015262000b698162000b27565b9050919050565b62000b7b8162000912565b82525050565b600060208201905062000b98600083018462000b70565b92915050565b7f45524332305061757361626c653a20746f6b656e207472616e7366657220776860008201527f696c652070617573656400000000000000000000000000000000000000000000602082015250565b600062000bfc602a83620009ac565b915062000c098262000b9e565b604082019050919050565b6000602082019050818103600083015262000c2f8162000bed565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000c7e57607f821691505b60208210810362000c945762000c9362000c36565b5b50919050565b6080516135ba62000cb660003960006108e001526135ba6000f3fe608060405234801561001057600080fd5b50600436106102065760003560e01c806342966c681161011a578063a217fddf116100ad578063d3fc98641161007c578063d3fc986414610605578063d539139314610621578063d547741f1461063f578063dd62ed3e1461065b578063e63ab1e91461068b57610206565b8063a217fddf14610557578063a457c2d714610575578063a9059cbb146105a5578063ca15c873146105d557610206565b80638456cb59116100e95780638456cb59146104cf5780639010d07c146104d957806391d148541461050957806395d89b411461053957610206565b806342966c68146104495780635c975abb1461046557806370a082311461048357806379cc6790146104b357610206565b80632f2ff15d1161019d578063355274ea1161016c578063355274ea146103b957806336568abe146103d757806339509351146103f35780633f4ba83a1461042357806340c10f191461042d57610206565b80632f2ff15d146103435780632ff2e9dc1461035f578063313ce5671461037d57806332cb6b0c1461039b57610206565b806318821400116101d957806318821400146102a757806323b872dd146102c5578063248a9ca3146102f55780632a9053181461032557610206565b806301ffc9a71461020b57806306fdde031461023b578063095ea7b31461025957806318160ddd14610289575b600080fd5b6102256004803603810190610220919061223f565b6106a9565b6040516102329190612287565b60405180910390f35b610243610723565b604051610250919061233b565b60405180910390f35b610273600480360381019061026e91906123f1565b6107b5565b6040516102809190612287565b60405180910390f35b6102916107d8565b60405161029e9190612440565b60405180910390f35b6102af6107e2565b6040516102bc919061233b565b60405180910390f35b6102df60048036038101906102da919061245b565b61081b565b6040516102ec9190612287565b60405180910390f35b61030f600480360381019061030a91906124e4565b61084a565b60405161031c9190612520565b60405180910390f35b61032d610869565b60405161033a919061233b565b60405180910390f35b61035d6004803603810190610358919061253b565b6108a2565b005b6103676108c3565b6040516103749190612440565b60405180910390f35b6103856108cb565b6040516103929190612597565b60405180910390f35b6103a36108d4565b6040516103b09190612440565b60405180910390f35b6103c16108dc565b6040516103ce9190612440565b60405180910390f35b6103f160048036038101906103ec919061253b565b610904565b005b61040d600480360381019061040891906123f1565b610987565b60405161041a9190612287565b60405180910390f35b61042b6109be565b005b610447600480360381019061044291906123f1565b610a38565b005b610463600480360381019061045e91906125b2565b610ab6565b005b61046d610aca565b60405161047a9190612287565b60405180910390f35b61049d600480360381019061049891906125df565b610ae1565b6040516104aa9190612440565b60405180910390f35b6104cd60048036038101906104c891906123f1565b610b2a565b005b6104d7610b4a565b005b6104f360048036038101906104ee919061260c565b610bc4565b604051610500919061265b565b60405180910390f35b610523600480360381019061051e919061253b565b610bf3565b6040516105309190612287565b60405180910390f35b610541610c5d565b60405161054e919061233b565b60405180910390f35b61055f610cef565b60405161056c9190612520565b60405180910390f35b61058f600480360381019061058a91906123f1565b610cf6565b60405161059c9190612287565b60405180910390f35b6105bf60048036038101906105ba91906123f1565b610d6d565b6040516105cc9190612287565b60405180910390f35b6105ef60048036038101906105ea91906124e4565b610d90565b6040516105fc9190612440565b60405180910390f35b61061f600480360381019061061a91906127ab565b610db4565b005b610629610e13565b6040516106369190612520565b60405180910390f35b6106596004803603810190610654919061253b565b610e37565b005b6106756004803603810190610670919061281a565b610e58565b6040516106829190612440565b60405180910390f35b610693610edf565b6040516106a09190612520565b60405180910390f35b60007f5a05180f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061071c575061071b82611241565b5b9050919050565b60606005805461073290612889565b80601f016020809104026020016040519081016040528092919081815260200182805461075e90612889565b80156107ab5780601f10610780576101008083540402835291602001916107ab565b820191906000526020600020905b81548152906001019060200180831161078e57829003601f168201915b5050505050905090565b6000806107c06112bb565b90506107cd8185856112c3565b600191505092915050565b6000600454905090565b6040518060400160405280600581526020017f56414e525900000000000000000000000000000000000000000000000000000081525081565b6000806108266112bb565b905061083385828561148c565b61083e858585611518565b60019150509392505050565b6000806000838152602001908152602001600020600101549050919050565b6040518060400160405280600581526020017f56414e525900000000000000000000000000000000000000000000000000000081525081565b6108ab8261084a565b6108b481611791565b6108be83836117a5565b505050565b6352b7668081565b60006012905090565b638f0d180081565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b61090c6112bb565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610979576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109709061292c565b60405180910390fd5b61098382826117d9565b5050565b6000806109926112bb565b90506109b38185856109a48589610e58565b6109ae919061297b565b6112c3565b600191505092915050565b6109ef7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a6109ea6112bb565b610bf3565b610a2e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a2590612a43565b60405180910390fd5b610a3661180d565b565b610a697f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6610a646112bb565b610bf3565b610aa8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a9f90612ad5565b60405180910390fd5b610ab28282611870565b5050565b610ac7610ac16112bb565b8261187e565b50565b6000600760009054906101000a900460ff16905090565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610b3c82610b366112bb565b8361148c565b610b46828261187e565b5050565b610b7b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a610b766112bb565b610bf3565b610bba576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bb190612b67565b60405180910390fd5b610bc2611a4d565b565b6000610beb8260016000868152602001908152602001600020611ab090919063ffffffff16565b905092915050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b606060068054610c6c90612889565b80601f0160208091040260200160405190810160405280929190818152602001828054610c9890612889565b8015610ce55780601f10610cba57610100808354040283529160200191610ce5565b820191906000526020600020905b815481529060010190602001808311610cc857829003601f168201915b5050505050905090565b6000801b81565b600080610d016112bb565b90506000610d0f8286610e58565b905083811015610d54576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4b90612bf9565b60405180910390fd5b610d6182868684036112c3565b60019250505092915050565b600080610d786112bb565b9050610d85818585611518565b600191505092915050565b6000610dad60016000848152602001908152602001600020611aca565b9050919050565b610dbe8383610a38565b8273ffffffffffffffffffffffffffffffffffffffff167f9d89e36eadf856db0ad9ffb5a569e07f95634dddd9501141ecf04820484ad0dc8383604051610e06929190612c19565b60405180910390a2505050565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b610e408261084a565b610e4981611791565b610e5383836117d9565b505050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a81565b610f0b6108dc565b81610f146107d8565b610f1e919061297b565b1115610f5f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f5690612c95565b60405180910390fd5b610f69828261107d565b5050565b610f778282610bf3565b61104957600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550610fee6112bb565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b6000611075836000018373ffffffffffffffffffffffffffffffffffffffff1660001b611adf565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036110ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e390612d01565b60405180910390fd5b6110f860008383611b4f565b806004600082825461110a919061297b565b9250508190555080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516111bc9190612440565b60405180910390a36111d060008383611b5f565b5050565b6111df8383836111e4565b505050565b6111ef83838361123c565b6111f7610aca565b15611237576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161122e90612d93565b60405180910390fd5b505050565b505050565b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806112b457506112b382611b64565b5b9050919050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611332576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161132990612e25565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036113a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161139890612eb7565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161147f9190612440565b60405180910390a3505050565b60006114988484610e58565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146115125781811015611504576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114fb90612f23565b60405180910390fd5b61151184848484036112c3565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611587576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161157e90612fb5565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036115f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115ed90613047565b60405180910390fd5b611601838383611b4f565b6000600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611688576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161167f906130d9565b60405180910390fd5b818103600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516117789190612440565b60405180910390a361178b848484611b5f565b50505050565b6117a28161179d6112bb565b611bce565b50565b6117af8282610f6d565b6117d4816001600085815260200190815260200160002061104d90919063ffffffff16565b505050565b6117e38282611c53565b6118088160016000858152602001908152602001600020611d3490919063ffffffff16565b505050565b611815611d64565b6000600760006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6118596112bb565b604051611866919061265b565b60405180910390a1565b61187a8282610f03565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036118ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118e49061316b565b60405180910390fd5b6118f982600083611b4f565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611980576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611977906131fd565b60405180910390fd5b818103600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600460008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611a349190612440565b60405180910390a3611a4883600084611b5f565b505050565b611a55611dad565b6001600760006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611a996112bb565b604051611aa6919061265b565b60405180910390a1565b6000611abf8360000183611df7565b60001c905092915050565b6000611ad882600001611e22565b9050919050565b6000611aeb8383611e33565b611b44578260000182908060018154018082558091505060019003906000526020600020016000909190919091505582600001805490508360010160008481526020019081526020016000208190555060019050611b49565b600090505b92915050565b611b5a8383836111d4565b505050565b505050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b611bd88282610bf3565b611c4f57611be581611e56565b611bf38360001c6020611e83565b604051602001611c049291906132f1565b6040516020818303038152906040526040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c46919061233b565b60405180910390fd5b5050565b611c5d8282610bf3565b15611d3057600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611cd56112bb565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b6000611d5c836000018373ffffffffffffffffffffffffffffffffffffffff1660001b6120bf565b905092915050565b611d6c610aca565b611dab576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611da290613377565b60405180910390fd5b565b611db5610aca565b15611df5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dec906133e3565b60405180910390fd5b565b6000826000018281548110611e0f57611e0e613403565b5b9060005260206000200154905092915050565b600081600001805490509050919050565b600080836001016000848152602001908152602001600020541415905092915050565b6060611e7c8273ffffffffffffffffffffffffffffffffffffffff16601460ff16611e83565b9050919050565b606060006002836002611e969190613432565b611ea0919061297b565b67ffffffffffffffff811115611eb957611eb8612680565b5b6040519080825280601f01601f191660200182016040528015611eeb5781602001600182028036833780820191505090505b5090507f300000000000000000000000000000000000000000000000000000000000000081600081518110611f2357611f22613403565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110611f8757611f86613403565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060006001846002611fc79190613432565b611fd1919061297b565b90505b6001811115612071577f3031323334353637383961626364656600000000000000000000000000000000600f86166010811061201357612012613403565b5b1a60f81b82828151811061202a57612029613403565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c94508061206a9061348c565b9050611fd4565b50600084146120b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120ac90613501565b60405180910390fd5b8091505092915050565b600080836001016000848152602001908152602001600020549050600081146121c75760006001826120f19190613521565b90506000600186600001805490506121099190613521565b905081811461217857600086600001828154811061212a57612129613403565b5b906000526020600020015490508087600001848154811061214e5761214d613403565b5b90600052602060002001819055508387600101600083815260200190815260200160002081905550505b8560000180548061218c5761218b613555565b5b6001900381819060005260206000200160009055905585600101600086815260200190815260200160002060009055600193505050506121cd565b60009150505b92915050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61221c816121e7565b811461222757600080fd5b50565b60008135905061223981612213565b92915050565b600060208284031215612255576122546121dd565b5b60006122638482850161222a565b91505092915050565b60008115159050919050565b6122818161226c565b82525050565b600060208201905061229c6000830184612278565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156122dc5780820151818401526020810190506122c1565b838111156122eb576000848401525b50505050565b6000601f19601f8301169050919050565b600061230d826122a2565b61231781856122ad565b93506123278185602086016122be565b612330816122f1565b840191505092915050565b600060208201905081810360008301526123558184612302565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006123888261235d565b9050919050565b6123988161237d565b81146123a357600080fd5b50565b6000813590506123b58161238f565b92915050565b6000819050919050565b6123ce816123bb565b81146123d957600080fd5b50565b6000813590506123eb816123c5565b92915050565b60008060408385031215612408576124076121dd565b5b6000612416858286016123a6565b9250506020612427858286016123dc565b9150509250929050565b61243a816123bb565b82525050565b60006020820190506124556000830184612431565b92915050565b600080600060608486031215612474576124736121dd565b5b6000612482868287016123a6565b9350506020612493868287016123a6565b92505060406124a4868287016123dc565b9150509250925092565b6000819050919050565b6124c1816124ae565b81146124cc57600080fd5b50565b6000813590506124de816124b8565b92915050565b6000602082840312156124fa576124f96121dd565b5b6000612508848285016124cf565b91505092915050565b61251a816124ae565b82525050565b60006020820190506125356000830184612511565b92915050565b60008060408385031215612552576125516121dd565b5b6000612560858286016124cf565b9250506020612571858286016123a6565b9150509250929050565b600060ff82169050919050565b6125918161257b565b82525050565b60006020820190506125ac6000830184612588565b92915050565b6000602082840312156125c8576125c76121dd565b5b60006125d6848285016123dc565b91505092915050565b6000602082840312156125f5576125f46121dd565b5b6000612603848285016123a6565b91505092915050565b60008060408385031215612623576126226121dd565b5b6000612631858286016124cf565b9250506020612642858286016123dc565b9150509250929050565b6126558161237d565b82525050565b6000602082019050612670600083018461264c565b92915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6126b8826122f1565b810181811067ffffffffffffffff821117156126d7576126d6612680565b5b80604052505050565b60006126ea6121d3565b90506126f682826126af565b919050565b600067ffffffffffffffff82111561271657612715612680565b5b61271f826122f1565b9050602081019050919050565b82818337600083830152505050565b600061274e612749846126fb565b6126e0565b90508281526020810184848401111561276a5761276961267b565b5b61277584828561272c565b509392505050565b600082601f83011261279257612791612676565b5b81356127a284826020860161273b565b91505092915050565b6000806000606084860312156127c4576127c36121dd565b5b60006127d2868287016123a6565b93505060206127e3868287016123dc565b925050604084013567ffffffffffffffff811115612804576128036121e2565b5b6128108682870161277d565b9150509250925092565b60008060408385031215612831576128306121dd565b5b600061283f858286016123a6565b9250506020612850858286016123a6565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806128a157607f821691505b6020821081036128b4576128b361285a565b5b50919050565b7f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008201527f20726f6c657320666f722073656c660000000000000000000000000000000000602082015250565b6000612916602f836122ad565b9150612921826128ba565b604082019050919050565b6000602082019050818103600083015261294581612909565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612986826123bb565b9150612991836123bb565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156129c6576129c561294c565b5b828201905092915050565b7f45524332305072657365744d696e7465725061757365723a206d75737420686160008201527f76652070617573657220726f6c6520746f20756e706175736500000000000000602082015250565b6000612a2d6039836122ad565b9150612a38826129d1565b604082019050919050565b60006020820190508181036000830152612a5c81612a20565b9050919050565b7f45524332305072657365744d696e7465725061757365723a206d75737420686160008201527f7665206d696e74657220726f6c6520746f206d696e7400000000000000000000602082015250565b6000612abf6036836122ad565b9150612aca82612a63565b604082019050919050565b60006020820190508181036000830152612aee81612ab2565b9050919050565b7f45524332305072657365744d696e7465725061757365723a206d75737420686160008201527f76652070617573657220726f6c6520746f207061757365000000000000000000602082015250565b6000612b516037836122ad565b9150612b5c82612af5565b604082019050919050565b60006020820190508181036000830152612b8081612b44565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000612be36025836122ad565b9150612bee82612b87565b604082019050919050565b60006020820190508181036000830152612c1281612bd6565b9050919050565b6000604082019050612c2e6000830185612431565b8181036020830152612c408184612302565b90509392505050565b7f45524332304361707065643a2063617020657863656564656400000000000000600082015250565b6000612c7f6019836122ad565b9150612c8a82612c49565b602082019050919050565b60006020820190508181036000830152612cae81612c72565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6000612ceb601f836122ad565b9150612cf682612cb5565b602082019050919050565b60006020820190508181036000830152612d1a81612cde565b9050919050565b7f45524332305061757361626c653a20746f6b656e207472616e7366657220776860008201527f696c652070617573656400000000000000000000000000000000000000000000602082015250565b6000612d7d602a836122ad565b9150612d8882612d21565b604082019050919050565b60006020820190508181036000830152612dac81612d70565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612e0f6024836122ad565b9150612e1a82612db3565b604082019050919050565b60006020820190508181036000830152612e3e81612e02565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612ea16022836122ad565b9150612eac82612e45565b604082019050919050565b60006020820190508181036000830152612ed081612e94565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000612f0d601d836122ad565b9150612f1882612ed7565b602082019050919050565b60006020820190508181036000830152612f3c81612f00565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612f9f6025836122ad565b9150612faa82612f43565b604082019050919050565b60006020820190508181036000830152612fce81612f92565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006130316023836122ad565b915061303c82612fd5565b604082019050919050565b6000602082019050818103600083015261306081613024565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b60006130c36026836122ad565b91506130ce82613067565b604082019050919050565b600060208201905081810360008301526130f2816130b6565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b60006131556021836122ad565b9150613160826130f9565b604082019050919050565b6000602082019050818103600083015261318481613148565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b60006131e76022836122ad565b91506131f28261318b565b604082019050919050565b60006020820190508181036000830152613216816131da565b9050919050565b600081905092915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000600082015250565b600061325e60178361321d565b915061326982613228565b601782019050919050565b600061327f826122a2565b613289818561321d565b93506132998185602086016122be565b80840191505092915050565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000600082015250565b60006132db60118361321d565b91506132e6826132a5565b601182019050919050565b60006132fc82613251565b91506133088285613274565b9150613313826132ce565b915061331f8284613274565b91508190509392505050565b7f5061757361626c653a206e6f7420706175736564000000000000000000000000600082015250565b60006133616014836122ad565b915061336c8261332b565b602082019050919050565b6000602082019050818103600083015261339081613354565b9050919050565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b60006133cd6010836122ad565b91506133d882613397565b602082019050919050565b600060208201905081810360008301526133fc816133c0565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600061343d826123bb565b9150613448836123bb565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156134815761348061294c565b5b828202905092915050565b6000613497826123bb565b9150600082036134aa576134a961294c565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b60006134eb6020836122ad565b91506134f6826134b5565b602082019050919050565b6000602082019050818103600083015261351a816134de565b9050919050565b600061352c826123bb565b9150613537836123bb565b92508282101561354a5761354961294c565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea2646970667358221220cfbfb36d90f8c1a481ccf9acdd9c53ec8899353dfb89da311603c6301d18c0f664736f6c634300080d0033000000000000000000000000ef0a530b878b09665e21281205663bafa1c7a994
0x000000000000000000000000ef0a530b878b09665e21281205663bafa1c7a994
----Decoded View------------Arg [0] : _beneficiary (address): 0xef0A530B878B09665e21281205663bAFA1C7A994
----Encoded View------------Arg [0] : 0x000000000000000000000000ef0a530b878b09665e21281205663bafa1c7a994