[ { "inputs": [ { "components": [ { "internalType": "string", "name": "name", "type": "string" }, { "internalType": "string", "name": "symbol", "type": "string" }, { "internalType": "uint256", "name": "totalSupply", "type": "uint256" }, { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "uniswapV2Router", "type": "address" }, { "internalType": "address", "name": "feeReceiver", "type": "address" }, { "internalType": "uint256", "name": "buyTax", "type": "uint256" }, { "internalType": "uint256", "name": "sellTax", "type": "uint256" }, { "internalType": "uint256", "name": "maxTx", "type": "uint256" }, { "internalType": "uint256", "name": "maxWallet", "type": "uint256" }, { "internalType": "address", "name": "dynamicSale", "type": "address" }, { "internalType": "uint256", "name": "totalFeeCap", "type": "uint256" }, { "internalType": "uint256", "name": "minMaxTx", "type": "uint256" }, { "internalType": "uint256", "name": "minMaxWallet", "type": "uint256" } ], "internalType": "struct ERC20Token.CreationParams", "name": "params", "type": "tuple" } ], "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": [], "name": "EnabledTrading", "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": [], "name": "RemovedLimits", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "_address", "type": "address" }, { "indexed": false, "internalType": "bool", "name": "_isExempt", "type": "bool" } ], "name": "SetExemptFromFees", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "_address", "type": "address" }, { "indexed": false, "internalType": "bool", "name": "_isExempt", "type": "bool" } ], "name": "SetExemptFromLimits", "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": "uint256", "name": "newAmt", "type": "uint256" } ], "name": "UpdatedBuyTax", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "newMax", "type": "uint256" } ], "name": "UpdatedMaxTransaction", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "newMax", "type": "uint256" } ], "name": "UpdatedMaxWallet", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "newAmt", "type": "uint256" } ], "name": "UpdatedSellTax", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "receiver", "type": "address" } ], "name": "UpdatedTaxReceiver", "type": "event" }, { "inputs": [], "name": "FEE_DIVISOR", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MIN_MAXTX", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MIN_MAXWALLET", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "TRADING_FEE_CAP", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "wallets", "type": "address[]" }, { "internalType": "uint256[]", "name": "amountsInWei", "type": "uint256[]" } ], "name": "airdropToWallets", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" } ], "name": "allowance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "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": [], "name": "buyTotalTax", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "subtractedValue", "type": "uint256" } ], "name": "decreaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "dexRouter", "outputs": [ { "internalType": "contract IUniswapV2Router02", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "enableTrading", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "exemptFromFees", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "exemptFromLimits", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "factory", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "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": "", "type": "address" } ], "name": "isAMMPair", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "limitsInEffect", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "lpPair", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxTransaction", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxWallet", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "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": "removeLimits", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_token", "type": "address" }, { "internalType": "address", "name": "_to", "type": "address" } ], "name": "rescueTokens", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "sellTotalTax", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_address", "type": "address" }, { "internalType": "bool", "name": "_isExempt", "type": "bool" } ], "name": "setExemptFromFees", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_address", "type": "address" }, { "internalType": "bool", "name": "_isExempt", "type": "bool" } ], "name": "setExemptFromLimits", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "swapEnabled", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "swapTokensAtAmt", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "taxReceiverAddress", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "tradingActive", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_taxWithTwoDecimals", "type": "uint256" } ], "name": "updateBuyTax", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "maxTxInWei", "type": "uint256" } ], "name": "updateMaxTransaction", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "maxWalletInWei", "type": "uint256" } ], "name": "updateMaxWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_taxWithTwoDecimals", "type": "uint256" } ], "name": "updateSellTax", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_address", "type": "address" } ], "name": "updateTaxAddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
60e0604052600f805461ffff19166101011790553480156200002057600080fd5b5060405162002c0038038062002c008339810160408190526200004391620007fd565b805160208201516003620000588382620009cf565b506004620000678282620009cf565b505050620000846200007e620003b760201b60201c565b620003bb565b606081015160408201516200009b9082906200040d565b60138054336001600160a01b031991821617909155610160830151608090815261018084015160a0526101a084015160c052830151601280549092166001600160a01b03909116179055610100820151600a55610120820151600b55620186a06200010560025490565b6200011290601962000ab1565b6200011e919062000ad1565b60105560a0820151600c80546001600160a01b0319166001600160a01b0392831617905560c0830151600d5560e0830151600e556012546040805163c45a015560e01b81529051919092169163c45a01559160048281019260209291908290030181865afa15801562000195573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001bb919062000af4565b6001600160a01b031663c9c6539630601260009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200021e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000244919062000af4565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000292573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002b8919062000af4565b601180546001600160a01b0319166001600160a01b0392831690811782556000908152600960209081526040808320805460ff19908116600190811790925594548616845260078352818420805486168217905560608801805187168552828520805487168317905530808652838620805488168417905590518716855260069093528184208054861682179055828452818420805486168217905561014088015186168452922080549093169091179091556012546200037d9216600019620004d4565b6060820151601254620003a491906001600160a01b03166200039e60025490565b620004d4565b620003af81620005fc565b505062000b2f565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038216620004695760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064015b60405180910390fd5b80600260008282546200047d919062000b19565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b6001600160a01b038316620005385760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840162000460565b6001600160a01b0382166200059b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840162000460565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6200060662000680565b6001600160a01b0381166200066d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000460565b6200067881620003bb565b50565b505050565b6005546001600160a01b03163314620006dc5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000460565b565b634e487b7160e01b600052604160045260246000fd5b6040516101c081016001600160401b03811182821017156200071a576200071a620006de565b60405290565b604051601f8201601f191681016001600160401b03811182821017156200074b576200074b620006de565b604052919050565b600082601f8301126200076557600080fd5b81516001600160401b03811115620007815762000781620006de565b602062000797601f8301601f1916820162000720565b8281528582848701011115620007ac57600080fd5b60005b83811015620007cc578581018301518282018401528201620007af565b506000928101909101919091529392505050565b80516001600160a01b0381168114620007f857600080fd5b919050565b6000602082840312156200081057600080fd5b81516001600160401b03808211156200082857600080fd5b908301906101c082860312156200083e57600080fd5b62000848620006f4565b8251828111156200085857600080fd5b620008668782860162000753565b8252506020830151828111156200087c57600080fd5b6200088a8782860162000753565b60208301525060408301516040820152620008a860608401620007e0565b6060820152620008bb60808401620007e0565b6080820152620008ce60a08401620007e0565b60a082015260c0838101519082015260e080840151908201526101008084015190820152610120808401519082015261014091506200090f828401620007e0565b91810191909152610160828101519082015261018080830151908201526101a091820151918101919091529392505050565b600181811c908216806200095657607f821691505b6020821081036200097757634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200067b57600081815260208120601f850160051c81016020861015620009a65750805b601f850160051c820191505b81811015620009c757828155600101620009b2565b505050505050565b81516001600160401b03811115620009eb57620009eb620006de565b62000a0381620009fc845462000941565b846200097d565b602080601f83116001811462000a3b576000841562000a225750858301515b600019600386901b1c1916600185901b178555620009c7565b600085815260208120601f198616915b8281101562000a6c5788860151825594840194600190910190840162000a4b565b508582101562000a8b5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000acb5762000acb62000a9b565b92915050565b60008262000aef57634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121562000b0757600080fd5b62000b1282620007e0565b9392505050565b8082018082111562000acb5762000acb62000a9b565b60805160a05160c05161208562000b7b6000396000818161040e015261081c01526000818161059501526106050152600081816104e00152818161077601526109d801526120856000f3fe608060405234801561001057600080fd5b50600436106102745760003560e01c8063715018a611610151578063a9059cbb116100c3578063c788505511610087578063c788505514610590578063c78d0fa0146105b7578063dd62ed3e146105c0578063e27a55fe146105d3578063f2fde38b146105dc578063f8b45b05146105ef57600080fd5b8063a9059cbb14610531578063b0249cc614610544578063bbc0c74214610567578063c3f70b5214610574578063c45a01551461057d57600080fd5b80638da5cb5b116101155780638da5cb5b146104c257806395d89b41146104d3578063968a1331146104db5780639e93ad8e14610502578063a13d1a2b1461050b578063a457c2d71461051e57600080fd5b8063715018a614610474578063751039fc1461047c57806377b27d1f146104845780638a8c523c146104975780638d3e6e401461049f57600080fd5b806339509351116101ea5780635a90a49e116101ae5780635a90a49e146103d35780635adf655a146103f65780635b1ad655146104095780635df6e68e146104305780636ddd17131461043957806370a082311461044b57600080fd5b8063395093511461037a578063436d33401461038d578063452ed4f1146103a05780634a62bb65146103b35780635431c94e146103c057600080fd5b806312185a391161023c57806312185a391461030d57806318160ddd146103205780631c499ab0146103325780632307b4411461034557806323b872dd14610358578063313ce5671461036b57600080fd5b80630517d13d1461027957806306fdde031461028e5780630758d924146102ac578063095ea7b3146102d7578063114ca2ed146102fa575b600080fd5b61028c610287366004611c4e565b6105f8565b005b6102966106bb565b6040516102a39190611c8b565b60405180910390f35b6012546102bf906001600160a01b031681565b6040516001600160a01b0390911681526020016102a3565b6102ea6102e5366004611cd3565b61074d565b60405190151581526020016102a3565b600c546102bf906001600160a01b031681565b61028c61031b366004611c4e565b610767565b6002545b6040519081526020016102a3565b61028c610340366004611c4e565b61080f565b61028c610353366004611d4b565b6108c6565b6102ea610366366004611db7565b610983565b604051601281526020016102a3565b6102ea610388366004611cd3565b6109a7565b61028c61039b366004611c4e565b6109c9565b6011546102bf906001600160a01b031681565b600f546102ea9060ff1681565b61028c6103ce366004611df8565b610a71565b6102ea6103e1366004611e31565b60066020526000908152604090205460ff1681565b61028c610404366004611e31565b610b98565b6103247f000000000000000000000000000000000000000000000000000000000000000081565b610324600d5481565b600f546102ea90610100900460ff1681565b610324610459366004611e31565b6001600160a01b031660009081526020819052604090205490565b61028c610c33565b61028c610c47565b61028c610492366004611e63565b610c90565b61028c610d9d565b6102ea6104ad366004611e31565b60076020526000908152604090205460ff1681565b6005546001600160a01b03166102bf565b610296610ddd565b6103247f000000000000000000000000000000000000000000000000000000000000000081565b61032461271081565b61028c610519366004611e63565b610dec565b6102ea61052c366004611cd3565b610eed565b6102ea61053f366004611cd3565b610f68565b6102ea610552366004611e31565b60096020526000908152604090205460ff1681565b6008546102ea9060ff1681565b610324600a5481565b6013546102bf906001600160a01b031681565b6103247f000000000000000000000000000000000000000000000000000000000000000081565b61032460105481565b6103246105ce366004611df8565b610f76565b610324600e5481565b61028c6105ea366004611e31565b610fa1565b610324600b5481565b61060061101a565b6127107f000000000000000000000000000000000000000000000000000000000000000061062d60025490565b6106379190611ea7565b6106419190611ebe565b81101561067f5760405162461bcd60e51b8152602060048201526007602482015266546f6f206c6f7760c81b60448201526064015b60405180910390fd5b600a8190556040518181527f76a9278644b7300961aa0e7e86f10934585987f1daf1c6ecc971c18376691574906020015b60405180910390a150565b6060600380546106ca90611ee0565b80601f01602080910402602001604051908101604052809291908181526020018280546106f690611ee0565b80156107435780601f1061071857610100808354040283529160200191610743565b820191906000526020600020905b81548152906001019060200180831161072657829003601f168201915b5050505050905090565b60003361075b818585611074565b60019150505b92915050565b61076f61101a565b600e8190557f00000000000000000000000000000000000000000000000000000000000000008111156107dc5760405162461bcd60e51b815260206004820152601560248201527404b656570207461782062656c6f772046656543617605c1b6044820152606401610676565b7fa02824f65350567bc405e202b741e7ca6274004a9feeb44149df72b8bd599c97600e546040516106b091815260200190565b61081761101a565b6127107f000000000000000000000000000000000000000000000000000000000000000061084460025490565b61084e9190611ea7565b6108589190611ebe565b8110156108915760405162461bcd60e51b8152602060048201526007602482015266546f6f206c6f7760c81b6044820152606401610676565b600b8190556040518181527f3046ad62de8b70d396246aaed19ff2559ff20df8706520cbde58320766c42762906020016106b0565b6108ce61101a565b8281146109165760405162461bcd60e51b81526020600482015260166024820152750c2e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b6044820152606401610676565b60005b8381101561097c5761096a3386868481811061093757610937611f1a565b905060200201602081019061094c9190611e31565b85858581811061095e5761095e611f1a565b90506020020135611198565b8061097481611f30565b915050610919565b5050505050565b60003361099185828561133e565b61099c8585856113b2565b506001949350505050565b60003361075b8185856109ba8383610f76565b6109c49190611f49565b611074565b6109d161101a565b600d8190557f0000000000000000000000000000000000000000000000000000000000000000811115610a3e5760405162461bcd60e51b815260206004820152601560248201527404b656570207461782062656c6f772046656543617605c1b6044820152606401610676565b7f5380a61520019ce8270d583f62f1b2b9f4f4372e1acaaf708f4865cecece0508600d546040516106b091815260200190565b610a7961101a565b6001600160a01b038216610acf5760405162461bcd60e51b815260206004820152601a60248201527f5f746f6b656e20616464726573732063616e6e6f7420626520300000000000006044820152606401610676565b306001600160a01b03831603610b1b5760405162461bcd60e51b815260206004820152601160248201527031b0b73737ba103a3434b9903a37b5b2b760791b6044820152606401610676565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015610b62573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b869190611f5c565b9050610b9383838361142e565b505050565b610ba061101a565b6001600160a01b038116610be55760405162461bcd60e51b815260206004820152600c60248201526b7a65726f206164647265737360a01b6044820152606401610676565b600c80546001600160a01b0319166001600160a01b0383169081179091556040519081527f71643334f77c29f51ee4d3b7c31f7606e763ead7b69553eb6d0da092ef5d79e3906020016106b0565b610c3b61101a565b610c456000611480565b565b610c4f61101a565b600f805460ff19169055600254600a55600254600b556040517fa4ffae85e880608d5d4365c2b682786545d136145537788e7e0940dff9f0b98c90600090a1565b6005546001600160a01b0316331480610cb357506013546001600160a01b031633145b610cf45760405162461bcd60e51b8152602060048201526012602482015271139bdd08185b1b1bddd959081d1bc81cd95d60721b6044820152606401610676565b6001600160a01b038216610d395760405162461bcd60e51b815260206004820152600c60248201526b5a65726f204164647265737360a01b6044820152606401610676565b6001600160a01b038216600081815260066020908152604091829020805460ff19168515159081179091558251938452908301527f998cce27cbf44405c67eb636a634d5e2f2e6ff248b3d71fbbbb022f3c4c6dd2d91015b60405180910390a15050565b610da561101a565b6008805460ff191660011790556040517fa56feb2d31b9a7424db0be063fd450863979c9e2382cf5110f869bd1ad361bb790600090a1565b6060600480546106ca90611ee0565b610df461101a565b6001600160a01b038216610e395760405162461bcd60e51b815260206004820152600c60248201526b5a65726f204164647265737360a01b6044820152606401610676565b80610e91576011546001600160a01b0390811690831603610e915760405162461bcd60e51b815260206004820152601260248201527121b0b73737ba103932b6b7bb32903830b4b960711b6044820152606401610676565b6001600160a01b038216600081815260076020908152604091829020805460ff19168515159081179091558251938452908301527f8f9f40630a1d139e6cf69b4f447ca47a36f10a017524efaa38252e516fa227ce9101610d91565b60003381610efb8286610f76565b905083811015610f5b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610676565b61099c8286868403611074565b60003361075b8185856113b2565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b610fa961101a565b6001600160a01b03811661100e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610676565b61101781611480565b50565b6005546001600160a01b03163314610c455760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610676565b6001600160a01b0383166110d65760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610676565b6001600160a01b0382166111375760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610676565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166111fc5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610676565b6001600160a01b03821661125e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610676565b6001600160a01b038316600090815260208190526040902054818110156112d65760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610676565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35b50505050565b600061134a8484610f76565b9050600019811461133857818110156113a55760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610676565b6113388484848403611074565b6001600160a01b03831660009081526006602052604090205460ff16806113f157506001600160a01b03821660009081526006602052604090205460ff165b1561140157610b93838383611198565b61140c8383836114d2565b611417838383611726565b6114219082611f75565b9050610b93838383611198565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610b9390849061186b565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60085460ff166115195760405162461bcd60e51b815260206004820152601260248201527154726164696e67206e6f742061637469766560701b6044820152606401610676565b600f5460ff1615610b93576001600160a01b03831660009081526009602052604090205460ff16801561156557506001600160a01b03821660009081526007602052604090205460ff16155b1561163157600a548111156115bc5760405162461bcd60e51b815260206004820152601d60248201527f427579207472616e7366657220616d6f756e742065786365656465642e0000006044820152606401610676565b600b546001600160a01b0383166000908152602081905260409020545b6115e39083611f49565b1115610b935760405162461bcd60e51b815260206004820152601b60248201527f556e61626c6520746f20657863656564204d61782057616c6c657400000000006044820152606401610676565b6001600160a01b03821660009081526009602052604090205460ff16801561167257506001600160a01b03831660009081526007602052604090205460ff16155b156116e557600a54811115610b935760405162461bcd60e51b815260206004820152603360248201527f53656c6c207472616e7366657220616d6f756e742065786365656473207468656044820152721036b0bc2a3930b739b0b1ba34b7b720b6ba1760691b6064820152608401610676565b6001600160a01b03821660009081526007602052604090205460ff16610b9357600b546001600160a01b0383166000908152602081905260409020546115d9565b601054306000908152602081905260408120549091111580156117505750600f54610100900460ff165b80156117655750600f5462010000900460ff16155b801561178957506001600160a01b03831660009081526009602052604090205460ff165b156117b457600f805462ff00001916620100001790556117a7611940565b600f805462ff0000191690555b6001600160a01b03831660009081526009602052604081205460ff1680156117de57506000600e54115b1561180557612710600e54846117f49190611ea7565b6117fe9190611ebe565b9050611852565b6001600160a01b03851660009081526009602052604090205460ff16801561182f57506000600d54115b1561185257612710600d54846118459190611ea7565b61184f9190611ebe565b90505b801561186357611863853083611198565b949350505050565b60006118c0826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661197f9092919063ffffffff16565b90508051600014806118e15750808060200190518101906118e19190611f88565b610b935760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610676565b3060009081526020819052604090205460105461195e906028611ea7565b81111561197657601054611973906028611ea7565b90505b6110178161198e565b60606118638484600085611ad5565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106119c3576119c3611f1a565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611a1c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a409190611fa5565b81600181518110611a5357611a53611f1a565b6001600160a01b039283166020918202929092010152601254600c5460405163791ac94760e01b81529183169263791ac94792611a9f9287926000928892909116904290600401611fc2565b600060405180830381600087803b158015611ab957600080fd5b505af1158015611acd573d6000803e3d6000fd5b505050505050565b606082471015611b365760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610676565b600080866001600160a01b03168587604051611b529190612033565b60006040518083038185875af1925050503d8060008114611b8f576040519150601f19603f3d011682016040523d82523d6000602084013e611b94565b606091505b5091509150611ba587838387611bb0565b979650505050505050565b60608315611c1f578251600003611c18576001600160a01b0385163b611c185760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610676565b5081611863565b6118638383815115611c345781518083602001fd5b8060405162461bcd60e51b81526004016106769190611c8b565b600060208284031215611c6057600080fd5b5035919050565b60005b83811015611c82578181015183820152602001611c6a565b50506000910152565b6020815260008251806020840152611caa816040850160208701611c67565b601f01601f19169190910160400192915050565b6001600160a01b038116811461101757600080fd5b60008060408385031215611ce657600080fd5b8235611cf181611cbe565b946020939093013593505050565b60008083601f840112611d1157600080fd5b50813567ffffffffffffffff811115611d2957600080fd5b6020830191508360208260051b8501011115611d4457600080fd5b9250929050565b60008060008060408587031215611d6157600080fd5b843567ffffffffffffffff80821115611d7957600080fd5b611d8588838901611cff565b90965094506020870135915080821115611d9e57600080fd5b50611dab87828801611cff565b95989497509550505050565b600080600060608486031215611dcc57600080fd5b8335611dd781611cbe565b92506020840135611de781611cbe565b929592945050506040919091013590565b60008060408385031215611e0b57600080fd5b8235611e1681611cbe565b91506020830135611e2681611cbe565b809150509250929050565b600060208284031215611e4357600080fd5b8135611e4e81611cbe565b9392505050565b801515811461101757600080fd5b60008060408385031215611e7657600080fd5b8235611e8181611cbe565b91506020830135611e2681611e55565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761076157610761611e91565b600082611edb57634e487b7160e01b600052601260045260246000fd5b500490565b600181811c90821680611ef457607f821691505b602082108103611f1457634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b600060018201611f4257611f42611e91565b5060010190565b8082018082111561076157610761611e91565b600060208284031215611f6e57600080fd5b5051919050565b8181038181111561076157610761611e91565b600060208284031215611f9a57600080fd5b8151611e4e81611e55565b600060208284031215611fb757600080fd5b8151611e4e81611cbe565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156120125784516001600160a01b031683529383019391830191600101611fed565b50506001600160a01b03969096166060850152505050608001529392505050565b60008251612045818460208701611c67565b919091019291505056fea2646970667358221220e3db23c839b3cf000b3fea1218f9f3e78f2e2f2fdb479f97c538483a3af0ee5c64736f6c63430008130033000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001c00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000084595161401484a000000000000000000000000000000f53ba9b4ee2e0fc5d047620e478a323ee3f788b50000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d000000000000000000000000f53ba9b4ee2e0fc5d047620e478a323ee3f788b500000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000007d0000000000000000000000000000000000000000000000a968163f0a57b40000000000000000000000000000000000000000000000000152d02c7e14af6800000000000000000000000000000332caef8e6ebb43d1421e8aa2e938b2d4424677200000000000000000000000000000000000000000000000000000000000007d00000000000000000000000000000000000000000000000000000000000000019000000000000000000000000000000000000000000000000000000000000001900000000000000000000000000000000000000000000000000000000000000064c696c425443000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034c494c0000000000000000000000000000000000000000000000000000000000