Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00Latest 5 internal transactions
Advanced mode:
| Parent Transaction Hash | Method |
Block
|
From
|
To
|
|||
|---|---|---|---|---|---|---|---|
| 0x3d602d80 | 17034151 | 1240 days ago | Contract Creation | 0 ETH | |||
| 0x3d602d80 | 16717388 | 1285 days ago | Contract Creation | 0 ETH | |||
| 0x3d602d80 | 16135368 | 1366 days ago | Contract Creation | 0 ETH | |||
| 0x3d602d80 | 16099952 | 1371 days ago | Contract Creation | 0 ETH | |||
| 0x60806040 | 15785514 | 1415 days ago | Contract Creation | 0 ETH |
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Heuristics suggest this may be a proxy contract. Verify using the Proxy Contract Checker
Contract Source Code (Solidity Standard Json-Input format)
Contract Security Audit
No Contract Security Audit SubmittedSubmit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"CollateralTokenAmountLessThanConvertibleTokenAmount","type":"error"},{"inputs":[],"name":"InvalidDeposit","type":"error"},{"inputs":[],"name":"InvalidMaturity","type":"error"},{"inputs":[],"name":"TokensMustBeDifferent","type":"error"},{"inputs":[],"name":"TooManyDecimals","type":"error"},{"inputs":[],"name":"ZeroBondsToMint","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"newBond","type":"address"},{"indexed":false,"internalType":"string","name":"name","type":"string"},{"indexed":false,"internalType":"string","name":"symbol","type":"string"},{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"maturity","type":"uint256"},{"indexed":true,"internalType":"address","name":"paymentToken","type":"address"},{"indexed":true,"internalType":"address","name":"collateralToken","type":"address"},{"indexed":false,"internalType":"uint256","name":"collateralTokenAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"convertibleTokenAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"bonds","type":"uint256"}],"name":"BondCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"isIssuerAllowListEnabled","type":"bool"}],"name":"IssuerAllowListEnabled","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":false,"internalType":"bool","name":"isTokenAllowListEnabled","type":"bool"}],"name":"TokenAllowListEnabled","type":"event"},{"inputs":[],"name":"ALLOWED_TOKEN","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ISSUER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"symbol","type":"string"},{"internalType":"uint256","name":"maturity","type":"uint256"},{"internalType":"address","name":"paymentToken","type":"address"},{"internalType":"address","name":"collateralToken","type":"address"},{"internalType":"uint256","name":"collateralTokenAmount","type":"uint256"},{"internalType":"uint256","name":"convertibleTokenAmount","type":"uint256"},{"internalType":"uint256","name":"bonds","type":"uint256"}],"name":"createBond","outputs":[{"internalType":"address","name":"clone","type":"address"}],"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":"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":"","type":"address"}],"name":"isBond","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isIssuerAllowListEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isTokenAllowListEnabled","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":"bool","name":"_isIssuerAllowListEnabled","type":"bool"}],"name":"setIsIssuerAllowListEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_isTokenAllowListEnabled","type":"bool"}],"name":"setIsTokenAllowListEnabled","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":"tokenImplementation","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]Contract Creation Code
60a06040526001600260006101000a81548160ff0219169083151502179055506001600260016101000a81548160ff0219169083151502179055503480156200004757600080fd5b50604051620000569062000234565b604051809103906000f08015801562000073573d6000803e3d6000fd5b5073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1681525050620000cb6000801b620000bf620000d160201b60201c565b620000d960201b60201c565b62000242565b600033905090565b620000eb8282620001ca60201b60201c565b620001c657600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506200016b620000d160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6148bc806200260483390190565b60805161239f62000265600039600081816106f50152610914015261239f6000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c806386f1e2a611610097578063c394880411610066578063c3948804146102c1578063cca77808146102df578063d547741f146102fb578063ed3b4a1f1461031757610100565b806386f1e2a6146102275780638f4899471461025757806391d1485414610273578063a217fddf146102a357610100565b80632f2ff15d116100d35780632f2ff15d146101b35780632f3a3d5d146101cf57806336568abe146101ed57806382aefa241461020957610100565b806301ffc9a7146101055780630802277514610135578063086428f714610153578063248a9ca314610183575b600080fd5b61011f600480360381019061011a9190611631565b610335565b60405161012c9190611679565b60405180910390f35b61013d6103af565b60405161014a9190611679565b60405180910390f35b61016d6004803603810190610168919061186e565b6103c2565b60405161017a919061196b565b60405180910390f35b61019d600480360381019061019891906119bc565b6108d2565b6040516101aa91906119f8565b60405180910390f35b6101cd60048036038101906101c89190611a13565b6108f1565b005b6101d7610912565b6040516101e4919061196b565b60405180910390f35b61020760048036038101906102029190611a13565b610936565b005b6102116109b9565b60405161021e91906119f8565b60405180910390f35b610241600480360381019061023c9190611a53565b6109dd565b60405161024e9190611679565b60405180910390f35b610271600480360381019061026c9190611aac565b6109fd565b005b61028d60048036038101906102889190611a13565b610a5f565b60405161029a9190611679565b60405180910390f35b6102ab610ac9565b6040516102b891906119f8565b60405180910390f35b6102c9610ad0565b6040516102d691906119f8565b60405180910390f35b6102f960048036038101906102f49190611aac565b610af4565b005b61031560048036038101906103109190611a13565b610b56565b005b61031f610b77565b60405161032c9190611679565b60405180910390f35b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806103a857506103a782610b8a565b5b9050919050565b600260009054906101000a900460ff1681565b6000600260009054906101000a900460ff161561040b5761040a7f114e74f6ea3bd819998f78687bfcb11b140da08e9b7d222fa9c1f1ba1f2aa122610405610bf4565b610bfc565b5b6000821415610446576040517f3d19241d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614156104ac576040517ffbfc7a9100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b828410156104e6576040517ff3c03a5100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b428711158061050357506312cc0300426105009190611b08565b87115b1561053a576040517fc7a682c800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b601260ff168673ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b15801561058557600080fd5b505afa158015610599573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105bd9190611b97565b60ff16118061064f5750601260ff168573ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b15801561061257600080fd5b505afa158015610626573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061064a9190611b97565b60ff16115b15610686576040517f61cae3f200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600260019054906101000a900460ff16156106f0576106c57f94a5b40e9ddb843bda953e14636ea28eec9c9e9913064fe7321def93f0bc7d9587610bfc565b6106ef7f94a5b40e9ddb843bda953e14636ea28eec9c9e9913064fe7321def93f0bc7d9586610bfc565b5b6107197f0000000000000000000000000000000000000000000000000000000000000000610c99565b905060018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060006107878386610d6e90919063ffffffff16565b9050600061079e8486610d6e90919063ffffffff16565b90506107b36107ab610bf4565b848989610d8b565b8273ffffffffffffffffffffffffffffffffffffffff1663bd43c5768c8c6107d9610bf4565b8d8d8d89898d6040518a63ffffffff1660e01b815260040161080399989796959493929190611c5b565b600060405180830381600087803b15801561081d57600080fd5b505af1158015610831573d6000803e3d6000fd5b505050508673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff1661086b610bf4565b73ffffffffffffffffffffffffffffffffffffffff167fd7415cfff3ccb7650b975aee1c8b773326925d98ead5ed304114be7b39071558868f8f8f8d8d8d6040516108bc9796959493929190611cf6565b60405180910390a4505098975050505050505050565b6000806000838152602001908152602001600020600101549050919050565b6108fa826108d2565b61090381610e86565b61090d8383610e9a565b505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b61093e610bf4565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146109ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109a290611de5565b60405180910390fd5b6109b58282610f7a565b5050565b7f114e74f6ea3bd819998f78687bfcb11b140da08e9b7d222fa9c1f1ba1f2aa12281565b60016020528060005260406000206000915054906101000a900460ff1681565b6000801b610a0a81610e86565b81600260006101000a81548160ff0219169083151502179055507f5f8390cf689acfdbe3c978ce6b0f2f9644751458e103c2a186ff79f8bec803b482604051610a539190611679565b60405180910390a15050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000801b81565b7f94a5b40e9ddb843bda953e14636ea28eec9c9e9913064fe7321def93f0bc7d9581565b6000801b610b0181610e86565b81600260016101000a81548160ff0219169083151502179055507fbc1e4f61cec5262e13ac35b57a61ef504272de598f5c98a357b21f34fdc4b85482604051610b4a9190611679565b60405180910390a15050565b610b5f826108d2565b610b6881610e86565b610b728383610f7a565b505050565b600260019054906101000a900460ff1681565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b600033905090565b610c068282610a5f565b610c9557610c2b8173ffffffffffffffffffffffffffffffffffffffff16601461105b565b610c398360001c602061105b565b604051602001610c4a929190611ed9565b6040516020818303038152906040526040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c8c9190611f13565b60405180910390fd5b5050565b60006040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528260601b60148201527f5af43d82803e903d91602b57fd5bf3000000000000000000000000000000000060288201526037816000f0915050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610d69576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6090611f81565b60405180910390fd5b919050565b6000610d8383670de0b6b3a764000084611297565b905092915050565b610db88484838573ffffffffffffffffffffffffffffffffffffffff166112bf909392919063ffffffff16565b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231856040518263ffffffff1660e01b8152600401610df3919061196b565b60206040518083038186803b158015610e0b57600080fd5b505afa158015610e1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e439190611fb6565b905080821115610e7f576040517fb2e532de00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050565b610e9781610e92610bf4565b610bfc565b50565b610ea48282610a5f565b610f7657600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550610f1b610bf4565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b610f848282610a5f565b1561105757600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550610ffc610bf4565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b60606000600283600261106e9190611fe3565b6110789190611b08565b67ffffffffffffffff811115611091576110906116af565b5b6040519080825280601f01601f1916602001820160405280156110c35781602001600182028036833780820191505090505b5090507f3000000000000000000000000000000000000000000000000000000000000000816000815181106110fb576110fa61203d565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f78000000000000000000000000000000000000000000000000000000000000008160018151811061115f5761115e61203d565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000600184600261119f9190611fe3565b6111a99190611b08565b90505b6001811115611249577f3031323334353637383961626364656600000000000000000000000000000000600f8616601081106111eb576111ea61203d565b5b1a60f81b8282815181106112025761120161203d565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c9450806112429061206c565b90506111ac565b506000841461128d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611284906120e2565b60405180910390fd5b8091505092915050565b600082840290508284820414841517821515166112b357600080fd5b81810490509392505050565b611342846323b872dd60e01b8585856040516024016112e093929190612102565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050611348565b50505050565b60006113aa826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65648152508573ffffffffffffffffffffffffffffffffffffffff1661140f9092919063ffffffff16565b905060008151111561140a57808060200190518101906113ca919061214e565b611409576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611400906121ed565b60405180910390fd5b5b505050565b606061141e8484600085611427565b90509392505050565b60608247101561146c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114639061227f565b60405180910390fd5b6114758561153b565b6114b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ab906122eb565b60405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516114dd9190612352565b60006040518083038185875af1925050503d806000811461151a576040519150601f19603f3d011682016040523d82523d6000602084013e61151f565b606091505b509150915061152f82828661155e565b92505050949350505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6060831561156e578290506115be565b6000835111156115815782518084602001fd5b816040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115b59190611f13565b60405180910390fd5b9392505050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61160e816115d9565b811461161957600080fd5b50565b60008135905061162b81611605565b92915050565b600060208284031215611647576116466115cf565b5b60006116558482850161161c565b91505092915050565b60008115159050919050565b6116738161165e565b82525050565b600060208201905061168e600083018461166a565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6116e78261169e565b810181811067ffffffffffffffff82111715611706576117056116af565b5b80604052505050565b60006117196115c5565b905061172582826116de565b919050565b600067ffffffffffffffff821115611745576117446116af565b5b61174e8261169e565b9050602081019050919050565b82818337600083830152505050565b600061177d6117788461172a565b61170f565b90508281526020810184848401111561179957611798611699565b5b6117a484828561175b565b509392505050565b600082601f8301126117c1576117c0611694565b5b81356117d184826020860161176a565b91505092915050565b6000819050919050565b6117ed816117da565b81146117f857600080fd5b50565b60008135905061180a816117e4565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061183b82611810565b9050919050565b61184b81611830565b811461185657600080fd5b50565b60008135905061186881611842565b92915050565b600080600080600080600080610100898b03121561188f5761188e6115cf565b5b600089013567ffffffffffffffff8111156118ad576118ac6115d4565b5b6118b98b828c016117ac565b985050602089013567ffffffffffffffff8111156118da576118d96115d4565b5b6118e68b828c016117ac565b97505060406118f78b828c016117fb565b96505060606119088b828c01611859565b95505060806119198b828c01611859565b94505060a061192a8b828c016117fb565b93505060c061193b8b828c016117fb565b92505060e061194c8b828c016117fb565b9150509295985092959890939650565b61196581611830565b82525050565b6000602082019050611980600083018461195c565b92915050565b6000819050919050565b61199981611986565b81146119a457600080fd5b50565b6000813590506119b681611990565b92915050565b6000602082840312156119d2576119d16115cf565b5b60006119e0848285016119a7565b91505092915050565b6119f281611986565b82525050565b6000602082019050611a0d60008301846119e9565b92915050565b60008060408385031215611a2a57611a296115cf565b5b6000611a38858286016119a7565b9250506020611a4985828601611859565b9150509250929050565b600060208284031215611a6957611a686115cf565b5b6000611a7784828501611859565b91505092915050565b611a898161165e565b8114611a9457600080fd5b50565b600081359050611aa681611a80565b92915050565b600060208284031215611ac257611ac16115cf565b5b6000611ad084828501611a97565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611b13826117da565b9150611b1e836117da565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611b5357611b52611ad9565b5b828201905092915050565b600060ff82169050919050565b611b7481611b5e565b8114611b7f57600080fd5b50565b600081519050611b9181611b6b565b92915050565b600060208284031215611bad57611bac6115cf565b5b6000611bbb84828501611b82565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611bfe578082015181840152602081019050611be3565b83811115611c0d576000848401525b50505050565b6000611c1e82611bc4565b611c288185611bcf565b9350611c38818560208601611be0565b611c418161169e565b840191505092915050565b611c55816117da565b82525050565b6000610120820190508181036000830152611c76818c611c13565b90508181036020830152611c8a818b611c13565b9050611c99604083018a61195c565b611ca66060830189611c4c565b611cb3608083018861195c565b611cc060a083018761195c565b611ccd60c0830186611c4c565b611cda60e0830185611c4c565b611ce8610100830184611c4c565b9a9950505050505050505050565b600060e082019050611d0b600083018a61195c565b8181036020830152611d1d8189611c13565b90508181036040830152611d318188611c13565b9050611d406060830187611c4c565b611d4d6080830186611c4c565b611d5a60a0830185611c4c565b611d6760c0830184611c4c565b98975050505050505050565b7f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008201527f20726f6c657320666f722073656c660000000000000000000000000000000000602082015250565b6000611dcf602f83611bcf565b9150611dda82611d73565b604082019050919050565b60006020820190508181036000830152611dfe81611dc2565b9050919050565b600081905092915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000600082015250565b6000611e46601783611e05565b9150611e5182611e10565b601782019050919050565b6000611e6782611bc4565b611e718185611e05565b9350611e81818560208601611be0565b80840191505092915050565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000600082015250565b6000611ec3601183611e05565b9150611ece82611e8d565b601182019050919050565b6000611ee482611e39565b9150611ef08285611e5c565b9150611efb82611eb6565b9150611f078284611e5c565b91508190509392505050565b60006020820190508181036000830152611f2d8184611c13565b905092915050565b7f455243313136373a20637265617465206661696c656400000000000000000000600082015250565b6000611f6b601683611bcf565b9150611f7682611f35565b602082019050919050565b60006020820190508181036000830152611f9a81611f5e565b9050919050565b600081519050611fb0816117e4565b92915050565b600060208284031215611fcc57611fcb6115cf565b5b6000611fda84828501611fa1565b91505092915050565b6000611fee826117da565b9150611ff9836117da565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561203257612031611ad9565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000612077826117da565b9150600082141561208b5761208a611ad9565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b60006120cc602083611bcf565b91506120d782612096565b602082019050919050565b600060208201905081810360008301526120fb816120bf565b9050919050565b6000606082019050612117600083018661195c565b612124602083018561195c565b6121316040830184611c4c565b949350505050565b60008151905061214881611a80565b92915050565b600060208284031215612164576121636115cf565b5b600061217284828501612139565b91505092915050565b7f5361666545524332303a204552433230206f7065726174696f6e20646964206e60008201527f6f74207375636365656400000000000000000000000000000000000000000000602082015250565b60006121d7602a83611bcf565b91506121e28261217b565b604082019050919050565b60006020820190508181036000830152612206816121ca565b9050919050565b7f416464726573733a20696e73756666696369656e742062616c616e636520666f60008201527f722063616c6c0000000000000000000000000000000000000000000000000000602082015250565b6000612269602683611bcf565b91506122748261220d565b604082019050919050565b600060208201905081810360008301526122988161225c565b9050919050565b7f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000600082015250565b60006122d5601d83611bcf565b91506122e08261229f565b602082019050919050565b60006020820190508181036000830152612304816122c8565b9050919050565b600081519050919050565b600081905092915050565b600061232c8261230b565b6123368185612316565b9350612346818560208601611be0565b80840191505092915050565b600061235e8284612321565b91508190509291505056fea26469706673582212204c5361b6e965e18d93ac02bc72ad4929e315b0a70441c55c5b97d53d44a2d5db64736f6c6343000809003360806040523480156200001157600080fd5b50600160c9819055506200002a6200003060201b60201c565b62000217565b6200004260ff6200004560201b60201c565b50565b60008060019054906101000a900460ff1615620000cf5760018260ff1614801562000083575062000081306200014b60201b620022541760201c565b155b620000c5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000bc90620001f5565b60405180910390fd5b6000905062000146565b8160ff1660008054906101000a900460ff1660ff161062000127576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200011e90620001f5565b60405180910390fd5b816000806101000a81548160ff021916908360ff160217905550600190505b919050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b600082825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b6000620001dd602e836200016e565b9150620001ea826200017f565b604082019050919050565b600060208201905081810360008301526200021081620001ce565b9050919050565b61469580620002276000396000f3fe608060405234801561001057600080fd5b50600436106102325760003560e01c8063a457c2d711610130578063bf3c139f116100b8578063dd62ed3e1161007c578063dd62ed3e14610680578063dda633f4146106b0578063e0163453146106e0578063f2fde38b146106fe578063fa2e3dfd1461071a57610232565b8063bf3c139f146105ee578063c290d6911461060c578063c98c05b714610628578063dae2a76c14610646578063db006a751461066457610232565b8063ae8330e4116100ff578063ae8330e41461055e578063b2016bd41461057a578063b4eae1cb14610598578063b8dc491b146105b6578063bd43c576146105d257610232565b8063a457c2d7146104af578063a9059cbb146104df578063ade4db901461050f578063ae4e7fdf1461054057610232565b80634ad4a46e116101be57806379cc67901161018257806379cc67901461041d5780638da5cb5b1461043957806395d89b411461045757806398d38e3514610475578063a3908e1b1461049357610232565b80634ad4a46e146103795780634aec45cf146103a957806351058648146103c557806370a08231146103e3578063715018a61461041357610232565b806323b872dd1161020557806323b872dd146102c15780633013ce29146102f1578063313ce5671461030f578063395093511461032d57806342966c681461035d57610232565b806306fdde0314610237578063095ea7b31461025557806318160ddd14610285578063204f83f9146102a3575b600080fd5b61023f610738565b60405161024c91906132ba565b60405180910390f35b61026f600480360381019061026a9190613384565b6107ca565b60405161027c91906133df565b60405180910390f35b61028d6107ed565b60405161029a9190613409565b60405180910390f35b6102ab6107f7565b6040516102b89190613409565b60405180910390f35b6102db60048036038101906102d69190613424565b6107fd565b6040516102e891906133df565b60405180910390f35b6102f961082c565b6040516103069190613486565b60405180910390f35b610317610852565b60405161032491906134bd565b60405180910390f35b61034760048036038101906103429190613384565b6108f9565b60405161035491906133df565b60405180910390f35b610377600480360381019061037291906134d8565b610930565b005b610393600480360381019061038e91906134d8565b610944565b6040516103a09190613409565b60405180910390f35b6103c360048036038101906103be9190613505565b610962565b005b6103cd610b4f565b6040516103da9190613409565b60405180910390f35b6103fd60048036038101906103f89190613545565b610b8e565b60405161040a9190613409565b60405180910390f35b61041b610bd7565b005b61043760048036038101906104329190613384565b610c5f565b005b610441610c7f565b60405161044e9190613486565b60405180910390f35b61045f610ca9565b60405161046c91906132ba565b60405180910390f35b61047d610d3b565b60405161048a9190613409565b60405180910390f35b6104ad60048036038101906104a891906134d8565b610d4c565b005b6104c960048036038101906104c49190613384565b610f41565b6040516104d691906133df565b60405180910390f35b6104f960048036038101906104f49190613384565b610fb8565b60405161050691906133df565b60405180910390f35b610529600480360381019061052491906134d8565b610fdb565b604051610537929190613572565b60405180910390f35b61054861107c565b60405161055591906133df565b60405180910390f35b61057860048036038101906105739190613545565b611089565b005b61058261127b565b60405161058f9190613486565b60405180910390f35b6105a06112a1565b6040516105ad9190613409565b60405180910390f35b6105d060048036038101906105cb91906135d9565b6112a7565b005b6105ec60048036038101906105e7919061374e565b61177a565b005b6105f66118ea565b6040516106039190613409565b60405180910390f35b610626600480360381019061062191906134d8565b61199c565b005b610630611c32565b60405161063d9190613409565b60405180910390f35b61064e611ce4565b60405161065b9190613409565b60405180910390f35b61067e600480360381019061067991906134d8565b611cfc565b005b61069a60048036038101906106959190613850565b611f9d565b6040516106a79190613409565b60405180910390f35b6106ca60048036038101906106c591906134d8565b612024565b6040516106d79190613409565b60405180910390f35b6106e8612117565b6040516106f59190613409565b60405180910390f35b61071860048036038101906107139190613545565b61211d565b005b610722612215565b60405161072f9190613409565b60405180910390f35b606060688054610747906138bf565b80601f0160208091040260200160405190810160405280929190818152602001828054610773906138bf565b80156107c05780601f10610795576101008083540402835291602001916107c0565b820191906000526020600020905b8154815290600101906020018083116107a357829003601f168201915b5050505050905090565b6000806107d5612277565b90506107e281858561227f565b600191505092915050565b6000606754905090565b60ca5481565b600080610808612277565b905061081585828561244a565b6108208585856124d6565b60019150509392505050565b60cb60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060cb60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b1580156108bc57600080fd5b505afa1580156108d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f4919061391d565b905090565b600080610904612277565b90506109258185856109168589611f9d565b6109209190613979565b61227f565b600191505092915050565b61094161093b612277565b8261275a565b50565b600061095b60ce548361293390919063ffffffff16565b9050919050565b600260c95414156109a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161099f90613a1b565b60405180910390fd5b600260c9819055506109b8612277565b73ffffffffffffffffffffffffffffffffffffffff166109d6610c7f565b73ffffffffffffffffffffffffffffffffffffffff1614610a2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a2390613a87565b60405180910390fd5b610a34610d3b565b821115610a6d576040517f34477cc000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600060cc60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050610abf82848373ffffffffffffffffffffffffffffffffffffffff166129509092919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16610af5612277565b73ffffffffffffffffffffffffffffffffffffffff167f72c0ec8ac6a9cf23e2b433b9bd4fac52c031020dd96d73afeb1bb42530cb070286604051610b3a9190613409565b60405180910390a450600160c9819055505050565b600080610b5a6107ed565b90506000610b666118ea565b9050808210610b7a57600092505050610b8b565b8181610b869190613aa7565b925050505b90565b6000606560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610bdf612277565b73ffffffffffffffffffffffffffffffffffffffff16610bfd610c7f565b73ffffffffffffffffffffffffffffffffffffffff1614610c53576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c4a90613a87565b60405180910390fd5b610c5d60006129d6565b565b610c7182610c6b612277565b8361244a565b610c7b828261275a565b5050565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060698054610cb8906138bf565b80601f0160208091040260200160405190810160405280929190818152602001828054610ce4906138bf565b8015610d315780601f10610d0657610100808354040283529160200191610d31565b820191906000526020600020905b815481529060010190602001808311610d1457829003601f168201915b5050505050905090565b6000610d476000612024565b905090565b600260c9541415610d92576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8990613a1b565b60405180910390fd5b600260c981905550610da261107c565b15610dd9576040517fc08a164300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000811415610e14576040517f1f2a200500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610e1f82610944565b90506000811415610e5c576040517f1f2a200500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610e6d610e67612277565b8361275a565b600060cc60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050610ec6610e9f612277565b838373ffffffffffffffffffffffffffffffffffffffff166129509092919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff16610ee5612277565b73ffffffffffffffffffffffffffffffffffffffff167f01d3d3cdfee1a8030f8d097275757698837ce4ff047ee90496180cf7ee35432a8585604051610f2c929190613572565b60405180910390a35050600160c98190555050565b600080610f4c612277565b90506000610f5a8286611f9d565b905083811015610f9f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9690613b4d565b60405180910390fd5b610fac828686840361227f565b60019250505092915050565b600080610fc3612277565b9050610fd08185856124d6565b600191505092915050565b6000806000610fe86107ed565b90506000811415611000576000809250925050611077565b60008061100b612215565b1461101d576110186118ea565b61101f565b815b9050611036818387612a9c9092919063ffffffff16565b9350600081836110469190613aa7565b9050611071611060828589612a9c9092919063ffffffff16565b60cd5461293390919063ffffffff16565b93505050505b915091565b600060ca54421015905090565b600260c95414156110cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110c690613a1b565b60405180910390fd5b600260c9819055506110df612277565b73ffffffffffffffffffffffffffffffffffffffff166110fd610c7f565b73ffffffffffffffffffffffffffffffffffffffff1614611153576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161114a90613a87565b60405180910390fd5b600061115d610b4f565b905060008111611199576040517fbfad826a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600060cb60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506111eb83838373ffffffffffffffffffffffffffffffffffffffff166129509092919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16611221612277565b73ffffffffffffffffffffffffffffffffffffffff167f44c5c36173f67d54ee813f53c9028b16a230be7fcf890d3a2364ca286616b680856040516112669190613409565b60405180910390a45050600160c98190555050565b60cc60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60cd5481565b6112af612277565b73ffffffffffffffffffffffffffffffffffffffff166112cd610c7f565b73ffffffffffffffffffffffffffffffffffffffff1614611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131a90613a87565b60405180910390fd5b600060cb60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016113809190613486565b60206040518083038186803b15801561139857600080fd5b505afa1580156113ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113d09190613b82565b9050600060cc60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b815260040161142f9190613486565b60206040518083038186803b15801561144757600080fd5b505afa15801561145b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061147f9190613b82565b905060008473ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016114bc9190613486565b60206040518083038186803b1580156114d457600080fd5b505afa1580156114e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061150c9190613b82565b90506000811415611549576040517f1f2a200500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61157484828773ffffffffffffffffffffffffffffffffffffffff166129509092919063ffffffff16565b600060cb60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016115d19190613486565b60206040518083038186803b1580156115e957600080fd5b505afa1580156115fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116219190613b82565b9050600060cc60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016116809190613486565b60206040518083038186803b15801561169857600080fd5b505afa1580156116ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116d09190613b82565b905081851415806116e15750808414155b15611718576040517f2a09522300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8573ffffffffffffffffffffffffffffffffffffffff167fe2d397ee0297023fa7399c70764ac17b140a7d16fe2f7cfdc11b5b5e32ef1acb611758612277565b898660405161176993929190613c0e565b60405180910390a250505050505050565b60006117866001612ac4565b905080156117aa576001600060016101000a81548160ff0219169083151502179055505b81826117b69190613c45565b5083826117c39190613c45565b5082826117d09190613c45565b506117db8a8a612bb4565b6117e4886129d6565b8660ca819055508560cb60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508460cc60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508360cd819055508260ce819055506118858883612c11565b80156118de5760008060016101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860016040516118d59190613cda565b60405180910390a15b50505050505050505050565b600060cb60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016119479190613486565b60206040518083038186803b15801561195f57600080fd5b505afa158015611973573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119979190613b82565b905090565b60006119a6612215565b14156119de576040517f2b64525500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000811415611a19576040517f1f2a200500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600060cb60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401611a769190613486565b60206040518083038186803b158015611a8e57600080fd5b505afa158015611aa2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ac69190613b82565b9050611b1e611ad3612277565b308460cb60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16612d72909392919063ffffffff16565b600060cb60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401611b7b9190613486565b60206040518083038186803b158015611b9357600080fd5b505afa158015611ba7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bcb9190613b82565b9050611bd5612277565b73ffffffffffffffffffffffffffffffffffffffff167fd4f43975feb89f48dd30cabbb32011045be187d1e11c8ea9faa43efc352825198383611c189190613aa7565b604051611c259190613409565b60405180910390a2505050565b600060cc60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401611c8f9190613486565b60206040518083038186803b158015611ca757600080fd5b505afa158015611cbb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cdf9190613b82565b905090565b600062093a8060ca54611cf79190613979565b905090565b600260c9541415611d42576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d3990613a1b565b60405180910390fd5b600260c981905550611d52612dfb565b80611d6457506000611d62612215565b145b15611f60576000811415611da4576040517f1f2a200500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080611db083610fdb565b91509150600082148015611dc45750600081145b15611dfb576040517f1f2a200500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611e0c611e06612277565b8461275a565b600060cb60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600060cc60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905060008414611e9557611e94611e6d612277565b858473ffffffffffffffffffffffffffffffffffffffff166129509092919063ffffffff16565b5b60008314611ed057611ecf611ea8612277565b848373ffffffffffffffffffffffffffffffffffffffff166129509092919063ffffffff16565b5b8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16611f06612277565b73ffffffffffffffffffffffffffffffffffffffff167ff7e4278e8805ee20185344a7349aaa91cdcf5f316fbf66894f614a33debd0679888888604051611f4f93929190613cf5565b60405180910390a450505050611f92565b6040517fdc0d4c4900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600160c98190555050565b6000606660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600080826120306118ea565b61203a9190613979565b905060006120466107ed565b90506000818310156120755761207260cd5484846120649190613aa7565b612e0d90919063ffffffff16565b90505b600061208c60ce5484612e0d90919063ffffffff16565b9050600080612099612215565b14156120bb576120a761107c565b6120b157816120b4565b60005b90506120db565b6120c361107c565b6120d6576120d18284612e2a565b6120d8565b825b90505b60006120e5611c32565b90508082106120fd5760009650505050505050612112565b81816121099190613aa7565b96505050505050505b919050565b60ce5481565b612125612277565b73ffffffffffffffffffffffffffffffffffffffff16612143610c7f565b73ffffffffffffffffffffffffffffffffffffffff1614612199576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161219090613a87565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612209576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161220090613d9e565b60405180910390fd5b612212816129d6565b50565b6000806122206107ed565b9050600061222c6118ea565b905080821161224057600092505050612251565b808261224c9190613aa7565b925050505b90565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156122ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122e690613e30565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561235f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161235690613ec2565b60405180910390fd5b80606660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161243d9190613409565b60405180910390a3505050565b60006124568484611f9d565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146124d057818110156124c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124b990613f2e565b60405180910390fd5b6124cf848484840361227f565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612546576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161253d90613fc0565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156125b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125ad90614052565b60405180910390fd5b6125c1838383612e44565b6000606560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015612648576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161263f906140e4565b60405180910390fd5b818103606560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081606560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546126dd9190613979565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516127419190613409565b60405180910390a3612754848484612e49565b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156127ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127c190614176565b60405180910390fd5b6127d682600083612e44565b6000606560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508181101561285d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161285490614208565b60405180910390fd5b818103606560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081606760008282546128b59190613aa7565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161291a9190613409565b60405180910390a361292e83600084612e49565b505050565b60006129488383670de0b6b3a7640000612a9c565b905092915050565b6129d18363a9059cbb60e01b848460405160240161296f929190614228565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050612e4e565b505050565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081603360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008284029050828482041484151782151516612ab857600080fd5b81810490509392505050565b60008060019054906101000a900460ff1615612b3b5760018260ff16148015612af35750612af130612254565b155b612b32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b29906142c3565b60405180910390fd5b60009050612baf565b8160ff1660008054906101000a900460ff1660ff1610612b90576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b87906142c3565b60405180910390fd5b816000806101000a81548160ff021916908360ff160217905550600190505b919050565b600060019054906101000a900460ff16612c03576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612bfa90614355565b60405180910390fd5b612c0d8282612f15565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612c81576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c78906143c1565b60405180910390fd5b612c8d60008383612e44565b8060676000828254612c9f9190613979565b9250508190555080606560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612cf59190613979565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051612d5a9190613409565b60405180910390a3612d6e60008383612e49565b5050565b612df5846323b872dd60e01b858585604051602401612d93939291906143e1565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050612e4e565b50505050565b6000612e05611ce4565b421015905090565b6000612e228383670de0b6b3a7640000612f96565b905092915050565b600081831015612e3a5781612e3c565b825b905092915050565b505050565b505050565b6000612eb0826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65648152508573ffffffffffffffffffffffffffffffffffffffff16612fc89092919063ffffffff16565b9050600081511115612f105780806020019051810190612ed09190614444565b612f0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f06906144e3565b60405180910390fd5b5b505050565b600060019054906101000a900460ff16612f64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f5b90614355565b60405180910390fd5b8160689080519060200190612f7a92919061317e565b508060699080519060200190612f9192919061317e565b505050565b60008284029050828482041484151782151516612fb257600080fd5b6001826001830304018115150290509392505050565b6060612fd78484600085612fe0565b90509392505050565b606082471015613025576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161301c90614575565b60405180910390fd5b61302e856130f4565b61306d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613064906145e1565b60405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516130969190614648565b60006040518083038185875af1925050503d80600081146130d3576040519150601f19603f3d011682016040523d82523d6000602084013e6130d8565b606091505b50915091506130e8828286613117565b92505050949350505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6060831561312757829050613177565b60008351111561313a5782518084602001fd5b816040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161316e91906132ba565b60405180910390fd5b9392505050565b82805461318a906138bf565b90600052602060002090601f0160209004810192826131ac57600085556131f3565b82601f106131c557805160ff19168380011785556131f3565b828001600101855582156131f3579182015b828111156131f25782518255916020019190600101906131d7565b5b5090506132009190613204565b5090565b5b8082111561321d576000816000905550600101613205565b5090565b600081519050919050565b600082825260208201905092915050565b60005b8381101561325b578082015181840152602081019050613240565b8381111561326a576000848401525b50505050565b6000601f19601f8301169050919050565b600061328c82613221565b613296818561322c565b93506132a681856020860161323d565b6132af81613270565b840191505092915050565b600060208201905081810360008301526132d48184613281565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061331b826132f0565b9050919050565b61332b81613310565b811461333657600080fd5b50565b60008135905061334881613322565b92915050565b6000819050919050565b6133618161334e565b811461336c57600080fd5b50565b60008135905061337e81613358565b92915050565b6000806040838503121561339b5761339a6132e6565b5b60006133a985828601613339565b92505060206133ba8582860161336f565b9150509250929050565b60008115159050919050565b6133d9816133c4565b82525050565b60006020820190506133f460008301846133d0565b92915050565b6134038161334e565b82525050565b600060208201905061341e60008301846133fa565b92915050565b60008060006060848603121561343d5761343c6132e6565b5b600061344b86828701613339565b935050602061345c86828701613339565b925050604061346d8682870161336f565b9150509250925092565b61348081613310565b82525050565b600060208201905061349b6000830184613477565b92915050565b600060ff82169050919050565b6134b7816134a1565b82525050565b60006020820190506134d260008301846134ae565b92915050565b6000602082840312156134ee576134ed6132e6565b5b60006134fc8482850161336f565b91505092915050565b6000806040838503121561351c5761351b6132e6565b5b600061352a8582860161336f565b925050602061353b85828601613339565b9150509250929050565b60006020828403121561355b5761355a6132e6565b5b600061356984828501613339565b91505092915050565b600060408201905061358760008301856133fa565b61359460208301846133fa565b9392505050565b60006135a682613310565b9050919050565b6135b68161359b565b81146135c157600080fd5b50565b6000813590506135d3816135ad565b92915050565b600080604083850312156135f0576135ef6132e6565b5b60006135fe858286016135c4565b925050602061360f85828601613339565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61365b82613270565b810181811067ffffffffffffffff8211171561367a57613679613623565b5b80604052505050565b600061368d6132dc565b90506136998282613652565b919050565b600067ffffffffffffffff8211156136b9576136b8613623565b5b6136c282613270565b9050602081019050919050565b82818337600083830152505050565b60006136f16136ec8461369e565b613683565b90508281526020810184848401111561370d5761370c61361e565b5b6137188482856136cf565b509392505050565b600082601f83011261373557613734613619565b5b81356137458482602086016136de565b91505092915050565b60008060008060008060008060006101208a8c031215613771576137706132e6565b5b60008a013567ffffffffffffffff81111561378f5761378e6132eb565b5b61379b8c828d01613720565b99505060208a013567ffffffffffffffff8111156137bc576137bb6132eb565b5b6137c88c828d01613720565b98505060406137d98c828d01613339565b97505060606137ea8c828d0161336f565b96505060806137fb8c828d01613339565b95505060a061380c8c828d01613339565b94505060c061381d8c828d0161336f565b93505060e061382e8c828d0161336f565b9250506101006138408c828d0161336f565b9150509295985092959850929598565b60008060408385031215613867576138666132e6565b5b600061387585828601613339565b925050602061388685828601613339565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806138d757607f821691505b602082108114156138eb576138ea613890565b5b50919050565b6138fa816134a1565b811461390557600080fd5b50565b600081519050613917816138f1565b92915050565b600060208284031215613933576139326132e6565b5b600061394184828501613908565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006139848261334e565b915061398f8361334e565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156139c4576139c361394a565b5b828201905092915050565b7f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00600082015250565b6000613a05601f8361322c565b9150613a10826139cf565b602082019050919050565b60006020820190508181036000830152613a34816139f8565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000613a7160208361322c565b9150613a7c82613a3b565b602082019050919050565b60006020820190508181036000830152613aa081613a64565b9050919050565b6000613ab28261334e565b9150613abd8361334e565b925082821015613ad057613acf61394a565b5b828203905092915050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000613b3760258361322c565b9150613b4282613adb565b604082019050919050565b60006020820190508181036000830152613b6681613b2a565b9050919050565b600081519050613b7c81613358565b92915050565b600060208284031215613b9857613b976132e6565b5b6000613ba684828501613b6d565b91505092915050565b6000819050919050565b6000613bd4613bcf613bca846132f0565b613baf565b6132f0565b9050919050565b6000613be682613bb9565b9050919050565b6000613bf882613bdb565b9050919050565b613c0881613bed565b82525050565b6000606082019050613c236000830186613477565b613c306020830185613bff565b613c3d60408301846133fa565b949350505050565b6000613c508261334e565b9150613c5b8361334e565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613c9457613c9361394a565b5b828202905092915050565b6000819050919050565b6000613cc4613cbf613cba84613c9f565b613baf565b6134a1565b9050919050565b613cd481613ca9565b82525050565b6000602082019050613cef6000830184613ccb565b92915050565b6000606082019050613d0a60008301866133fa565b613d1760208301856133fa565b613d2460408301846133fa565b949350505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000613d8860268361322c565b9150613d9382613d2c565b604082019050919050565b60006020820190508181036000830152613db781613d7b565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000613e1a60248361322c565b9150613e2582613dbe565b604082019050919050565b60006020820190508181036000830152613e4981613e0d565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000613eac60228361322c565b9150613eb782613e50565b604082019050919050565b60006020820190508181036000830152613edb81613e9f565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000613f18601d8361322c565b9150613f2382613ee2565b602082019050919050565b60006020820190508181036000830152613f4781613f0b565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000613faa60258361322c565b9150613fb582613f4e565b604082019050919050565b60006020820190508181036000830152613fd981613f9d565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061403c60238361322c565b915061404782613fe0565b604082019050919050565b6000602082019050818103600083015261406b8161402f565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b60006140ce60268361322c565b91506140d982614072565b604082019050919050565b600060208201905081810360008301526140fd816140c1565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b600061416060218361322c565b915061416b82614104565b604082019050919050565b6000602082019050818103600083015261418f81614153565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b60006141f260228361322c565b91506141fd82614196565b604082019050919050565b60006020820190508181036000830152614221816141e5565b9050919050565b600060408201905061423d6000830185613477565b61424a60208301846133fa565b9392505050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b60006142ad602e8361322c565b91506142b882614251565b604082019050919050565b600060208201905081810360008301526142dc816142a0565b9050919050565b7f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960008201527f6e697469616c697a696e67000000000000000000000000000000000000000000602082015250565b600061433f602b8361322c565b915061434a826142e3565b604082019050919050565b6000602082019050818103600083015261436e81614332565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b60006143ab601f8361322c565b91506143b682614375565b602082019050919050565b600060208201905081810360008301526143da8161439e565b9050919050565b60006060820190506143f66000830186613477565b6144036020830185613477565b61441060408301846133fa565b949350505050565b614421816133c4565b811461442c57600080fd5b50565b60008151905061443e81614418565b92915050565b60006020828403121561445a576144596132e6565b5b60006144688482850161442f565b91505092915050565b7f5361666545524332303a204552433230206f7065726174696f6e20646964206e60008201527f6f74207375636365656400000000000000000000000000000000000000000000602082015250565b60006144cd602a8361322c565b91506144d882614471565b604082019050919050565b600060208201905081810360008301526144fc816144c0565b9050919050565b7f416464726573733a20696e73756666696369656e742062616c616e636520666f60008201527f722063616c6c0000000000000000000000000000000000000000000000000000602082015250565b600061455f60268361322c565b915061456a82614503565b604082019050919050565b6000602082019050818103600083015261458e81614552565b9050919050565b7f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000600082015250565b60006145cb601d8361322c565b91506145d682614595565b602082019050919050565b600060208201905081810360008301526145fa816145be565b9050919050565b600081519050919050565b600081905092915050565b600061462282614601565b61462c818561460c565b935061463c81856020860161323d565b80840191505092915050565b60006146548284614617565b91508190509291505056fea2646970667358221220eff88f0c98e8deed012d5387aca6888c6b4a9771ba18e6fcba35a1037475830c64736f6c63430008090033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101005760003560e01c806386f1e2a611610097578063c394880411610066578063c3948804146102c1578063cca77808146102df578063d547741f146102fb578063ed3b4a1f1461031757610100565b806386f1e2a6146102275780638f4899471461025757806391d1485414610273578063a217fddf146102a357610100565b80632f2ff15d116100d35780632f2ff15d146101b35780632f3a3d5d146101cf57806336568abe146101ed57806382aefa241461020957610100565b806301ffc9a7146101055780630802277514610135578063086428f714610153578063248a9ca314610183575b600080fd5b61011f600480360381019061011a9190611631565b610335565b60405161012c9190611679565b60405180910390f35b61013d6103af565b60405161014a9190611679565b60405180910390f35b61016d6004803603810190610168919061186e565b6103c2565b60405161017a919061196b565b60405180910390f35b61019d600480360381019061019891906119bc565b6108d2565b6040516101aa91906119f8565b60405180910390f35b6101cd60048036038101906101c89190611a13565b6108f1565b005b6101d7610912565b6040516101e4919061196b565b60405180910390f35b61020760048036038101906102029190611a13565b610936565b005b6102116109b9565b60405161021e91906119f8565b60405180910390f35b610241600480360381019061023c9190611a53565b6109dd565b60405161024e9190611679565b60405180910390f35b610271600480360381019061026c9190611aac565b6109fd565b005b61028d60048036038101906102889190611a13565b610a5f565b60405161029a9190611679565b60405180910390f35b6102ab610ac9565b6040516102b891906119f8565b60405180910390f35b6102c9610ad0565b6040516102d691906119f8565b60405180910390f35b6102f960048036038101906102f49190611aac565b610af4565b005b61031560048036038101906103109190611a13565b610b56565b005b61031f610b77565b60405161032c9190611679565b60405180910390f35b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806103a857506103a782610b8a565b5b9050919050565b600260009054906101000a900460ff1681565b6000600260009054906101000a900460ff161561040b5761040a7f114e74f6ea3bd819998f78687bfcb11b140da08e9b7d222fa9c1f1ba1f2aa122610405610bf4565b610bfc565b5b6000821415610446576040517f3d19241d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614156104ac576040517ffbfc7a9100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b828410156104e6576040517ff3c03a5100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b428711158061050357506312cc0300426105009190611b08565b87115b1561053a576040517fc7a682c800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b601260ff168673ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b15801561058557600080fd5b505afa158015610599573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105bd9190611b97565b60ff16118061064f5750601260ff168573ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b15801561061257600080fd5b505afa158015610626573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061064a9190611b97565b60ff16115b15610686576040517f61cae3f200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600260019054906101000a900460ff16156106f0576106c57f94a5b40e9ddb843bda953e14636ea28eec9c9e9913064fe7321def93f0bc7d9587610bfc565b6106ef7f94a5b40e9ddb843bda953e14636ea28eec9c9e9913064fe7321def93f0bc7d9586610bfc565b5b6107197f0000000000000000000000006285d6b0ccac4ecaf4f7a2738fec03330809b162610c99565b905060018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060006107878386610d6e90919063ffffffff16565b9050600061079e8486610d6e90919063ffffffff16565b90506107b36107ab610bf4565b848989610d8b565b8273ffffffffffffffffffffffffffffffffffffffff1663bd43c5768c8c6107d9610bf4565b8d8d8d89898d6040518a63ffffffff1660e01b815260040161080399989796959493929190611c5b565b600060405180830381600087803b15801561081d57600080fd5b505af1158015610831573d6000803e3d6000fd5b505050508673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff1661086b610bf4565b73ffffffffffffffffffffffffffffffffffffffff167fd7415cfff3ccb7650b975aee1c8b773326925d98ead5ed304114be7b39071558868f8f8f8d8d8d6040516108bc9796959493929190611cf6565b60405180910390a4505098975050505050505050565b6000806000838152602001908152602001600020600101549050919050565b6108fa826108d2565b61090381610e86565b61090d8383610e9a565b505050565b7f0000000000000000000000006285d6b0ccac4ecaf4f7a2738fec03330809b16281565b61093e610bf4565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146109ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109a290611de5565b60405180910390fd5b6109b58282610f7a565b5050565b7f114e74f6ea3bd819998f78687bfcb11b140da08e9b7d222fa9c1f1ba1f2aa12281565b60016020528060005260406000206000915054906101000a900460ff1681565b6000801b610a0a81610e86565b81600260006101000a81548160ff0219169083151502179055507f5f8390cf689acfdbe3c978ce6b0f2f9644751458e103c2a186ff79f8bec803b482604051610a539190611679565b60405180910390a15050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000801b81565b7f94a5b40e9ddb843bda953e14636ea28eec9c9e9913064fe7321def93f0bc7d9581565b6000801b610b0181610e86565b81600260016101000a81548160ff0219169083151502179055507fbc1e4f61cec5262e13ac35b57a61ef504272de598f5c98a357b21f34fdc4b85482604051610b4a9190611679565b60405180910390a15050565b610b5f826108d2565b610b6881610e86565b610b728383610f7a565b505050565b600260019054906101000a900460ff1681565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b600033905090565b610c068282610a5f565b610c9557610c2b8173ffffffffffffffffffffffffffffffffffffffff16601461105b565b610c398360001c602061105b565b604051602001610c4a929190611ed9565b6040516020818303038152906040526040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c8c9190611f13565b60405180910390fd5b5050565b60006040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528260601b60148201527f5af43d82803e903d91602b57fd5bf3000000000000000000000000000000000060288201526037816000f0915050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610d69576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6090611f81565b60405180910390fd5b919050565b6000610d8383670de0b6b3a764000084611297565b905092915050565b610db88484838573ffffffffffffffffffffffffffffffffffffffff166112bf909392919063ffffffff16565b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231856040518263ffffffff1660e01b8152600401610df3919061196b565b60206040518083038186803b158015610e0b57600080fd5b505afa158015610e1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e439190611fb6565b905080821115610e7f576040517fb2e532de00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050565b610e9781610e92610bf4565b610bfc565b50565b610ea48282610a5f565b610f7657600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550610f1b610bf4565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b610f848282610a5f565b1561105757600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550610ffc610bf4565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b60606000600283600261106e9190611fe3565b6110789190611b08565b67ffffffffffffffff811115611091576110906116af565b5b6040519080825280601f01601f1916602001820160405280156110c35781602001600182028036833780820191505090505b5090507f3000000000000000000000000000000000000000000000000000000000000000816000815181106110fb576110fa61203d565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f78000000000000000000000000000000000000000000000000000000000000008160018151811061115f5761115e61203d565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000600184600261119f9190611fe3565b6111a99190611b08565b90505b6001811115611249577f3031323334353637383961626364656600000000000000000000000000000000600f8616601081106111eb576111ea61203d565b5b1a60f81b8282815181106112025761120161203d565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c9450806112429061206c565b90506111ac565b506000841461128d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611284906120e2565b60405180910390fd5b8091505092915050565b600082840290508284820414841517821515166112b357600080fd5b81810490509392505050565b611342846323b872dd60e01b8585856040516024016112e093929190612102565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050611348565b50505050565b60006113aa826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65648152508573ffffffffffffffffffffffffffffffffffffffff1661140f9092919063ffffffff16565b905060008151111561140a57808060200190518101906113ca919061214e565b611409576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611400906121ed565b60405180910390fd5b5b505050565b606061141e8484600085611427565b90509392505050565b60608247101561146c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114639061227f565b60405180910390fd5b6114758561153b565b6114b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ab906122eb565b60405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516114dd9190612352565b60006040518083038185875af1925050503d806000811461151a576040519150601f19603f3d011682016040523d82523d6000602084013e61151f565b606091505b509150915061152f82828661155e565b92505050949350505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6060831561156e578290506115be565b6000835111156115815782518084602001fd5b816040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115b59190611f13565b60405180910390fd5b9392505050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61160e816115d9565b811461161957600080fd5b50565b60008135905061162b81611605565b92915050565b600060208284031215611647576116466115cf565b5b60006116558482850161161c565b91505092915050565b60008115159050919050565b6116738161165e565b82525050565b600060208201905061168e600083018461166a565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6116e78261169e565b810181811067ffffffffffffffff82111715611706576117056116af565b5b80604052505050565b60006117196115c5565b905061172582826116de565b919050565b600067ffffffffffffffff821115611745576117446116af565b5b61174e8261169e565b9050602081019050919050565b82818337600083830152505050565b600061177d6117788461172a565b61170f565b90508281526020810184848401111561179957611798611699565b5b6117a484828561175b565b509392505050565b600082601f8301126117c1576117c0611694565b5b81356117d184826020860161176a565b91505092915050565b6000819050919050565b6117ed816117da565b81146117f857600080fd5b50565b60008135905061180a816117e4565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061183b82611810565b9050919050565b61184b81611830565b811461185657600080fd5b50565b60008135905061186881611842565b92915050565b600080600080600080600080610100898b03121561188f5761188e6115cf565b5b600089013567ffffffffffffffff8111156118ad576118ac6115d4565b5b6118b98b828c016117ac565b985050602089013567ffffffffffffffff8111156118da576118d96115d4565b5b6118e68b828c016117ac565b97505060406118f78b828c016117fb565b96505060606119088b828c01611859565b95505060806119198b828c01611859565b94505060a061192a8b828c016117fb565b93505060c061193b8b828c016117fb565b92505060e061194c8b828c016117fb565b9150509295985092959890939650565b61196581611830565b82525050565b6000602082019050611980600083018461195c565b92915050565b6000819050919050565b61199981611986565b81146119a457600080fd5b50565b6000813590506119b681611990565b92915050565b6000602082840312156119d2576119d16115cf565b5b60006119e0848285016119a7565b91505092915050565b6119f281611986565b82525050565b6000602082019050611a0d60008301846119e9565b92915050565b60008060408385031215611a2a57611a296115cf565b5b6000611a38858286016119a7565b9250506020611a4985828601611859565b9150509250929050565b600060208284031215611a6957611a686115cf565b5b6000611a7784828501611859565b91505092915050565b611a898161165e565b8114611a9457600080fd5b50565b600081359050611aa681611a80565b92915050565b600060208284031215611ac257611ac16115cf565b5b6000611ad084828501611a97565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611b13826117da565b9150611b1e836117da565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611b5357611b52611ad9565b5b828201905092915050565b600060ff82169050919050565b611b7481611b5e565b8114611b7f57600080fd5b50565b600081519050611b9181611b6b565b92915050565b600060208284031215611bad57611bac6115cf565b5b6000611bbb84828501611b82565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611bfe578082015181840152602081019050611be3565b83811115611c0d576000848401525b50505050565b6000611c1e82611bc4565b611c288185611bcf565b9350611c38818560208601611be0565b611c418161169e565b840191505092915050565b611c55816117da565b82525050565b6000610120820190508181036000830152611c76818c611c13565b90508181036020830152611c8a818b611c13565b9050611c99604083018a61195c565b611ca66060830189611c4c565b611cb3608083018861195c565b611cc060a083018761195c565b611ccd60c0830186611c4c565b611cda60e0830185611c4c565b611ce8610100830184611c4c565b9a9950505050505050505050565b600060e082019050611d0b600083018a61195c565b8181036020830152611d1d8189611c13565b90508181036040830152611d318188611c13565b9050611d406060830187611c4c565b611d4d6080830186611c4c565b611d5a60a0830185611c4c565b611d6760c0830184611c4c565b98975050505050505050565b7f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008201527f20726f6c657320666f722073656c660000000000000000000000000000000000602082015250565b6000611dcf602f83611bcf565b9150611dda82611d73565b604082019050919050565b60006020820190508181036000830152611dfe81611dc2565b9050919050565b600081905092915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000600082015250565b6000611e46601783611e05565b9150611e5182611e10565b601782019050919050565b6000611e6782611bc4565b611e718185611e05565b9350611e81818560208601611be0565b80840191505092915050565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000600082015250565b6000611ec3601183611e05565b9150611ece82611e8d565b601182019050919050565b6000611ee482611e39565b9150611ef08285611e5c565b9150611efb82611eb6565b9150611f078284611e5c565b91508190509392505050565b60006020820190508181036000830152611f2d8184611c13565b905092915050565b7f455243313136373a20637265617465206661696c656400000000000000000000600082015250565b6000611f6b601683611bcf565b9150611f7682611f35565b602082019050919050565b60006020820190508181036000830152611f9a81611f5e565b9050919050565b600081519050611fb0816117e4565b92915050565b600060208284031215611fcc57611fcb6115cf565b5b6000611fda84828501611fa1565b91505092915050565b6000611fee826117da565b9150611ff9836117da565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561203257612031611ad9565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000612077826117da565b9150600082141561208b5761208a611ad9565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b60006120cc602083611bcf565b91506120d782612096565b602082019050919050565b600060208201905081810360008301526120fb816120bf565b9050919050565b6000606082019050612117600083018661195c565b612124602083018561195c565b6121316040830184611c4c565b949350505050565b60008151905061214881611a80565b92915050565b600060208284031215612164576121636115cf565b5b600061217284828501612139565b91505092915050565b7f5361666545524332303a204552433230206f7065726174696f6e20646964206e60008201527f6f74207375636365656400000000000000000000000000000000000000000000602082015250565b60006121d7602a83611bcf565b91506121e28261217b565b604082019050919050565b60006020820190508181036000830152612206816121ca565b9050919050565b7f416464726573733a20696e73756666696369656e742062616c616e636520666f60008201527f722063616c6c0000000000000000000000000000000000000000000000000000602082015250565b6000612269602683611bcf565b91506122748261220d565b604082019050919050565b600060208201905081810360008301526122988161225c565b9050919050565b7f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000600082015250565b60006122d5601d83611bcf565b91506122e08261229f565b602082019050919050565b60006020820190508181036000830152612304816122c8565b9050919050565b600081519050919050565b600081905092915050565b600061232c8261230b565b6123368185612316565b9350612346818560208601611be0565b80840191505092915050565b600061235e8284612321565b91508190509291505056fea26469706673582212204c5361b6e965e18d93ac02bc72ad4929e315b0a70441c55c5b97d53d44a2d5db64736f6c63430008090033
🤖 Code Reader
Generate instant answers for your smart contract questions using AI Models. Read more.
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 30 Chains
Tokens
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.


