Loading
[ { "inputs": [], "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": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "account", "type": "address" } ], "name": "Paused", "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": [ { "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": "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": "address", "name": "token", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "flashFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "contract IERC3156FlashBorrower", "name": "receiver", "type": "address" }, { "internalType": "address", "name": "token", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "flashLoan", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "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": "token", "type": "address" } ], "name": "maxFlashLoan", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "mint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "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": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "unpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
60806040523480156200001157600080fd5b506040518060400160405280601b81526020017f416666696e6974792046696e616e6369616c20536572766963657300000000008152506040518060400160405280600381526020017f414653000000000000000000000000000000000000000000000000000000000081525081600390805190602001906200009692919062000413565b508060049080519060200190620000af92919062000413565b5050506000600560006101000a81548160ff021916908315150217905550620000ed620000e16200013260201b60201c565b6200013a60201b60201c565b6200012c33620001026200020060201b60201c565b600a6200011091906200064c565b620f424062000120919062000789565b6200020960201b60201c565b620008f4565b600033905090565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60006012905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156200027c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002739062000544565b60405180910390fd5b62000290600083836200038260201b60201c565b8060026000828254620002a4919062000594565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254620002fb919062000594565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000362919062000566565b60405180910390a36200037e60008383620003f260201b60201c565b5050565b62000392620003f760201b60201c565b15620003d5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620003cc9062000522565b60405180910390fd5b620003ed8383836200040e60201b62000fcc1760201c565b505050565b505050565b6000600560009054906101000a900460ff16905090565b505050565b828054620004219062000801565b90600052602060002090601f01602090048101928262000445576000855562000491565b82601f106200046057805160ff191683800117855562000491565b8280016001018555821562000491579182015b828111156200049057825182559160200191906001019062000473565b5b509050620004a09190620004a4565b5090565b5b80821115620004bf576000816000905550600101620004a5565b5090565b6000620004d260108362000583565b9150620004df82620008a2565b602082019050919050565b6000620004f9601f8362000583565b91506200050682620008cb565b602082019050919050565b6200051c81620007ea565b82525050565b600060208201905081810360008301526200053d81620004c3565b9050919050565b600060208201905081810360008301526200055f81620004ea565b9050919050565b60006020820190506200057d600083018462000511565b92915050565b600082825260208201905092915050565b6000620005a182620007ea565b9150620005ae83620007ea565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115620005e657620005e562000837565b5b828201905092915050565b6000808291508390505b600185111562000643578086048111156200061b576200061a62000837565b5b60018516156200062b5780820291505b80810290506200063b8562000895565b9450620005fb565b94509492505050565b60006200065982620007ea565b91506200066683620007f4565b9250620006957fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846200069d565b905092915050565b600082620006af576001905062000782565b81620006bf576000905062000782565b8160018114620006d85760028114620006e35762000719565b600191505062000782565b60ff841115620006f857620006f762000837565b5b8360020a91508482111562000712576200071162000837565b5b5062000782565b5060208310610133831016604e8410600b8410161715620007535782820a9050838111156200074d576200074c62000837565b5b62000782565b620007628484846001620005f1565b925090508184048111156200077c576200077b62000837565b5b81810290505b9392505050565b60006200079682620007ea565b9150620007a383620007ea565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620007df57620007de62000837565b5b828202905092915050565b6000819050919050565b600060ff82169050919050565b600060028204905060018216806200081a57607f821691505b6020821081141562000831576200083062000866565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60008160011c9050919050565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b612a1880620009046000396000f3fe608060405234801561001057600080fd5b506004361061014d5760003560e01c8063613255ab116100c357806395d89b411161007c57806395d89b411461037a578063a457c2d714610398578063a9059cbb146103c8578063d9d98ce4146103f8578063dd62ed3e14610428578063f2fde38b146104585761014d565b8063613255ab146102cc57806370a08231146102fc578063715018a61461032c57806379cc6790146103365780638456cb59146103525780638da5cb5b1461035c5761014d565b80633950935111610115578063395093511461020c5780633f4ba83a1461023c57806340c10f191461024657806342966c68146102625780635c975abb1461027e5780635cffe9de1461029c5761014d565b806306fdde0314610152578063095ea7b31461017057806318160ddd146101a057806323b872dd146101be578063313ce567146101ee575b600080fd5b61015a610474565b6040516101679190611ffa565b60405180910390f35b61018a60048036038101906101859190611b2e565b610506565b6040516101979190611fdf565b60405180910390f35b6101a8610524565b6040516101b5919061225c565b60405180910390f35b6101d860048036038101906101d39190611adb565b61052e565b6040516101e59190611fdf565b60405180910390f35b6101f6610626565b6040516102039190612277565b60405180910390f35b61022660048036038101906102219190611b2e565b61062f565b6040516102339190611fdf565b60405180910390f35b6102446106db565b005b610260600480360381019061025b9190611b2e565b610761565b005b61027c60048036038101906102779190611c23565b6107eb565b005b6102866107ff565b6040516102939190611fdf565b60405180910390f35b6102b660048036038101906102b19190611b9b565b610816565b6040516102c39190611fdf565b60405180910390f35b6102e660048036038101906102e19190611a6e565b6109c6565b6040516102f3919061225c565b60405180910390f35b61031660048036038101906103119190611a6e565b610a3d565b604051610323919061225c565b60405180910390f35b610334610a85565b005b610350600480360381019061034b9190611b2e565b610b0d565b005b61035a610b88565b005b610364610c0e565b6040516103719190611f68565b60405180910390f35b610382610c38565b60405161038f9190611ffa565b60405180910390f35b6103b260048036038101906103ad9190611b2e565b610cca565b6040516103bf9190611fdf565b60405180910390f35b6103e260048036038101906103dd9190611b2e565b610db5565b6040516103ef9190611fdf565b60405180910390f35b610412600480360381019061040d9190611b2e565b610dd3565b60405161041f919061225c565b60405180910390f35b610442600480360381019061043d9190611a9b565b610e4d565b60405161044f919061225c565b60405180910390f35b610472600480360381019061046d9190611a6e565b610ed4565b005b606060038054610483906123fc565b80601f01602080910402602001604051908101604052809291908181526020018280546104af906123fc565b80156104fc5780601f106104d1576101008083540402835291602001916104fc565b820191906000526020600020905b8154815290600101906020018083116104df57829003601f168201915b5050505050905090565b600061051a610513610fd1565b8484610fd9565b6001905092915050565b6000600254905090565b600061053b8484846111a4565b6000600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610586610fd1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610606576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105fd9061213c565b60405180910390fd5b61061a85610612610fd1565b858403610fd9565b60019150509392505050565b60006012905090565b60006106d161063c610fd1565b84846001600061064a610fd1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546106cc91906122bf565b610fd9565b6001905092915050565b6106e3610fd1565b73ffffffffffffffffffffffffffffffffffffffff16610701610c0e565b73ffffffffffffffffffffffffffffffffffffffff1614610757576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161074e9061215c565b60405180910390fd5b61075f611425565b565b610769610fd1565b73ffffffffffffffffffffffffffffffffffffffff16610787610c0e565b73ffffffffffffffffffffffffffffffffffffffff16146107dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107d49061215c565b60405180910390fd5b6107e782826114c7565b5050565b6107fc6107f6610fd1565b82611627565b50565b6000600560009054906101000a900460ff16905090565b6000806108238686610dd3565b905061082f87866114c7565b7f439148f0bbc682ca079e46d6e2c2f0c1e3b820f1a291b069d8882abf8cf18dd98773ffffffffffffffffffffffffffffffffffffffff166323e30c8b338989868a8a6040518763ffffffff1660e01b815260040161089396959493929190611f83565b602060405180830381600087803b1580156108ad57600080fd5b505af11580156108c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108e59190611b6e565b14610925576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161091c906120dc565b60405180910390fd5b60006109318830610e4d565b9050818661093f91906122bf565b811015610981576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610978906121fc565b60405180910390fd5b6109a288308489856109939190612315565b61099d9190612315565b610fd9565b6109b78883886109b291906122bf565b611627565b60019250505095945050505050565b60003073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614610a02576000610a36565b610a0a610524565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff610a359190612315565b5b9050919050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a8d610fd1565b73ffffffffffffffffffffffffffffffffffffffff16610aab610c0e565b73ffffffffffffffffffffffffffffffffffffffff1614610b01576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610af89061215c565b60405180910390fd5b610b0b60006117fe565b565b6000610b2083610b1b610fd1565b610e4d565b905081811015610b65576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b5c9061217c565b60405180910390fd5b610b7983610b71610fd1565b848403610fd9565b610b838383611627565b505050565b610b90610fd1565b73ffffffffffffffffffffffffffffffffffffffff16610bae610c0e565b73ffffffffffffffffffffffffffffffffffffffff1614610c04576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bfb9061215c565b60405180910390fd5b610c0c6118c4565b565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060048054610c47906123fc565b80601f0160208091040260200160405190810160405280929190818152602001828054610c73906123fc565b8015610cc05780601f10610c9557610100808354040283529160200191610cc0565b820191906000526020600020905b815481529060010190602001808311610ca357829003601f168201915b5050505050905090565b60008060016000610cd9610fd1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610d96576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8d9061221c565b60405180910390fd5b610daa610da1610fd1565b85858403610fd9565b600191505092915050565b6000610dc9610dc2610fd1565b84846111a4565b6001905092915050565b60003073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614610e43576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3a9061211c565b60405180910390fd5b6000905092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610edc610fd1565b73ffffffffffffffffffffffffffffffffffffffff16610efa610c0e565b73ffffffffffffffffffffffffffffffffffffffff1614610f50576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f479061215c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610fc0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fb79061207c565b60405180910390fd5b610fc9816117fe565b50565b505050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611049576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611040906121dc565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156110b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110b09061209c565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611197919061225c565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611214576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120b906121bc565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611284576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127b9061201c565b60405180910390fd5b61128f838383611967565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611315576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161130c906120bc565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546113a891906122bf565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161140c919061225c565b60405180910390a361141f8484846119bf565b50505050565b61142d6107ff565b61146c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114639061203c565b60405180910390fd5b6000600560006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6114b0610fd1565b6040516114bd9190611f68565b60405180910390a1565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611537576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161152e9061223c565b60405180910390fd5b61154360008383611967565b806002600082825461155591906122bf565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546115aa91906122bf565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161160f919061225c565b60405180910390a3611623600083836119bf565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611697576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161168e9061219c565b60405180910390fd5b6116a382600083611967565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611729576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117209061205c565b60405180910390fd5b8181036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008282546117809190612315565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516117e5919061225c565b60405180910390a36117f9836000846119bf565b505050565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6118cc6107ff565b1561190c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611903906120fc565b60405180910390fd5b6001600560006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611950610fd1565b60405161195d9190611f68565b60405180910390a1565b61196f6107ff565b156119af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119a6906120fc565b60405180910390fd5b6119ba838383610fcc565b505050565b505050565b6000813590506119d381612986565b92915050565b6000815190506119e88161299d565b92915050565b60008083601f840112611a0457611a03612491565b5b8235905067ffffffffffffffff811115611a2157611a2061248c565b5b602083019150836001820283011115611a3d57611a3c612496565b5b9250929050565b600081359050611a53816129b4565b92915050565b600081359050611a68816129cb565b92915050565b600060208284031215611a8457611a836124a0565b5b6000611a92848285016119c4565b91505092915050565b60008060408385031215611ab257611ab16124a0565b5b6000611ac0858286016119c4565b9250506020611ad1858286016119c4565b9150509250929050565b600080600060608486031215611af457611af36124a0565b5b6000611b02868287016119c4565b9350506020611b13868287016119c4565b9250506040611b2486828701611a59565b9150509250925092565b60008060408385031215611b4557611b446124a0565b5b6000611b53858286016119c4565b9250506020611b6485828601611a59565b9150509250929050565b600060208284031215611b8457611b836124a0565b5b6000611b92848285016119d9565b91505092915050565b600080600080600060808688031215611bb757611bb66124a0565b5b6000611bc588828901611a44565b9550506020611bd6888289016119c4565b9450506040611be788828901611a59565b935050606086013567ffffffffffffffff811115611c0857611c0761249b565b5b611c14888289016119ee565b92509250509295509295909350565b600060208284031215611c3957611c386124a0565b5b6000611c4784828501611a59565b91505092915050565b611c5981612349565b82525050565b611c688161235b565b82525050565b6000611c7a838561229d565b9350611c878385846123ba565b611c90836124a5565b840190509392505050565b6000611ca682612292565b611cb081856122ae565b9350611cc08185602086016123c9565b611cc9816124a5565b840191505092915050565b6000611ce16023836122ae565b9150611cec826124b6565b604082019050919050565b6000611d046014836122ae565b9150611d0f82612505565b602082019050919050565b6000611d276022836122ae565b9150611d328261252e565b604082019050919050565b6000611d4a6026836122ae565b9150611d558261257d565b604082019050919050565b6000611d6d6022836122ae565b9150611d78826125cc565b604082019050919050565b6000611d906026836122ae565b9150611d9b8261261b565b604082019050919050565b6000611db36024836122ae565b9150611dbe8261266a565b604082019050919050565b6000611dd66010836122ae565b9150611de1826126b9565b602082019050919050565b6000611df9601b836122ae565b9150611e04826126e2565b602082019050919050565b6000611e1c6028836122ae565b9150611e278261270b565b604082019050919050565b6000611e3f6020836122ae565b9150611e4a8261275a565b602082019050919050565b6000611e626024836122ae565b9150611e6d82612783565b604082019050919050565b6000611e856021836122ae565b9150611e90826127d2565b604082019050919050565b6000611ea86025836122ae565b9150611eb382612821565b604082019050919050565b6000611ecb6024836122ae565b9150611ed682612870565b604082019050919050565b6000611eee602f836122ae565b9150611ef9826128bf565b604082019050919050565b6000611f116025836122ae565b9150611f1c8261290e565b604082019050919050565b6000611f34601f836122ae565b9150611f3f8261295d565b602082019050919050565b611f53816123a3565b82525050565b611f62816123ad565b82525050565b6000602082019050611f7d6000830184611c50565b92915050565b600060a082019050611f986000830189611c50565b611fa56020830188611c50565b611fb26040830187611f4a565b611fbf6060830186611f4a565b8181036080830152611fd2818486611c6e565b9050979650505050505050565b6000602082019050611ff46000830184611c5f565b92915050565b600060208201905081810360008301526120148184611c9b565b905092915050565b6000602082019050818103600083015261203581611cd4565b9050919050565b6000602082019050818103600083015261205581611cf7565b9050919050565b6000602082019050818103600083015261207581611d1a565b9050919050565b6000602082019050818103600083015261209581611d3d565b9050919050565b600060208201905081810360008301526120b581611d60565b9050919050565b600060208201905081810360008301526120d581611d83565b9050919050565b600060208201905081810360008301526120f581611da6565b9050919050565b6000602082019050818103600083015261211581611dc9565b9050919050565b6000602082019050818103600083015261213581611dec565b9050919050565b6000602082019050818103600083015261215581611e0f565b9050919050565b6000602082019050818103600083015261217581611e32565b9050919050565b6000602082019050818103600083015261219581611e55565b9050919050565b600060208201905081810360008301526121b581611e78565b9050919050565b600060208201905081810360008301526121d581611e9b565b9050919050565b600060208201905081810360008301526121f581611ebe565b9050919050565b6000602082019050818103600083015261221581611ee1565b9050919050565b6000602082019050818103600083015261223581611f04565b9050919050565b6000602082019050818103600083015261225581611f27565b9050919050565b60006020820190506122716000830184611f4a565b92915050565b600060208201905061228c6000830184611f59565b92915050565b600081519050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006122ca826123a3565b91506122d5836123a3565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561230a5761230961242e565b5b828201905092915050565b6000612320826123a3565b915061232b836123a3565b92508282101561233e5761233d61242e565b5b828203905092915050565b600061235482612383565b9050919050565b60008115159050919050565b6000819050919050565b600061237c82612349565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b82818337600083830152505050565b60005b838110156123e75780820151818401526020810190506123cc565b838111156123f6576000848401525b50505050565b6000600282049050600182168061241457607f821691505b602082108114156124285761242761245d565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f5061757361626c653a206e6f7420706175736564000000000000000000000000600082015250565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b7f4552433230466c6173684d696e743a20696e76616c69642072657475726e207660008201527f616c756500000000000000000000000000000000000000000000000000000000602082015250565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b7f4552433230466c6173684d696e743a2077726f6e6720746f6b656e0000000000600082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a206275726e20616d6f756e74206578636565647320616c6c6f7760008201527f616e636500000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f4552433230466c6173684d696e743a20616c6c6f77616e636520646f6573206e60008201527f6f7420616c6c6f7720726566756e640000000000000000000000000000000000602082015250565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b61298f81612349565b811461299a57600080fd5b50565b6129a681612367565b81146129b157600080fd5b50565b6129bd81612371565b81146129c857600080fd5b50565b6129d4816123a3565b81146129df57600080fd5b5056fea2646970667358221220671298cfcab0d9246062a35e17a5572659dfa4bd8f1406ed8dc47acfd94124cd64736f6c63430008070033