[ { "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": "uint256", "name": "epoch", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "totalSupply", "type": "uint256" } ], "name": "LogRebase", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" } ], "name": "OwnershipRenounced", "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": "SwapEnabled", "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" }, { "inputs": [], "name": "AquaInsuranceFundFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "AquaInsuranceFundReceiver", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "DECIMALS", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MAX_UINT256", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "RATE_DECIMALS", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "TIME_STEP", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "_autoAddLiquidity", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "_autoRebase", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "_decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "_excludeFromLimit", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "_initRebaseStartTime", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "_lastAddLiquidityTime", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "_lastRebasedTime", "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": "_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": "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": "value", "type": "uint256" } ], "name": "approve", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "autoLiquidityReceiver", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "who", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "blackhole", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "blackholeFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "blacklist", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_addr", "type": "address" } ], "name": "checkFeeExempt", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "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": "feeDenominator", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getCirculatingSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getCurrentDay", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "accuracy", "type": "uint256" } ], "name": "getLiquidityBacking", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getUserHoldLimit", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getUserSellLimit", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "holdLimit", "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": [], "name": "isNotInSwap", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isOwner", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "limitDenominator", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "liquidityFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "manualSync", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "nftFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "nftFeeReceiver", "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": "pair", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pairAddress", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pairContract", "outputs": [ { "internalType": "contract IPancakeSwapPair", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "router", "outputs": [ { "internalType": "contract IPancakeSwapRouter", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellLimit", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "_flag", "type": "bool" } ], "name": "setAutoAddLiquidity", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "_flag", "type": "bool" } ], "name": "setAutoRebase", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_botAddress", "type": "address" }, { "internalType": "bool", "name": "_flag", "type": "bool" } ], "name": "setBotBlacklist", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_address", "type": "address" }, { "internalType": "bool", "name": "_bool", "type": "bool" } ], "name": "setExcludeFromLimit", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_autoLiquidityReceiver", "type": "address" }, { "internalType": "address", "name": "_treasuryReceiver", "type": "address" }, { "internalType": "address", "name": "_AquaInsuranceFundReceiver", "type": "address" }, { "internalType": "address", "name": "_blackhole", "type": "address" }, { "internalType": "address", "name": "_nftFeeReceiver", "type": "address" } ], "name": "setFeeReceivers", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_address", "type": "address" } ], "name": "setLP", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_holdLimit", "type": "uint256" }, { "internalType": "uint256", "name": "_sellLimit", "type": "uint256" } ], "name": "setLimit", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_pairAddress", "type": "address" } ], "name": "setPairAddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_addr", "type": "address" } ], "name": "setWhitelist", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "sold", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "startTime", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "swapEnabled", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "toggleSwap", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "totalFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "value", "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": "value", "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": "treasuryFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "treasuryReceiver", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "usdcReceiver", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "withdrawAllToTreasury", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
60c06040526008608081905267417175617269757360c01b60a09081526200002b9160039190620007e9565b50604080518082019091526004808252634171756160e01b6020909201918252620000579181620007e9565b506005805460ff191681179055602860078190556019600881905560646009819055600a829055600b829055600f600c55620000bc92620000a891908290846200061b602090811b62001c5717901c565b6200061b60201b62001c571790919060201c565b600d556103e8600e55604b601055600f601155612710601255601380546001600160a01b031990811661dead1790915560148054821690556015805490911673a7d7079b0fead91f3e65f86e8915cb59c1a4c664179055601c805460ff60a01b19908116909155601e805490911690553480156200013957600080fd5b506040805180820182526008815267417175617269757360c01b6020808301918252835180850190945260048452634171756160e01b9084015281519192916005916200018a9160009190620007e9565b508151620001a0906001906020850190620007e9565b506002805460ff191660ff9290921691909117610100600160a81b03191661010033021790555050604051606090620001dc602082016200087e565b818103601f199081018352601f90910116604081815260155460601b6001600160601b031916602080840191909152815160148185030181526034909301909152815191810191909120825192935091600091839190850183f56015546040805163189acdbd60e31b81526001600160a01b03928316600482015290519293509083169163c4d66de89160248082019260009290919082900301818387803b1580156200028857600080fd5b505af11580156200029d573d6000803e3d6000fd5b5050601980546001600160a01b038086166001600160a01b031992831617909255601d80549091167360ae616a2155ee3d9a68541ba4544862310933d417908190556040805163c45a015560e01b8152905191909216935063c45a015592506004808301926020929190829003018186803b1580156200031c57600080fd5b505afa15801562000331573d6000803e3d6000fd5b505050506040513d60208110156200034857600080fd5b5051601554604080516364e329cb60e11b81526001600160a01b0392831660048201523060248201529051919092169163c9c653969160448083019260209291908290030181600087803b158015620003a057600080fd5b505af1158015620003b5573d6000803e3d6000fd5b505050506040513d6020811015620003cc57600080fd5b5051601e80546001600160a01b03199081166001600160a01b039384161782556016805473b735a4c0618ec3c90b667aacb8dbddf80507fec690831681179091556017805483168217815560188054841683179055601a8054841683179055601b80548416909217909155306000908152602560209081526040808320601d5488168452825280832060001990559454601c805491881691909516811790945560058054610100600160a81b031916610100909502949094179093556506d23ad5f80060229081559154909416845260248252919092206504ec57ab57ff19908190559054620004c5926200067d811b62001cb117901c565b60235542601f8190556020818155600f91909155601e805460ff60b01b1960ff60a81b19909116600160a81b1716600160b01b178155601780546001600160a01b039081166000908152600685526040808220805460ff19908116600190811790925530845282842080548216831790556028909752818320805488168217905594548316825280822080549096169094179094559054825163f2fde38b60e01b8152908216600482015291519084169263f2fde38b926024808201939182900301818387803b1580156200059957600080fd5b505af1158015620005ae573d6000803e3d6000fd5b5050601754620005ca92506001600160a01b03169050620006c7565b60175460225460408051918252516001600160a01b03909216916000917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef919081900360200190a3505050620008a3565b60008282018381101562000676576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b60006200067683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506200074260201b60201c565b6001600160a01b038116620006db57600080fd5b6002546040516001600160a01b0380841692610100900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600280546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b60008183620007d25760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015620007965781810151838201526020016200077c565b50505050905090810190601f168015620007c45780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581620007df57fe5b0495945050505050565b828054600181600116156101000203166002900490600052602060002090601f0160209004810192826200082157600085556200086c565b82601f106200083c57805160ff19168380011785556200086c565b828001600101855582156200086c579182015b828111156200086c5782518255916020019190600101906200084f565b506200087a9291506200088c565b5090565b6106068062003ba483390190565b5b808211156200087a57600081556001016200088d565b6132f180620008b36000396000f3fe60806040526004361061042a5760003560e01c8063715018a611610229578063afb9cf6d1161012e578063d28d8852116100b6578063e15beb801161007a578063e15beb8014610d28578063f2fde38b14610d54578063f34447f714610d87578063f887ea4014610d9c578063f9f92be414610db157610431565b8063d28d885214610c66578063d439979014610c7b578063d51ed1c814610cae578063dbf25c2914610cd8578063dd62ed3e14610ced57610431565b8063c5844ba7116100fd578063c5844ba714610be6578063c81c6edc14610bfb578063ca33e64c14610c10578063cc32d17614610c25578063cfbac92f14610c3a57610431565b8063afb9cf6d14610b74578063b09f126614610b89578063bd59558114610b9e578063bfceae6314610bb357610431565b806395d89b41116101b1578063a22d483211610180578063a22d483214610aa5578063a457c2d714610ad8578063a8aa1b3114610b11578063a8b0898214610b26578063a9059cbb14610b3b57610431565b806395d89b4114610a5157806398118cb414610a665780639b2912cc14610a7b5780639b87676c14610a9057610431565b806383b4ac68116101f857806383b4ac68146109ca578063854cff2f146109df5780638da5cb5b14610a125780638f32d59b14610a275780639071adc014610a3c57610431565b8063715018a614610976578063753d02a11461098b57806378e97925146109a05780637f74f489146109b557610431565b806332bc298c1161032f5780634d709adf116102b75780636912652c116102865780636912652c146108c95780636ccaa863146108de5780636ddd1713146109195780636f68ebae1461092e57806370a082311461094357610431565b80634d709adf146108515780634f91e48c146108665780635a604c521461087b5780635b0833cc1461089057610431565b806339509351116102fe57806339509351146107c45780633e6968b6146107fd5780633e935fe8146108125780633eaaf86b146108275780634615c2a71461083c57610431565b806332bc298c1461074a57806333a581d21461075f578063360fdec91461077457806337c9be871461078957610431565b806321ce6c17116103b25780632e0f2625116103815780632e0f2625146106ad5780632f34d282146106c2578063313ce567146106f557806332424aa31461072057806332b756831461073557610431565b806321ce6c171461062b57806323b872dd146106405780632b112e49146106835780632b14ca561461069857610431565b806318160ddd116103f957806318160ddd1461056557806318abb6351461057a5780631df4ccfc146105d15780631ff8d507146105e6578063207add91146105fb57610431565b806306fdde031461043657806308b1fd8f146104c0578063095ea7b3146104f1578063180b0d7e1461053e57610431565b3661043157005b600080fd5b34801561044257600080fd5b5061044b610de4565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561048557818101518382015260200161046d565b50505050905090810190601f1680156104b25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156104cc57600080fd5b506104d5610e7a565b604080516001600160a01b039092168252519081900360200190f35b3480156104fd57600080fd5b5061052a6004803603604081101561051457600080fd5b506001600160a01b038135169060200135610e89565b604080519115158252519081900360200190f35b34801561054a57600080fd5b50610553610ef0565b60408051918252519081900360200190f35b34801561057157600080fd5b50610553610ef6565b34801561058657600080fd5b506105cf600480360360a081101561059d57600080fd5b506001600160a01b03813581169160208101358216916040820135811691606081013582169160809091013516610efc565b005b3480156105dd57600080fd5b50610553610f6c565b3480156105f257600080fd5b506105cf610f72565b34801561060757600080fd5b506105cf6004803603604081101561061e57600080fd5b5080359060200135610fc1565b34801561063757600080fd5b506105536110a5565b34801561064c57600080fd5b5061052a6004803603606081101561066357600080fd5b506001600160a01b038135811691602081013590911690604001356110cc565b34801561068f57600080fd5b506105536111ad565b3480156106a457600080fd5b5061055361120c565b3480156106b957600080fd5b50610553611212565b3480156106ce57600080fd5b506105cf600480360360208110156106e557600080fd5b50356001600160a01b0316611217565b34801561070157600080fd5b5061070a611250565b6040805160ff9092168252519081900360200190f35b34801561072c57600080fd5b5061070a611259565b34801561074157600080fd5b50610553611262565b34801561075657600080fd5b50610553611268565b34801561076b57600080fd5b5061055361126f565b34801561078057600080fd5b506104d5611275565b34801561079557600080fd5b506105cf600480360360408110156107ac57600080fd5b506001600160a01b0381351690602001351515611284565b3480156107d057600080fd5b5061052a600480360360408110156107e757600080fd5b506001600160a01b038135169060200135611304565b34801561080957600080fd5b50610553611397565b34801561081e57600080fd5b506105536113ac565b34801561083357600080fd5b506105536113c2565b34801561084857600080fd5b506105536113c8565b34801561085d57600080fd5b506104d56113ce565b34801561087257600080fd5b506105536113e2565b34801561088757600080fd5b5061070a6113e8565b34801561089c57600080fd5b50610553600480360360408110156108b357600080fd5b506001600160a01b0381351690602001356113ed565b3480156108d557600080fd5b5061052a61140a565b3480156108ea57600080fd5b506105cf6004803603604081101561090157600080fd5b506001600160a01b038135169060200135151561141a565b34801561092557600080fd5b5061052a611456565b34801561093a57600080fd5b50610553611466565b34801561094f57600080fd5b506105536004803603602081101561096657600080fd5b50356001600160a01b031661146c565b34801561098257600080fd5b506105cf611494565b34801561099757600080fd5b506105cf6114f4565b3480156109ac57600080fd5b5061055361155e565b3480156109c157600080fd5b506104d5611564565b3480156109d657600080fd5b5061052a611573565b3480156109eb57600080fd5b506105cf60048036036020811015610a0257600080fd5b50356001600160a01b0316611584565b348015610a1e57600080fd5b506104d56115b9565b348015610a3357600080fd5b5061052a6115cd565b348015610a4857600080fd5b506105536115e3565b348015610a5d57600080fd5b5061044b6115e9565b348015610a7257600080fd5b50610553611649565b348015610a8757600080fd5b5061055361164f565b348015610a9c57600080fd5b50610553611655565b348015610ab157600080fd5b506105cf60048036036020811015610ac857600080fd5b50356001600160a01b031661165b565b348015610ae457600080fd5b5061052a60048036036040811015610afb57600080fd5b506001600160a01b03813516906020013561168e565b348015610b1d57600080fd5b506104d5611777565b348015610b3257600080fd5b506104d5611786565b348015610b4757600080fd5b5061052a60048036036040811015610b5e57600080fd5b506001600160a01b038135169060200135611795565b348015610b8057600080fd5b5061052a6117c1565b348015610b9557600080fd5b5061044b6117d1565b348015610baa57600080fd5b506105cf61185f565b348015610bbf57600080fd5b5061052a60048036036020811015610bd657600080fd5b50356001600160a01b0316611a28565b348015610bf257600080fd5b506104d5611a3d565b348015610c0757600080fd5b50610553611a4c565b348015610c1c57600080fd5b506104d5611a52565b348015610c3157600080fd5b50610553611a61565b348015610c4657600080fd5b506105cf60048036036020811015610c5d57600080fd5b50351515611a67565b348015610c7257600080fd5b5061044b611ab9565b348015610c8757600080fd5b5061052a60048036036020811015610c9e57600080fd5b50356001600160a01b0316611b14565b348015610cba57600080fd5b5061055360048036036020811015610cd157600080fd5b5035611b32565b348015610ce457600080fd5b50610553611b86565b348015610cf957600080fd5b5061055360048036036040811015610d1057600080fd5b506001600160a01b0381358116916020013516611b8c565b348015610d3457600080fd5b506105cf60048036036020811015610d4b57600080fd5b50351515611bb7565b348015610d6057600080fd5b506105cf60048036036020811015610d7757600080fd5b50356001600160a01b0316611c0a565b348015610d9357600080fd5b506104d5611c24565b348015610da857600080fd5b506104d5611c33565b348015610dbd57600080fd5b5061052a60048036036020811015610dd457600080fd5b50356001600160a01b0316611c42565b60008054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610e705780601f10610e4557610100808354040283529160200191610e70565b820191906000526020600020905b815481529060010190602001808311610e5357829003601f168201915b5050505050905090565b6017546001600160a01b031681565b3360008181526025602090815260408083206001600160a01b038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a35060015b92915050565b600e5481565b60225490565b610f046115cd565b610f0d57600080fd5b601680546001600160a01b03199081166001600160a01b03978816179091556017805482169587169590951790945560188054851693861693909317909255601a80548416918516919091179055601b80549092169216919091179055565b600d5481565b610f7a6115cd565b610f8357600080fd5b601c805460ff60a01b1916600160a01b1790556040517f41c787961cb389554b90a8dbfb700790a3f278f50ba1d330c0b555d884789b5a90600090a1565b610fc96115cd565b610fd257600080fd5b60058210158015610fe557506127108211155b611036576040805162461bcd60e51b815260206004820152601260248201527f496e76616c696420686f6c64206c696d69740000000000000000000000000000604482015290519081900360640190fd5b6005811015801561104957506127108111155b61109a576040805162461bcd60e51b815260206004820152601260248201527f496e76616c69642073656c6c206c696d69740000000000000000000000000000604482015290519081900360640190fd5b601191909155601055565b60006110c76012546110c16011546110bb6111ad565b90611cf3565b90611cb1565b905090565b6000826001600160a01b0381166110e257600080fd5b6001600160a01b03851660009081526025602090815260408083203384529091529020546000191461119657604080518082018252601681527f496e73756666696369656e7420416c6c6f77616e6365000000000000000000006020808301919091526001600160a01b0388166000908152602582528381203382529091529190912054611171918590611d4c565b6001600160a01b03861660009081526025602090815260408083203384529091529020555b6111a1858585611de3565b50600195945050505050565b602354601a546001600160a01b0390811660009081526024602052604080822054601454841683528183205460135490941683529082205491936110c79390926110c192916112069182906504ec57ab57ff1990612240565b90612240565b600a5481565b600581565b61121f6115cd565b61122857600080fd5b600580546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b60025460ff1690565b60055460ff1681565b60205481565b6201518081565b60001981565b601b546001600160a01b031681565b61128c6115cd565b61129557600080fd5b61129e82612282565b6112d95760405162461bcd60e51b815260040180806020018281038252603b815260200180613206603b913960400191505060405180910390fd5b6001600160a01b03919091166000908152602660205260409020805460ff1916911515919091179055565b3360009081526025602090815260408083206001600160a01b03861684529091528120546113329083611c57565b3360008181526025602090815260408083206001600160a01b0389168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a350600192915050565b60006110c7620151806110c142600f54612288565b60006110c76012546110c16010546110bb6111ad565b60225481565b60095481565b60055461010090046001600160a01b031681565b60105481565b600781565b602760209081526000928352604080842090915290825290205481565b601e54600160b01b900460ff1681565b6114226115cd565b61142b57600080fd5b6001600160a01b03919091166000908152602860205260409020805460ff1916911515919091179055565b601c54600160a01b900460ff1681565b60115481565b6023546001600160a01b0382166000908152602460205260408120549091610eea9190611cb1565b61149c6115cd565b6114a557600080fd5b6002546040516101009091046001600160a01b0316907ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482090600090a260028054610100600160a81b0319169055565b601e60009054906101000a90046001600160a01b03166001600160a01b031663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561154457600080fd5b505af1158015611558573d6000803e3d6000fd5b50505050565b600f5481565b6018546001600160a01b031681565b601e54600160a01b900460ff161590565b61158c6115cd565b61159557600080fd5b6001600160a01b03166000908152600660205260409020805460ff19166001179055565b60025461010090046001600160a01b031690565b60025461010090046001600160a01b0316331490565b600c5481565b60018054604080516020601f60026000196101008789161502019095169490940493840181900481028201810190925282815260609390929091830182828015610e705780601f10610e4557610100808354040283529160200191610e70565b60075481565b60215481565b601f5481565b6116636115cd565b61166c57600080fd5b601c80546001600160a01b0319166001600160a01b0392909216919091179055565b3360009081526025602090815260408083206001600160a01b03861684529091528120548083106116e2573360009081526025602090815260408083206001600160a01b0388168452909152812055611711565b6116ec8184612240565b3360009081526025602090815260408083206001600160a01b03891684529091529020555b3360008181526025602090815260408083206001600160a01b0389168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b601e546001600160a01b031681565b601c546001600160a01b031681565b6000826001600160a01b0381166117ab57600080fd5b6117b6338585611de3565b506001949350505050565b601e54600160a81b900460ff1681565b6004805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156118575780601f1061182c57610100808354040283529160200191611857565b820191906000526020600020905b81548152906001019060200180831161183a57829003601f168201915b505050505081565b601e805460ff60a01b1916600160a01b17905561187a6115cd565b61188357600080fd5b6023543060009081526024602052604081205490916118a29190611cb1565b9050600081116118e35760405162461bcd60e51b815260040180806020018281038252603281526020018061328a6032913960400191505060405180910390fd5b6040805160028082526060808301845292602083019080368337019050509050308160008151811061191157fe5b6001600160a01b03928316602091820292909201015260155482519116908290600190811061193c57fe5b6001600160a01b03928316602091820292909201810191909152601d54601754604051635c11d79560e01b81526004810187815260006024830181905292861660648301819052426084840181905260a060448501908152895160a486015289519690981697635c11d795978b978b969495939460c4019187810191028083838b5b838110156119d65781810151838201526020016119be565b505050509050019650505050505050600060405180830381600087803b1580156119ff57600080fd5b505af1158015611a13573d6000803e3d6000fd5b5050601e805460ff60a01b1916905550505050565b60286020526000908152604090205460ff1681565b6019546001600160a01b031681565b60125481565b6016546001600160a01b031681565b60085481565b611a6f6115cd565b611a7857600080fd5b8015611a9e57601e805460ff60b01b1916600160b01b8315150217905542602155611ab6565b601e805460ff60b01b1916600160b01b831515021790555b50565b6003805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156118575780601f1061182c57610100808354040283529160200191611857565b6001600160a01b031660009081526006602052604090205460ff1690565b602354601e546001600160a01b031660009081526024602052604081205490918291611b5d91611cb1565b9050611b7f611b6a6111ad565b6110c1611b78846002611cf3565b8690611cf3565b9392505050565b600b5481565b6001600160a01b03918216600090815260256020908152604080832093909416825291909152205490565b611bbf6115cd565b611bc857600080fd5b8015611bee57601e805460ff60a81b1916600160a81b8315150217905542602055611ab6565b601e8054821515600160a81b0260ff60a81b1990911617905550565b611c126115cd565b611c1b57600080fd5b611ab6816122a3565b601a546001600160a01b031681565b601d546001600160a01b031681565b60266020526000908152604090205460ff1681565b600082820183811015611b7f576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000611b7f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061231d565b600082611d0257506000610eea565b82820282848281611d0f57fe5b0414611b7f5760405162461bcd60e51b81526004018080602001828103825260218152602001806132416021913960400191505060405180910390fd5b60008184841115611ddb5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611da0578181015183820152602001611d88565b50505050905090810190601f168015611dcd5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6001600160a01b03831660009081526028602052604081205484908490849060ff16611e8057611e116113ac565b6001600160a01b03841660009081526027602052604081208391611e33611397565b815260200190815260200160002054011115611e805760405162461bcd60e51b81526004018080602001828103825260288152602001806132626028913960400191505060405180910390fd5b611e886115b9565b6001600160a01b0316876001600160a01b031614158015611ec25750611eac6115b9565b6001600160a01b0316866001600160a01b031614155b15611f2557601c54600160a01b900460ff16611f25576040805162461bcd60e51b815260206004820152601360248201527f53776170206973206e6f7420656e61626c656400000000000000000000000000604482015290519081900360640190fd5b6001600160a01b03871660009081526026602052604090205460ff16158015611f6757506001600160a01b03861660009081526026602052604090205460ff16155b611fa7576040805162461bcd60e51b815260206004820152600c60248201526b1a5b97d89b1858dadb1a5cdd60a21b604482015290519081900360640190fd5b601e54600160a01b900460ff1615611fcb57611fc4878787612382565b9350612196565b611fd3612414565b15611fe057611fe061247b565b611fe8612615565b15611ff557611ff5612667565b611ffd612b3a565b1561200a5761200a612b65565b600061202160235487611cf390919063ffffffff16565b6001600160a01b0389166000908152602460205260409020549091506120479082612240565b6001600160a01b03891660009081526024602052604081209190915561206d8989612f7f565b6120775781612082565b612082898984612fd3565b6001600160a01b0389166000908152602460205260409020549091506120a89082611c57565b6001600160a01b03808a16600090815260246020908152604080832094909455918c1681526027909152908120612101918991906120e4611397565b815260200190815260200160002054611c5790919063ffffffff16565b6001600160a01b038a16600090815260276020526040812090612122611397565b815260200190815260200160002081905550876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61217e60235485611cb190919063ffffffff16565b60408051918252519081900360200190a36001955050505b6001600160a01b03821660009081526028602052604090205460ff16612236576121be6110a5565b6023546001600160a01b0384166000908152602460205260409020546121e391611cb1565b1115612236576040805162461bcd60e51b815260206004820152601b60248201527f43616e6e6f7420627579206d6f7265207468616e206c696d69742e0000000000604482015290519081900360640190fd5b5050509392505050565b6000611b7f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611d4c565b3b151590565b60008183111561229b5750808203610eea565b506000610eea565b6001600160a01b0381166122b657600080fd5b6002546040516001600160a01b0380841692610100900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600280546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6000818361236c5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611da0578181015183820152602001611d88565b50600083858161237857fe5b0495945050505050565b60008061239a60235484611cf390919063ffffffff16565b6001600160a01b0386166000908152602460205260409020549091506123c09082612240565b6001600160a01b0380871660009081526024602052604080822093909355908616815220546123ef9082611c57565b6001600160a01b03851660009081526024602052604090205550600190509392505050565b601e54600090600160a81b900460ff168015612439575060225467010a741a46278000115b80156124505750601e546001600160a01b03163314155b80156124665750601e54600160a01b900460ff16155b80156110c75750506020546103840142101590565b601e54600160a01b900460ff161561249257612613565b601f5460205460009142908103919003826124af82610384611cb1565b905060006124be82600f611cf3565b90506301e133808410156124d6576109339450612503565b630d28688084106124ea5760029450612503565b6302d2760084106124fe57600e9450612503565b60d394505b60005b828110156125365761252b629896806110c1612522828a611c57565b60225490611cf3565b602255600101612506565b5060225461254c906504ec57ab57ff1990611cb1565b60235561256761255e83610384611cf3565b60205490611c57565b602081905550600560019054906101000a90046001600160a01b03166001600160a01b031663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156125bd57600080fd5b505af11580156125d1573d6000803e3d6000fd5b505060225460408051918252518493507f72725a3b1e5bd622d6bcd1339bb31279c351abe8f541ac7fd320f24e1b1641f292509081900360200190a250505050505b565b601e54600090600160b01b900460ff16801561263b5750601e54600160a01b900460ff16155b80156126525750601e546001600160a01b03163314155b80156110c75750506021546170800142101590565b601e805460ff60a01b1916600160a01b1790556023546016546001600160a01b031660009081526024602052604081205490916126a49190611cb1565b6016546001600160a01b0316600090815260246020526040808220543083529120549192506126d39190611c57565b30600090815260246020526040808220929092556016546001600160a01b03168152908120819055612706826002611cb1565b905060006127148383612240565b90508061272357505050612b2b565b6040805160028082526060808301845292602083019080368337019050509050308160008151811061275157fe5b6001600160a01b03928316602091820292909201015260155482519116908290600190811061277c57fe5b6001600160a01b03928316602091820292909201810191909152601554604080516370a0823160e01b8152306004820152905160009492909216926370a0823192602480840193829003018186803b1580156127d757600080fd5b505afa1580156127eb573d6000803e3d6000fd5b505050506040513d602081101561280157600080fd5b5051601d54601954604051635c11d79560e01b8152600481018781526000602483018190526001600160a01b0393841660648401819052426084850181905260a0604486019081528a5160a48701528a519899509590961696635c11d795968b9693958b95939491939260c490910190602087810191028083838b5b8381101561289557818101518382015260200161287d565b505050509050019650505050505050600060405180830381600087803b1580156128be57600080fd5b505af11580156128d2573d6000803e3d6000fd5b50505050601960009054906101000a90046001600160a01b03166001600160a01b0316633ccfd60b6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561292657600080fd5b505af115801561293a573d6000803e3d6000fd5b5050601554604080516370a0823160e01b81523060048201529051600094506129c1935085926001600160a01b0316916370a08231916024808301926020929190829003018186803b15801561298f57600080fd5b505afa1580156129a3573d6000803e3d6000fd5b505050506040513d60208110156129b957600080fd5b505190612240565b6015546040805163095ea7b360e01b81527360ae616a2155ee3d9a68541ba4544862310933d460048201526024810184905290519293506001600160a01b039091169163095ea7b3916044808201926020929091908290030181600087803b158015612a2c57600080fd5b505af1158015612a40573d6000803e3d6000fd5b505050506040513d6020811015612a5657600080fd5b50508415801590612a675750600081115b15612b2057601d546015546016546040805162e8e33760e81b81523060048201526001600160a01b039384166024820152604481018a90526064810186905260006084820181905260a4820181905292841660c48201524260e48201529051929093169263e8e33700926101048083019360609383900390910190829087803b158015612af357600080fd5b505af1158015612b07573d6000803e3d6000fd5b505050506040513d6060811015612b1d57600080fd5b50505b505042602155505050505b601e805460ff60a01b19169055565b601e54600090600160a01b900460ff161580156110c7575050601e546001600160a01b031633141590565b601e805460ff60a01b1916600160a01b179055602354306000908152602460205260408120549091612b979190611cb1565b905080612ba45750612b2b565b601554604080516370a0823160e01b815230600482015290516000926001600160a01b0316916370a08231916024808301926020929190829003018186803b158015612bef57600080fd5b505afa158015612c03573d6000803e3d6000fd5b505050506040513d6020811015612c1957600080fd5b50516040805160028082526060808301845293945090916020830190803683370190505090503081600081518110612c4d57fe5b6001600160a01b039283166020918202929092010152601554825191169082906001908110612c7857fe5b6001600160a01b03928316602091820292909201810191909152601d54601954604051635c11d79560e01b81526004810188815260006024830181905292861660648301819052426084840181905260a060448501908152895160a486015289519690981697635c11d795978c978b969495939460c4019187810191028083838b5b83811015612d12578181015183820152602001612cfa565b505050509050019650505050505050600060405180830381600087803b158015612d3b57600080fd5b505af1158015612d4f573d6000803e3d6000fd5b50505050601960009054906101000a90046001600160a01b03166001600160a01b0316633ccfd60b6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015612da357600080fd5b505af1158015612db7573d6000803e3d6000fd5b5050601554604080516370a0823160e01b8152306004820152905160009450612e0c935086926001600160a01b0316916370a08231916024808301926020929190829003018186803b15801561298f57600080fd5b6015546017546009546008549394506001600160a01b039283169363a9059cbb9390921691612e4d91612e3f9190611c57565b6008546110c1908790611cf3565b6040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015612e9357600080fd5b505af1158015612ea7573d6000803e3d6000fd5b505050506040513d6020811015612ebd57600080fd5b50506015546018546009546008546001600160a01b039384169363a9059cbb931691612efa91612eec91611c57565b6009546110c1908790611cf3565b6040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015612f4057600080fd5b505af1158015612f54573d6000803e3d6000fd5b505050506040513d6020811015612f6a57600080fd5b505050505050601e805460ff60a01b19169055565b601e546000906001600160a01b0384811691161480612fab5750601e546001600160a01b038381169116145b8015611b7f575050506001600160a01b031660009081526006602052604090205460ff161590565b600d54600854601e54600092919083906001600160a01b038781169116141561303a57613019600c54613013600a54600d54611c5790919063ffffffff16565b90611c57565b9250613032600a54600854611c5790919063ffffffff16565b9150600c5490505b6000613055846110bb600e5489611cb190919063ffffffff16565b9050613096613075600b546110bb600e548a611cb190919063ffffffff16565b601a546001600160a01b031660009081526024602052604090205490611c57565b601a546001600160a01b03166000908152602460205260409020556009546130eb906130d5906130c7908690611c57565b600e546110bb908a90611cb1565b3060009081526024602052604090205490611c57565b30600090815260246020526040902055600754600e5461313591613114916110bb908a90611cb1565b6016546001600160a01b031660009081526024602052604090205490611c57565b6016546001600160a01b0316600090815260246020526040902055600e54613189906131689084906110bb908a90611cb1565b601b546001600160a01b031660009081526024602052604090205490611c57565b601b546001600160a01b0390811660009081526024602052604090209190915560235430918a16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906131de908590611cb1565b60408051918252519081900360200190a36131f98682612240565b9897505050505050505056fe4f6e6c7920636f6e747261637420616464726573732c206e6f7420616c6c6f776564206578746572616e6c6c79206f776e6564206163636f756e74536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7743616e6e6f742073656c6c206f72207472616e73666572206d6f7265207468616e206c696d69742e5468657265206973206e6f204171756120746f6b656e206465706f736974656420696e20746f6b656e20636f6e7472616374a2646970667358221220a2ae30fc1caae42e80219b1b5d9db26083eb6ab1906d05b72cd055dd3873193d64736f6c63430007040033608060405234801561001057600080fd5b5060008054336001600160a01b031991821681178355600280549092161790556105c690819061004090396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c80638da5cb5b116100665780638da5cb5b146100fa5780638f32d59b14610102578063c4d66de81461011e578063f2fde38b14610144578063fc0c546a1461016a57610093565b80633ccfd60b146100985780633e413bee146100a257806370c8b173146100c6578063715018a6146100f2575b600080fd5b6100a0610172565b005b6100aa6102ea565b604080516001600160a01b039092168252519081900360200190f35b6100a0600480360360408110156100dc57600080fd5b506001600160a01b0381351690602001356102f9565b6100a06103ec565b6100aa610445565b61010a610454565b604080519115158252519081900360200190f35b6100a06004803603602081101561013457600080fd5b50356001600160a01b0316610465565b6100a06004803603602081101561015a57600080fd5b50356001600160a01b03166104f6565b6100aa610513565b6002546001600160a01b031633146101d1576040805162461bcd60e51b815260206004820152601360248201527f43616c6c6572206973206e6f7420746f6b656e00000000000000000000000000604482015290519081900360640190fd5b600154600254604080516370a0823160e01b815230600482015290516001600160a01b039384169363a9059cbb93169184916370a0823191602480820192602092909190829003018186803b15801561022957600080fd5b505afa15801561023d573d6000803e3d6000fd5b505050506040513d602081101561025357600080fd5b5051604080517fffffffff0000000000000000000000000000000000000000000000000000000060e086901b1681526001600160a01b03909316600484015260248301919091525160448083019260209291908290030181600087803b1580156102bc57600080fd5b505af11580156102d0573d6000803e3d6000fd5b505050506040513d60208110156102e657600080fd5b5050565b6001546001600160a01b031681565b610301610454565b61030a57600080fd5b6001600160a01b03821661035e57610320610445565b6001600160a01b03166108fc829081150290604051600060405180830381858888f19350505050158015610358573d6000803e3d6000fd5b506102e6565b816001600160a01b031663a9059cbb610375610445565b836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b1580156103bc57600080fd5b505af11580156103d0573d6000803e3d6000fd5b505050506040513d60208110156103e657600080fd5b50505050565b6103f4610454565b6103fd57600080fd5b600080546040516001600160a01b03909116917ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482091a2600080546001600160a01b0319169055565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b61046d610454565b61047657600080fd5b6001546001600160a01b0316156104d4576040805162461bcd60e51b815260206004820152601360248201527f416c726561647920696e697469616c697a656400000000000000000000000000604482015290519081900360640190fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6104fe610454565b61050757600080fd5b61051081610522565b50565b6002546001600160a01b031681565b6001600160a01b03811661053557600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b039290921691909117905556fea2646970667358221220a956a81e24415eabfcbd3ec2f8d7d075beebe021c73a6556fb2432856d7abd4164736f6c63430007040033