[ { "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": "delegator", "type": "address" }, { "indexed": true, "internalType": "address", "name": "fromDelegate", "type": "address" }, { "indexed": true, "internalType": "address", "name": "toDelegate", "type": "address" } ], "name": "DelegateChanged", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "delegate", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "previousBalance", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "newBalance", "type": "uint256" } ], "name": "DelegateVotesChanged", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "operator", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "previousRate", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "newRate", "type": "uint256" } ], "name": "MaxTransferAmountRateUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOperator", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOperator", "type": "address" } ], "name": "OperatorTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "operator", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "previousRate", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "newRate", "type": "uint256" } ], "name": "TransferTaxRateUpdated", "type": "event" }, { "inputs": [], "name": "BURN_ADDRESS", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "DELEGATION_TYPEHASH", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "DOMAIN_TYPEHASH", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MAXIMUM_TRANSFER_TAX_RATE", "outputs": [ { "internalType": "uint16", "name": "", "type": "uint16" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MINIMUM_MAX_TRANSFER_AMOUNT_RATE", "outputs": [ { "internalType": "uint16", "name": "", "type": "uint16" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" } ], "name": "allowance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "approve", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint32", "name": "", "type": "uint32" } ], "name": "checkpoints", "outputs": [ { "internalType": "uint32", "name": "fromBlock", "type": "uint32" }, { "internalType": "uint256", "name": "votes", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "subtractedValue", "type": "uint256" } ], "name": "decreaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "delegatee", "type": "address" } ], "name": "delegate", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "delegatee", "type": "address" }, { "internalType": "uint256", "name": "nonce", "type": "uint256" }, { "internalType": "uint256", "name": "expiry", "type": "uint256" }, { "internalType": "uint8", "name": "v", "type": "uint8" }, { "internalType": "bytes32", "name": "r", "type": "bytes32" }, { "internalType": "bytes32", "name": "s", "type": "bytes32" } ], "name": "delegateBySig", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "delegator", "type": "address" } ], "name": "delegates", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "getCurrentVotes", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getOwner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "blockNumber", "type": "uint256" } ], "name": "getPriorVotes", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "addedValue", "type": "uint256" } ], "name": "increaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_account", "type": "address" } ], "name": "isExcludedFromAntiWhale", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_account", "type": "address" } ], "name": "isExcludedFromTransferTax", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxTransferAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxTransferAmountRate", "outputs": [ { "internalType": "uint16", "name": "", "type": "uint16" } ], "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": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "mint", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "nonces", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "numCheckpoints", "outputs": [ { "internalType": "uint32", "name": "", "type": "uint32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "operator", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_account", "type": "address" }, { "internalType": "bool", "name": "_excluded", "type": "bool" } ], "name": "setExcludedFromAntiWhale", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_account", "type": "address" }, { "internalType": "bool", "name": "_excluded", "type": "bool" } ], "name": "setExcludedFromTransferTax", "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": "newOperator", "type": "address" } ], "name": "transferOperator", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "transferTaxRate", "outputs": [ { "internalType": "uint16", "name": "", "type": "uint16" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_maxTransferAmountRate", "type": "uint16" } ], "name": "updateMaxTransferAmountRate", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_transferTaxRate", "type": "uint16" } ], "name": "updateTransferTaxRate", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
60806040526006805462ffff0019166164001764ffff00000019166407d00000001790553480156200003057600080fd5b506040518060400160405280600c81526020016b21b7bab3b0b9102a37b5b2b760a11b8152506040518060400160405280600381526020016243475360e81b8152506000620000846200024f60201b60201c565b600080546001600160a01b0319166001600160a01b0383169081178255604051929350917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508151620000e390600490602085019062000253565b508051620000f990600590602084019062000253565b50506006805460ff1916601217905550620001136200024f565b600980546001600160a01b0319166001600160a01b0392831617908190556040519116906000907f74da04524d50c64947f5dd5381ef1a4dca5cba8ed1d816243f9e48aa0b5617ed908290a33360008181526007602090815260408083208054600160ff1991821681179092557f6d5257204ebe7d88fd91ae87941cb2dd9d8062b64ae5a2bd2d28ec40b9fbf6df805482168317905530855282852080548216831790557fb0c2646e02af70b79e3fe9277b98373379f54150e4e26b2b5650139f7a75a65d805482168317905560089093527f046fee3d77c34a6c5e10c3be6dc4b132c30449dbf4f0bc07684896dd093342998054841682179055938352822080548216841790559080527f5eff886ea0ce6ca488a3d6e336d6c0f75f46d19b42c06ce5ee98e42c96d256c780549091169091179055620002ef565b3390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200029657805160ff1916838001178555620002c6565b82800160010185558215620002c6579182015b82811115620002c6578251825591602001919060010190620002a9565b50620002d4929150620002d8565b5090565b5b80821115620002d45760008155600101620002d9565b61293180620002ff6000396000f3fe60806040526004361061024a5760003560e01c8063715018a611610139578063a9059cbb116100b6578063c7f59a671161007a578063c7f59a67146108df578063dd62ed3e1461091a578063e7a324dc14610955578063f1127ed81461096a578063f2fde38b146109c9578063fccc2813146109fc57610251565b8063a9059cbb146107f5578063a9e757231461082e578063b4b5ea5714610843578063b65d08b014610876578063c3cda5201461088b57610251565b8063893d20e8116100fd578063893d20e8146107535780638da5cb5b1461076857806395d89b411461077d578063a0712d6814610792578063a457c2d7146107bc57610251565b8063715018a61461069f5780637332cb56146106b4578063782d6fe1146106e75780637ecebe001461072057806386fac4901461039157610251565b8063376c2391116101c7578063587cde1e1161018b578063587cde1e1461058c5780635c19a95c146105bf5780636a141e2c146105f25780636fcfff451461062057806370a082311461066c57610251565b8063376c2391146104a657806339509351146104d45780633ff8bf2e1461050d57806340c10f1914610522578063570ca7351461055b57610251565b806320606b701161020e57806320606b70146103bd57806323b872dd146103d2578063269f534c1461041557806329605e7714610448578063313ce5671461047b57610251565b80630222ffe11461025657806306fdde0314610293578063095ea7b31461031d57806318160ddd1461036a5780631ad9339a1461039157610251565b3661025157005b600080fd5b34801561026257600080fd5b506102916004803603604081101561027957600080fd5b506001600160a01b0381351690602001351515610a11565b005b34801561029f57600080fd5b506102a8610a85565b6040805160208082528351818301528351919283929083019185019080838360005b838110156102e25781810151838201526020016102ca565b50505050905090810190601f16801561030f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561032957600080fd5b506103566004803603604081101561034057600080fd5b506001600160a01b038135169060200135610b1b565b604080519115158252519081900360200190f35b34801561037657600080fd5b5061037f610b39565b60408051918252519081900360200190f35b34801561039d57600080fd5b506103a6610b3f565b6040805161ffff9092168252519081900360200190f35b3480156103c957600080fd5b5061037f610b44565b3480156103de57600080fd5b50610356600480360360608110156103f557600080fd5b506001600160a01b03813581169160208101359091169060400135610b68565b34801561042157600080fd5b506103566004803603602081101561043857600080fd5b50356001600160a01b0316610bef565b34801561045457600080fd5b506102916004803603602081101561046b57600080fd5b50356001600160a01b0316610c0d565b34801561048757600080fd5b50610490610cf7565b6040805160ff9092168252519081900360200190f35b3480156104b257600080fd5b50610291600480360360208110156104c957600080fd5b503561ffff16610d00565b3480156104e057600080fd5b50610356600480360360408110156104f757600080fd5b506001600160a01b038135169060200135610df4565b34801561051957600080fd5b506103a6610e42565b34801561052e57600080fd5b506102916004803603604081101561054557600080fd5b506001600160a01b038135169060200135610e53565b34801561056757600080fd5b50610570610ee8565b604080516001600160a01b039092168252519081900360200190f35b34801561059857600080fd5b50610570600480360360208110156105af57600080fd5b50356001600160a01b0316610ef7565b3480156105cb57600080fd5b50610291600480360360208110156105e257600080fd5b50356001600160a01b0316610f15565b3480156105fe57600080fd5b506102916004803603602081101561061557600080fd5b503561ffff16610f22565b34801561062c57600080fd5b506106536004803603602081101561064357600080fd5b50356001600160a01b0316611061565b6040805163ffffffff9092168252519081900360200190f35b34801561067857600080fd5b5061037f6004803603602081101561068f57600080fd5b50356001600160a01b0316611079565b3480156106ab57600080fd5b50610291611094565b3480156106c057600080fd5b50610356600480360360208110156106d757600080fd5b50356001600160a01b0316611140565b3480156106f357600080fd5b5061037f6004803603604081101561070a57600080fd5b506001600160a01b03813516906020013561115e565b34801561072c57600080fd5b5061037f6004803603602081101561074357600080fd5b50356001600160a01b0316611366565b34801561075f57600080fd5b50610570611378565b34801561077457600080fd5b50610570611387565b34801561078957600080fd5b506102a8611396565b34801561079e57600080fd5b50610356600480360360208110156107b557600080fd5b50356113f7565b3480156107c857600080fd5b50610356600480360360408110156107df57600080fd5b506001600160a01b038135169060200135611474565b34801561080157600080fd5b506103566004803603604081101561081857600080fd5b506001600160a01b0381351690602001356114dc565b34801561083a57600080fd5b5061037f6114f0565b34801561084f57600080fd5b5061037f6004803603602081101561086657600080fd5b50356001600160a01b0316611521565b34801561088257600080fd5b506103a6611585565b34801561089757600080fd5b50610291600480360360c08110156108ae57600080fd5b506001600160a01b038135169060208101359060408101359060ff6060820135169060808101359060a00135611594565b3480156108eb57600080fd5b506102916004803603604081101561090257600080fd5b506001600160a01b0381351690602001351515611807565b34801561092657600080fd5b5061037f6004803603604081101561093d57600080fd5b506001600160a01b038135811691602001351661187b565b34801561096157600080fd5b5061037f6118a6565b34801561097657600080fd5b506109a96004803603604081101561098d57600080fd5b5080356001600160a01b0316906020013563ffffffff166118ca565b6040805163ffffffff909316835260208301919091528051918290030190f35b3480156109d557600080fd5b50610291600480360360208110156109ec57600080fd5b50356001600160a01b03166118f7565b348015610a0857600080fd5b506105706119f9565b6009546001600160a01b03163314610a5a5760405162461bcd60e51b81526004018080602001828103825260248152602001806126db6024913960400191505060405180910390fd5b6001600160a01b03919091166000908152600860205260409020805460ff1916911515919091179055565b60048054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610b115780601f10610ae657610100808354040283529160200191610b11565b820191906000526020600020905b815481529060010190602001808311610af457829003601f168201915b5050505050905090565b6000610b2f610b286119ff565b8484611a03565b5060015b92915050565b60035490565b606481565b7f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a86681565b6000610b75848484611aef565b610be584610b816119ff565b610be08560405180606001604052806028815260200161258c602891396001600160a01b038a16600090815260026020526040812090610bbf6119ff565b6001600160a01b031681526020810191909152604001600020549190611cf8565b611a03565b5060019392505050565b6001600160a01b031660009081526007602052604090205460ff1690565b6009546001600160a01b03163314610c565760405162461bcd60e51b81526004018080602001828103825260248152602001806126db6024913960400191505060405180910390fd5b6001600160a01b038116610c9b5760405162461bcd60e51b815260040180806020018281038252603a81526020018061260e603a913960400191505060405180910390fd5b6009546040516001600160a01b038084169216907f74da04524d50c64947f5dd5381ef1a4dca5cba8ed1d816243f9e48aa0b5617ed90600090a3600980546001600160a01b0319166001600160a01b0392909216919091179055565b60065460ff1690565b6009546001600160a01b03163314610d495760405162461bcd60e51b81526004018080602001828103825260248152602001806126db6024913960400191505060405180910390fd5b606461ffff82161115610d8d5760405162461bcd60e51b81526004018080602001828103825260528152602001806126896052913960600191505060405180910390fd5b6006546040805161ffff610100909304831681529183166020830152805133927fe9d5c8ee2a65d4fb859c680669d8f902172d53e3f15f9f11108a31bbada4b70b92908290030190a26006805461ffff9092166101000262ffff0019909216919091179055565b6000610b2f610e016119ff565b84610be08560026000610e126119ff565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490611d8f565b6006546301000000900461ffff1681565b610e5b6119ff565b6001600160a01b0316610e6c611387565b6001600160a01b031614610eb5576040805162461bcd60e51b81526020600482018190526024820152600080516020612669833981519152604482015290519081900360640190fd5b610ebf8282611de9565b6001600160a01b038083166000908152600a6020526040812054610ee4921683611ecf565b5050565b6009546001600160a01b031690565b6001600160a01b039081166000908152600a60205260409020541690565b610f1f3382612011565b50565b6009546001600160a01b03163314610f6b5760405162461bcd60e51b81526004018080602001828103825260248152602001806126db6024913960400191505060405180910390fd5b6127108161ffff161115610fb05760405162461bcd60e51b815260040180806020018281038252605f815260200180612830605f913960600191505060405180910390fd5b606461ffff82161015610ff45760405162461bcd60e51b815260040180806020018281038252605b815260200180612795605b913960600191505060405180910390fd5b6006546040805161ffff6301000000909304831681529183166020830152805133927fb62a50fc861a770636e85357becb3b82a32e911106609d4985871eaf29011e0892908290030190a26006805461ffff90921663010000000264ffff00000019909216919091179055565b600c6020526000908152604090205463ffffffff1681565b6001600160a01b031660009081526001602052604090205490565b61109c6119ff565b6001600160a01b03166110ad611387565b6001600160a01b0316146110f6576040805162461bcd60e51b81526020600482018190526024820152600080516020612669833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b031660009081526008602052604090205460ff1690565b600043821061119e5760405162461bcd60e51b81526004018080602001828103825260298152602001806125636029913960400191505060405180910390fd5b6001600160a01b0383166000908152600c602052604090205463ffffffff16806111cc576000915050610b33565b6001600160a01b0384166000908152600b6020908152604080832063ffffffff60001986018116855292529091205416831061123b576001600160a01b0384166000908152600b602090815260408083206000199490940163ffffffff16835292905220600101549050610b33565b6001600160a01b0384166000908152600b6020908152604080832083805290915290205463ffffffff16831015611276576000915050610b33565b600060001982015b8163ffffffff168163ffffffff16111561132f57600282820363ffffffff160481036112a86124dc565b506001600160a01b0387166000908152600b6020908152604080832063ffffffff80861685529083529281902081518083019092528054909316808252600190930154918101919091529087141561130a57602001519450610b339350505050565b805163ffffffff1687111561132157819350611328565b6001820392505b505061127e565b506001600160a01b0385166000908152600b6020908152604080832063ffffffff9094168352929052206001015491505092915050565b600d6020526000908152604090205481565b6000611382611387565b905090565b6000546001600160a01b031690565b60058054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610b115780601f10610ae657610100808354040283529160200191610b11565b60006114016119ff565b6001600160a01b0316611412611387565b6001600160a01b03161461145b576040805162461bcd60e51b81526020600482018190526024820152600080516020612669833981519152604482015290519081900360640190fd5b61146c6114666119ff565b83611de9565b506001919050565b6000610b2f6114816119ff565b84610be08560405180606001604052806025815260200161277060259139600260006114ab6119ff565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190611cf8565b6000610b2f6114e96119ff565b8484611aef565b600654600090611382906127109061151b906301000000900461ffff16611515610b39565b906120a6565b906120ff565b6001600160a01b0381166000908152600c602052604081205463ffffffff168061154c57600061157e565b6001600160a01b0383166000908152600b6020908152604080832063ffffffff60001986011684529091529020600101545b9392505050565b600654610100900461ffff1681565b60007f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a8666115bf610a85565b805190602001206115ce612166565b60408051602080820195909552808201939093526060830191909152306080808401919091528151808403909101815260a0830182528051908401207fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf60c08401526001600160a01b038b1660e084015261010083018a90526101208084018a9052825180850390910181526101408401835280519085012061190160f01b6101608501526101628401829052610182808501829052835180860390910181526101a285018085528151918701919091206000918290526101c2860180865281905260ff8b166101e287015261020286018a90526102228601899052935192965090949293909260019261024280840193601f198301929081900390910190855afa158015611701573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166117535760405162461bcd60e51b81526004018080602001828103825260288152602001806126ff6028913960400191505060405180910390fd5b6001600160a01b0381166000908152600d6020526040902080546001810190915589146117b15760405162461bcd60e51b81526004018080602001828103825260248152602001806125b46024913960400191505060405180910390fd5b874211156117f05760405162461bcd60e51b81526004018080602001828103825260288152602001806128d46028913960400191505060405180910390fd5b6117fa818b612011565b505050505b505050505050565b6009546001600160a01b031633146118505760405162461bcd60e51b81526004018080602001828103825260248152602001806126db6024913960400191505060405180910390fd5b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b7fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf81565b600b6020908152600092835260408084209091529082529020805460019091015463ffffffff9091169082565b6118ff6119ff565b6001600160a01b0316611910611387565b6001600160a01b031614611959576040805162461bcd60e51b81526020600482018190526024820152600080516020612669833981519152604482015290519081900360640190fd5b6001600160a01b03811661199e5760405162461bcd60e51b815260040180806020018281038252602681526020018061253d6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b61dead81565b3390565b6001600160a01b038316611a485760405162461bcd60e51b81526004018080602001828103825260248152602001806125196024913960400191505060405180910390fd5b6001600160a01b038216611a8d5760405162461bcd60e51b815260040180806020018281038252602281526020018061288f6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260026020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166000908152600760205260408120548491849184919060ff16151560011480611b3f57506001600160a01b03831660009081526007602052604090205460ff1615156001145b90506000611b4b6114f0565b118015611b56575080155b15611be8576001600160a01b03841660009081526007602052604090205460ff16158015611b9d57506001600160a01b03831660009081526007602052604090205460ff16155b15611be857611baa6114f0565b821115611be85760405162461bcd60e51b81526004018080602001828103825260408152602001806127f06040913960400191505060405180910390fd5b600654600090610100900461ffff161580611c2057506001600160a01b03881660009081526008602052604090205460ff1615156001145b80611c4857506001600160a01b03871660009081526008602052604090205460ff1615156001145b90508015611c6057611c5b88888861216a565b611cee565b600654600090611c82906127109061151b908a90610100900461ffff166120a6565b90506000611c9088836122bc565b90508181018814611cd25760405162461bcd60e51b81526004018080602001828103825260238152602001806128b16023913960400191505060405180910390fd5b611cdf8a61dead8461216a565b611cea8a8a8361216a565b9650505b5050505050505050565b60008184841115611d875760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611d4c578181015183820152602001611d34565b50505050905090810190601f168015611d795780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008282018381101561157e576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6001600160a01b038216611e44576040805162461bcd60e51b815260206004820152601f60248201527f42455032303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b600354611e519082611d8f565b6003556001600160a01b038216600090815260016020526040902054611e779082611d8f565b6001600160a01b03831660008181526001602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b816001600160a01b0316836001600160a01b031614158015611ef15750600081115b1561200c576001600160a01b03831615611f83576001600160a01b0383166000908152600c602052604081205463ffffffff169081611f31576000611f63565b6001600160a01b0385166000908152600b6020908152604080832063ffffffff60001987011684529091529020600101545b90506000611f7182856122bc565b9050611f7f86848484612319565b5050505b6001600160a01b0382161561200c576001600160a01b0382166000908152600c602052604081205463ffffffff169081611fbe576000611ff0565b6001600160a01b0384166000908152600b6020908152604080832063ffffffff60001987011684529091529020600101545b90506000611ffe8285611d8f565b90506117ff85848484612319565b505050565b6001600160a01b038083166000908152600a60205260408120549091169061203884611079565b6001600160a01b038581166000818152600a602052604080822080546001600160a01b031916898616908117909155905194955093928616927f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f9190a46120a0828483611ecf565b50505050565b6000826120b557506000610b33565b828202828482816120c257fe5b041461157e5760405162461bcd60e51b81526004018080602001828103825260218152602001806126486021913960400191505060405180910390fd5b6000808211612155576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161215e57fe5b049392505050565b4690565b6001600160a01b0383166121af5760405162461bcd60e51b81526004018080602001828103825260258152602001806124f46025913960400191505060405180910390fd5b6001600160a01b0382166121f45760405162461bcd60e51b815260040180806020018281038252602381526020018061274d6023913960400191505060405180910390fd5b61223181604051806060016040528060268152602001612727602691396001600160a01b0386166000908152600160205260409020549190611cf8565b6001600160a01b0380851660009081526001602052604080822093909355908416815220546122609082611d8f565b6001600160a01b0380841660008181526001602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600082821115612313576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b600061233d436040518060600160405280603681526020016125d86036913961247e565b905060008463ffffffff1611801561238657506001600160a01b0385166000908152600b6020908152604080832063ffffffff6000198901811685529252909120548282169116145b156123c3576001600160a01b0385166000908152600b6020908152604080832063ffffffff60001989011684529091529020600101829055612434565b60408051808201825263ffffffff808416825260208083018681526001600160a01b038a166000818152600b84528681208b8616825284528681209551865490861663ffffffff199182161787559251600196870155908152600c9092529390208054928801909116919092161790555b604080518481526020810184905281516001600160a01b038816927fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a724928290030190a25050505050565b60008164010000000084106124d45760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611d4c578181015183820152602001611d34565b509192915050565b60408051808201909152600080825260208201529056fe42455032303a207472616e736665722066726f6d20746865207a65726f206164647265737342455032303a20617070726f76652066726f6d20746865207a65726f20616464726573734f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373434f554741523a3a6765745072696f72566f7465733a206e6f74207965742064657465726d696e656442455032303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365434f554741523a3a64656c656761746542795369673a20696e76616c6964206e6f6e6365434f554741523a3a5f7772697465436865636b706f696e743a20626c6f636b206e756d62657220657863656564732033322062697473434f554741523a3a7472616e736665724f70657261746f723a206e6577206f70657261746f7220697320746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f774f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572434f554741523a3a7570646174655472616e73666572546178526174653a205472616e73666572207461782072617465206d757374206e6f742065786365656420746865206d6178696d756d20726174652e6f70657261746f723a2063616c6c6572206973206e6f7420746865206f70657261746f72434f554741523a3a64656c656761746542795369673a20696e76616c6964207369676e617475726542455032303a207472616e7366657220616d6f756e7420657863656564732062616c616e636542455032303a207472616e7366657220746f20746865207a65726f206164647265737342455032303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f434f554741523a3a7570646174654d61785472616e73666572416d6f756e74526174653a204d6178207472616e7366657220616d6f756e742072617465206d7573742065786365656420746865206d696e696d756d20726174652e434f554741523a3a616e74695768616c653a205472616e7366657220616d6f756e74206578636565647320746865206d61785472616e73666572416d6f756e74434f554741523a3a7570646174654d61785472616e73666572416d6f756e74526174653a204d6178207472616e7366657220616d6f756e742072617465206d757374206e6f742065786365656420746865206d6178696d756d20726174652e42455032303a20617070726f766520746f20746865207a65726f2061646472657373434f554741523a3a7472616e736665723a205461782076616c756520696e76616c6964434f554741523a3a64656c656761746542795369673a207369676e61747572652065787069726564a26469706673582212204946d940cbb7650b5210d384e560f19b8780c24e512fd6650601e5cb5f59be0464736f6c634300060c0033