561 txs
6.4k calls
constructor
constructor(string name_, string symbol_, uint256 decimals_, uint256 total_, address USDT_, address fundAddress_, address ReceiveAddress_, address swapRouter_, address _owner)
functions
_add_fee
viewfunction _add_fee() view returns (uint256)
_buy_fee_forReward
viewfunction _buy_fee_forReward() view returns (uint256)
_buy_fee
viewfunction _buy_fee() view returns (uint256)
_feeWhiteList
viewfunction _feeWhiteList(address) view returns (bool)
_getReserves
viewfunction _getReserves() view returns (uint256 rOther, uint256 rThis, uint256 balanceOther)
_mainPair
viewfunction _mainPair() view returns (address)
_remove_fee
viewfunction _remove_fee() view returns (uint256)
_sell_fee_forPool_firstHour
viewfunction _sell_fee_forPool_firstHour() view returns (uint256)
_sell_fee_forPool
viewfunction _sell_fee_forPool() view returns (uint256)
_sell_fee_forReward
viewfunction _sell_fee_forReward() view returns (uint256)
_swapPairList
viewfunction _swapPairList(address) view returns (bool)
_swapRouter
viewfunction _swapRouter() view returns (address)
_swapRouters
viewfunction _swapRouters(address) view returns (bool)
_tokenDistributor
viewfunction _tokenDistributor() view returns (address)
_tokenDistributorCD
viewfunction _tokenDistributorCD() view returns (address)
_total_fee
viewfunction _total_fee() view returns (uint256)
allowance
viewfunction allowance(address owner, address spender) view returns (uint256)
antiSYNC
viewfunction antiSYNC() view returns (bool)
balanceOf
viewfunction balanceOf(address account) view returns (uint256)
CDAddress
viewfunction CDAddress() view returns (address)
CDPoolAddress
viewfunction CDPoolAddress() view returns (address)
CTStakingPool
viewfunction CTStakingPool() view returns (address)
decimals
viewfunction decimals() view returns (uint256)
fundAddress
viewfunction fundAddress() view returns (address)
getUserHoldLpTokenAmount
viewfunction getUserHoldLpTokenAmount(address user) view returns (uint256)
holderRewardCondition
viewfunction holderRewardCondition() view returns (uint256)
holders
viewfunction holders(uint256) view returns (address)
leftAutoPoolAmount
viewfunction leftAutoPoolAmount() view returns (uint256)
leftRewardAmount
viewfunction leftRewardAmount() view returns (uint256)
leftRewardUSDTAmount
viewfunction leftRewardUSDTAmount() view returns (uint256)
limitTimes
viewfunction limitTimes() view returns (uint256)
limitUSDT
viewfunction limitUSDT() view returns (uint256)
lpRewardGas
viewfunction lpRewardGas() view returns (uint256)
lpValueByUSDT
viewfunction lpValueByUSDT() view returns (uint256)
name
viewfunction name() view returns (string)
numTokensSellRate
viewfunction numTokensSellRate() view returns (uint256)
owner
viewfunction owner() view returns (address)
processRewardWaitBlock
viewfunction processRewardWaitBlock() view returns (uint256)
startTradeBlock
viewfunction startTradeBlock() view returns (uint256)
swapAtAmount
viewfunction swapAtAmount() view returns (uint256)
symbol
viewfunction symbol() view returns (string)
totalSupply
viewfunction totalSupply() view returns (uint256)
USDT
viewfunction USDT() view returns (address)
use_add_mode
viewfunction use_add_mode() view returns (bool)
use_buy_burn_mode
viewfunction use_buy_burn_mode() view returns (bool)
use_buy_mode
viewfunction use_buy_mode() view returns (bool)
use_remove_mode
viewfunction use_remove_mode() view returns (bool)
use_sell_mode
viewfunction use_sell_mode() view returns (bool)
approve
nonpayablefunction approve(address spender, uint256 amount) returns (bool)
claimBalance
nonpayablefunction claimBalance()
claimToken
nonpayablefunction claimToken(address token, uint256 amount, address to)
launch
nonpayablefunction launch()
multiAddHolder
nonpayablefunction multiAddHolder(address[] accounts)
renounceOwnership
nonpayablefunction renounceOwnership()
setAntiSYNCEnable
nonpayablefunction setAntiSYNCEnable(bool s)
setCDAddress
nonpayablefunction setCDAddress(address _CDAddress, address _CTStakingPool)
setCDPoolAddress
nonpayablefunction setCDPoolAddress(address _CDPoolAddress)
setExcludeHolder
nonpayablefunction setExcludeHolder(address addr, bool enable)
setFeeList
nonpayablefunction setFeeList(uint256 __buy_fee, uint256 __buy_fee_forReward, uint256 __sell_fee_forPool, uint256 __sell_fee_forPool_firstHour, uint256 __sell_fee_forReward, uint256 __add_fee, uint256 __remove_fee)
setFeeWhiteList
nonpayablefunction setFeeWhiteList(address[] addr, bool enable)
setFundAddress
nonpayablefunction setFundAddress(address addr)
setHolderRewardCondition
nonpayablefunction setHolderRewardCondition(uint256 amount)
setLimitTimes
nonpayablefunction setLimitTimes(uint256 _limitTimes)
setLimitUSDT
nonpayablefunction setLimitUSDT(uint256 _limitUSDT)
setLpRewardGas
nonpayablefunction setLpRewardGas(uint256 newValue)
setLpValueByUSDT
nonpayablefunction setLpValueByUSDT(uint256 _lpValueByUSDT)
setMode
nonpayablefunction setMode(bool _use_add_mode, bool _use_remove_mode, bool _use_buy_mode, bool _use_sell_mode, bool _use_buy_burn_mode)
setNumTokensSellRate
nonpayablefunction setNumTokensSellRate(uint256 newValue)
setProcessRewardWaitBlock
nonpayablefunction setProcessRewardWaitBlock(uint256 newValue)
setSwapAtAmount
nonpayablefunction setSwapAtAmount(uint256 newValue)
setSwapPairList
nonpayablefunction setSwapPairList(address addr, bool enable)
setSwapRouter
nonpayablefunction setSwapRouter(address addr, bool enable)
transfer
nonpayablefunction transfer(address recipient, uint256 amount) returns (bool)
transferFrom
nonpayablefunction transferFrom(address sender, address recipient, uint256 amount) returns (bool)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
_tokenTransferEvent
event _tokenTransferEvent(address _sender, address _recipient, uint256 _tAmount, bool is_takeFee, bool is_buy, bool is_sell, bool is_transfer, bool is_add, bool is_remove)
addHolderEvent
event addHolderEvent(address _user, uint256 _index, uint256 _time)
Approval
event Approval(address indexed owner, address indexed spender, uint256 value)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
processRewardEvent
event processRewardEvent(address _tx_origin, uint256 _time, uint256 _times, uint256 _hoderLength, uint256 _endIndex)
SwapFailedWithReason
event SwapFailedWithReason(string _reason)
swapTokenForFundEvent
event swapTokenForFundEvent(uint256 _time, uint256 _tokenAmount, uint256 _swapFee, uint256 _forPool)
Transfer
event Transfer(address indexed from, address indexed to, uint256 value)
errors
No errors.
creation bytecode
0x6080604052600a600c556014600d819055600e819055601e600f81905561012c6010556000601181905560128190556103e8601355825464ffff000000191664010100000017909255606460185568056bc75e2d631000006019819055601a55601b9190915562055730601c55610e109055600160215534801561008257600080fd5b506040516155263803806155268339810160408190526100a1916106c0565b600080546001600160a01b03191633908117825560405190918291600080516020615506833981519152908290a35060086100dc8a8261081e565b5060096100e9898261081e565b50600a879055600b869055600180546001600160a01b0319166001600160a01b038616908117909155610122903b63ffffffff16151590565b1561017e5760405162461bcd60e51b815260206004820152602160248201527f46756e6420616464726573732063616e6e6f74206265206120636f6e747261636044820152601d60fa1b60648201526084015b60405180910390fd5b600480546001600160a01b03199081166001600160a01b038581169182178455600380549093168982161783553060009081526027602081815260408084208685528252808420600019908190558986168552928252808420868552909152918290208190559354905163095ea7b360e01b815294850192909252602484019290925284928692919091169063095ea7b3906044016020604051808303816000875af1158015610232573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061025691906108dc565b506001600160a01b0382166000818152602560209081526040808320805460ff19166001179055805163c45a015560e01b8152905192939263c45a0155926004808401939192918290030181865afa1580156102b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102da9190610905565b6040516364e329cb60e11b81523060048201526001600160a01b038a8116602483015291925060009183169063c9c65396906044016020604051808303816000875af115801561032e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103529190610905565b600280546001600160a01b0319166001600160a01b038381169182179092556000908152602960209081526040808320805460ff19166001179055928716808352602682528383208f905592518e8152939450919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3600180546001600160a01b039081166000908152602860209081526040808320805460ff199081168717909155888516845281842080548216871790553084528184208054821687179055938a1683528083208054851686179055602b9091527fe18c65fb8491ea105d3652ed62258476aaccd771ae89682addbba12f33acc62a805484168517905561dead82527fcb067d08c3b0752a639a17b312edc0e4384bd60a697642bbd8bdd8260a31a3478054909316909317909155601f5551899061049d906105d2565b6001600160a01b039091168152602001604051809103906000f0801580156104c9573d6000803e3d6000fd5b50600580546001600160a01b0319166001600160a01b03929092169190911790556104f385610505565b50505050505050505050505050610922565b6000546001600160a01b031633146105485760405162461bcd60e51b815260206004820152600660248201526510b7bbb732b960d11b6044820152606401610175565b6001600160a01b0381166105895760405162461bcd60e51b815260206004820152600860248201526706e657720697320360c41b6044820152606401610175565b600080546040516001600160a01b038085169392169160008051602061550683398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b610147806153bf83390190565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261060657600080fd5b81516001600160401b0381111561061f5761061f6105df565b604051601f8201601f19908116603f011681016001600160401b038111828210171561064d5761064d6105df565b60405281815283820160200185101561066557600080fd5b60005b8281101561068457602081860181015183830182015201610668565b506000918101602001919091529392505050565b6001600160a01b03811681146106ad57600080fd5b50565b80516106bb81610698565b919050565b60008060008060008060008060006101208a8c0312156106df57600080fd5b89516001600160401b038111156106f557600080fd5b6107018c828d016105f5565b60208c0151909a5090506001600160401b0381111561071f57600080fd5b61072b8c828d016105f5565b60408c015160608d015160808e0151929b509099509750905061074d81610698565b945061075b60a08b016106b0565b935061076960c08b016106b0565b925061077760e08b016106b0565b91506107866101008b016106b0565b90509295985092959850929598565b600181811c908216806107a957607f821691505b6020821081036107c957634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561081957806000526020600020601f840160051c810160208510156107f65750805b601f840160051c820191505b818110156108165760008155600101610802565b50505b505050565b81516001600160401b03811115610837576108376105df565b61084b816108458454610795565b846107cf565b6020601f82116001811461087f57600083156108675750848201515b600019600385901b1c1916600184901b178455610816565b600084815260208120601f198516915b828110156108af578785015182556020948501946001909201910161088f565b50848210156108cd5786840151600019600387901b60f8161c191681555b50505050600190811b01905550565b6000602082840312156108ee57600080fd5b815180151581146108fe57600080fd5b9392505050565b60006020828403121561091757600080fd5b81516108fe81610698565b614a8e806109316000396000f3fe6080604052600436106104405760003560e01c80636402511e11610234578063b1b4d97a1161012e578063d37e7683116100b6578063e82bef291161007a578063e82bef2914610cb1578063ea10510e14610cd1578063eb10b74114610cf1578063f2fde38b14610d07578063f31b059114610d2757600080fd5b8063d37e768314610bf5578063d943781014610c0b578063dbf7d7cc14610c2b578063dd62ed3e14610c4b578063e01811cc14610c9157600080fd5b8063c52088c4116100fd578063c52088c414610b4f578063c54e44eb14610b6f578063c56ca60514610b8f578063ce4d9f1514610baf578063d285e6ab14610bdf57600080fd5b8063b1b4d97a14610ad5578063bfac5ee014610aef578063c213d62d14610b0f578063c2d737f614610b2f57600080fd5b80638bef37a4116101bc5780639abd2f4c116101805780639abd2f4c14610a3f5780639fafee3114610a5f578063a842486114610a75578063a9059cbb14610a95578063ac7f8d8314610ab557600080fd5b80638bef37a4146109ca5780638cd63f62146109e05780638da5cb5b146109f65780638f6cd17d14610a1457806395d89b4114610a2a57600080fd5b80637c7e56ad116102035780637c7e56ad1461093f5780638091caa01461095557806385dc30041461097457806386917524146109945780638718b24f146109aa57600080fd5b80636402511e146108ca5780636c5eadd3146108ea57806370a082311461090a578063715018a61461092a57600080fd5b80632171dcc9116103455780633bb82eb6116102cd578063515e93dc11610291578063515e93dc14610848578063553193ca1461085e5780635ae1ab8c14610874578063605324f214610894578063621823e6146108b457600080fd5b80633bb82eb6146107ac5780633c11100d146107cc5780634188bf5a146107fc5780634330efe51461081c578063491786a01461083257600080fd5b806330509bca1161031457806330509bca1461072b578063313ce56714610740578063328223451461075557806335c960891461077557806338d577381461079657600080fd5b80632171dcc9146106b55780632175fd68146106d557806323b872dd146106eb5780632a11ced01461070b57600080fd5b80630c95feae116103c8578063166a6b9d11610397578063166a6b9d1461062a57806317455c851461064a57806318160ddd146106605780631dbbaebd14610675578063206c17bb1461069557600080fd5b80630c95feae1461059f5780630d8493da146105b55780630dfdafac146105f4578063150e4c471461060a57600080fd5b8063060e304e1161040f578063060e304e146104f857806306fdde0314610518578063095ea7b31461053a5780630baca6961461055a5780630c6910411461057e57600080fd5b806301339c211461044c57806301873d8f1461046357806301986fad146104a857806305833c2b146104d857600080fd5b3661044757005b600080fd5b34801561045857600080fd5b50610461610d49565b005b34801561046f57600080fd5b5061049361047e36600461406d565b60256020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b3480156104b457600080fd5b506104936104c336600461406d565b60286020526000908152604090205460ff1681565b3480156104e457600080fd5b506104616104f3366004614098565b610dd2565b34801561050457600080fd5b506104616105133660046140d1565b610e27565b34801561052457600080fd5b5061052d610eb2565b60405161049f919061410e565b34801561054657600080fd5b50610493610555366004614141565b610f44565b34801561056657600080fd5b50610570600d5481565b60405190815260200161049f565b34801561058a57600080fd5b50601454610493906301000000900460ff1681565b3480156105ab57600080fd5b50610570601e5481565b3480156105c157600080fd5b506014546105dc90600160281b90046001600160a01b031681565b6040516001600160a01b03909116815260200161049f565b34801561060057600080fd5b5061057060245481565b34801561061657600080fd5b506104616106253660046141b9565b610f5b565b34801561063657600080fd5b506104616106453660046140d1565b610ff2565b34801561065657600080fd5b5061057060125481565b34801561066c57600080fd5b50600b54610570565b34801561068157600080fd5b50610461610690366004614210565b611021565b3480156106a157600080fd5b506004546105dc906001600160a01b031681565b3480156106c157600080fd5b506104616106d0366004614098565b61113b565b3480156106e157600080fd5b5061057060235481565b3480156106f757600080fd5b50610493610706366004614252565b611190565b34801561071757600080fd5b506105dc6107263660046140d1565b611227565b34801561073757600080fd5b50610461611251565b34801561074c57600080fd5b50600a54610570565b34801561076157600080fd5b50610461610770366004614293565b61128d565b34801561078157600080fd5b5060005461049390600160a81b900460ff1681565b3480156107a257600080fd5b50610570600c5481565b3480156107b857600080fd5b506104616107c73660046140d1565b6112d7565b3480156107d857600080fd5b506104936107e736600461406d565b60296020526000908152604090205460ff1681565b34801561080857600080fd5b506002546105dc906001600160a01b031681565b34801561082857600080fd5b5061057060225481565b34801561083e57600080fd5b50610570600e5481565b34801561085457600080fd5b5061057060105481565b34801561086a57600080fd5b5061057060175481565b34801561088057600080fd5b506015546105dc906001600160a01b031681565b3480156108a057600080fd5b506104616108af3660046140d1565b611306565b3480156108c057600080fd5b5061057060215481565b3480156108d657600080fd5b506104616108e53660046140d1565b6113b3565b3480156108f657600080fd5b5061046161090536600461406d565b6113e2565b34801561091657600080fd5b5061057061092536600461406d565b61143a565b34801561093657600080fd5b5061046161150f565b34801561094b57600080fd5b50610570600f5481565b34801561096157600080fd5b5060145461049390610100900460ff1681565b34801561098057600080fd5b5061046161098f36600461406d565b611583565b3480156109a057600080fd5b50610570601b5481565b3480156109b657600080fd5b506005546105dc906001600160a01b031681565b3480156109d657600080fd5b5061057060135481565b3480156109ec57600080fd5b5061057060115481565b348015610a0257600080fd5b506000546001600160a01b03166105dc565b348015610a2057600080fd5b5061057060185481565b348015610a3657600080fd5b5061052d61163d565b348015610a4b57600080fd5b506006546105dc906001600160a01b031681565b348015610a6b57600080fd5b5061057060195481565b348015610a8157600080fd5b50610461610a90366004614098565b61164c565b348015610aa157600080fd5b50610493610ab0366004614141565b6116a1565b348015610ac157600080fd5b50610461610ad03660046140d1565b6116ae565b348015610ae157600080fd5b506014546104939060ff1681565b348015610afb57600080fd5b50610461610b0a3660046142df565b6116dd565b348015610b1b57600080fd5b50610461610b2a3660046140d1565b611936565b348015610b3b57600080fd5b50610461610b4a3660046140d1565b611965565b348015610b5b57600080fd5b50610461610b6a366004614316565b611994565b348015610b7b57600080fd5b506003546105dc906001600160a01b031681565b348015610b9b57600080fd5b506016546105dc906001600160a01b031681565b348015610bbb57600080fd5b50610bc4611a4d565b6040805193845260208401929092529082015260600161049f565b348015610beb57600080fd5b50610570601c5481565b348015610c0157600080fd5b50610570601a5481565b348015610c1757600080fd5b50610570610c2636600461406d565b611b81565b348015610c3757600080fd5b50610461610c46366004614344565b611d8a565b348015610c5757600080fd5b50610570610c66366004614316565b6001600160a01b03918216600090815260276020908152604080832093909416825291909152205490565b348015610c9d57600080fd5b506014546104939062010000900460ff1681565b348015610cbd57600080fd5b506001546105dc906001600160a01b031681565b348015610cdd57600080fd5b50610461610cec3660046143b5565b611e1b565b348015610cfd57600080fd5b50610570601f5481565b348015610d1357600080fd5b50610461610d2236600461406d565b611e63565b348015610d3357600080fd5b5060145461049390640100000000900460ff1681565b6000546001600160a01b03163314610d7c5760405162461bcd60e51b8152600401610d73906143d2565b60405180910390fd5b60175415610dcc5760405162461bcd60e51b815260206004820152601f60248201527f54726164696e672068617320616c7265616479206265656e206f70656e6564006044820152606401610d73565b42601755565b6000546001600160a01b03163314610dfc5760405162461bcd60e51b8152600401610d73906143d2565b6001600160a01b03919091166000908152602b60205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610e515760405162461bcd60e51b8152600401610d73906143d2565b80600003610ead5760405162461bcd60e51b815260206004820152602360248201527f4e65772076616c7565206d7573742062652067726561746572207468616e207a60448201526265726f60e81b6064820152608401610d73565b601855565b606060088054610ec1906143f2565b80601f0160208091040260200160405190810160405280929190818152602001828054610eed906143f2565b8015610f3a5780601f10610f0f57610100808354040283529160200191610f3a565b820191906000526020600020905b815481529060010190602001808311610f1d57829003601f168201915b5050505050905090565b6000610f51338484611f29565b5060015b92915050565b6000546001600160a01b03163314610f855760405162461bcd60e51b8152600401610d73906143d2565b60005b82811015610fec578160286000868685818110610fa757610fa7614426565b9050602002016020810190610fbc919061406d565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055600101610f88565b50505050565b6000546001600160a01b0316331461101c5760405162461bcd60e51b8152600401610d73906143d2565b601955565b6000546001600160a01b0316331461104b5760405162461bcd60e51b8152600401610d73906143d2565b60005b81811015611136576002546000906001600160a01b03166370a0823185858581811061107c5761107c614426565b9050602002016020810190611091919061406d565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156110d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110f9919061443c565b111561112e5761112e83838381811061111457611114614426565b9050602002016020810190611129919061406d565b611f8b565b60010161104e565b505050565b6000546001600160a01b031633146111655760405162461bcd60e51b8152600401610d73906143d2565b6001600160a01b03919091166000908152602560205260409020805460ff1916911515919091179055565b600061119d848484612099565b6001600160a01b03841660009081526027602090815260408083203384529091529020546000191461121d576001600160a01b03841660009081526027602090815260408083203384529091529020546111f890839061446b565b6001600160a01b03851660009081526027602090815260408083203384529091529020555b5060019392505050565b6007818154811061123757600080fd5b6000918252602090912001546001600160a01b0316905081565b6001546040516001600160a01b03909116904780156108fc02916000818181858888f1935050505015801561128a573d6000803e3d6000fd5b50565b6000546001600160a01b031633146112b75760405162461bcd60e51b8152600401610d73906143d2565b600c96909655600d94909455600f92909255601055600e55601155601255565b6000546001600160a01b031633146113015760405162461bcd60e51b8152600401610d73906143d2565b602155565b6000546001600160a01b031633146113305760405162461bcd60e51b8152600401610d73906143d2565b62030d4081101580156113465750621e84808111155b6113ae5760405162461bcd60e51b815260206004820152603360248201527f4c502072657761726420676173206d757374206265206265747765656e2032306044820152720302c30303020616e6420322c3030302c30303606c1b6064820152608401610d73565b601c55565b6000546001600160a01b031633146113dd5760405162461bcd60e51b8152600401610d73906143d2565b601b55565b6000546001600160a01b0316331461140c5760405162461bcd60e51b8152600401610d73906143d2565b601480546001600160a01b03909216600160281b0265010000000000600160c81b0319909216919091179055565b6002546000906001600160a01b03838116911614801561146457506002546001600160a01b031633145b80156114795750600054600160a81b900460ff165b156114f3576002546001600160a01b03166000908152602660205260409020546114f35760405162461bcd60e51b815260206004820152602560248201527f53796e63206572726f723a204d61696e20706169722062616c616e6365206973604482015264207a65726f60d81b6064820152608401610d73565b506001600160a01b031660009081526026602052604090205490565b6000546001600160a01b031633146115395760405162461bcd60e51b8152600401610d73906143d2565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146115ad5760405162461bcd60e51b8152600401610d73906143d2565b803b63ffffffff16156116025760405162461bcd60e51b815260206004820152601a60248201527f66756e6461646472657373206973206120636f6e7472616374200000000000006044820152606401610d73565b600180546001600160a01b039092166001600160a01b031990921682178155600091825260286020526040909120805460ff19169091179055565b606060098054610ec1906143f2565b6000546001600160a01b031633146116765760405162461bcd60e51b8152600401610d73906143d2565b6001600160a01b03919091166000908152602960205260409020805460ff1916911515919091179055565b6000610f51338484612099565b6000546001600160a01b031633146116d85760405162461bcd60e51b8152600401610d73906143d2565b601a55565b6000546001600160a01b031633148061170057506001546001600160a01b031633145b61175c5760405162461bcd60e51b815260206004820152602760248201527f43616c6c6572206973206e6f7420746865206f776e6572206f722066756e64206044820152666164647265737360c81b6064820152608401610d73565b6040516370a0823160e01b81523060048201526001600160a01b038416906370a0823190602401602060405180830381865afa1580156117a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117c4919061443c565b8210156117fc5760405162461bcd60e51b8152600401610d73906020808252600490820152634530303160e01b604082015260600190565b60405163a9059cbb60e01b81526001600160a01b0382811660048301526024820184905284169063a9059cbb906044016020604051808303816000875af115801561184b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061186f919061447e565b506003546001600160a01b03908116908416036118b25760235482116118ac5781602360008282546118a1919061446b565b909155506118b29050565b60006023555b306001600160a01b038416036111365760245482116118e85781602460008282546118dd919061446b565b909155506111369050565b6022546024546118f8908461446b565b116119265760245461190a908361446b565b6022600082825461191b919061446b565b9091555061192c9050565b60006022555b6000602455505050565b6000546001600160a01b031633146119605760405162461bcd60e51b8152600401610d73906143d2565b601f55565b6000546001600160a01b0316331461198f5760405162461bcd60e51b8152600401610d73906143d2565b601e55565b6000546001600160a01b031633146119be5760405162461bcd60e51b8152600401610d73906143d2565b601580546001600160a01b038085166001600160a01b031992831617909255601680549284169290911691909117905560405182906119fc9061404b565b6001600160a01b039091168152602001604051809103906000f080158015611a28573d6000803e3d6000fd5b50600680546001600160a01b0319166001600160a01b03929092169190911790555050565b600080600080600260009054906101000a90046001600160a01b03169050600080826001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015611aac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ad091906144b2565b506003546001600160701b039283169450911691506001600160a01b031630811015611b0157829650819550611b08565b8196508295505b6002546040516370a0823160e01b81526001600160a01b039182166004820152908216906370a0823190602401602060405180830381865afa158015611b52573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b76919061443c565b945050505050909192565b60025460408051630240bc6b60e21b815290516000926001600160a01b031691839182918491630902f1ac916004808201926060929091908290030181865afa158015611bd2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bf691906144b2565b506003546001600160701b039283169450911691506001600160a01b0316600030821015611c25575081611c28565b50825b846001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c66573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c8a919061443c565b15611d7d57846001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf1919061443c565b6040516370a0823160e01b81526001600160a01b0389811660048301528391908816906370a0823190602401602060405180830381865afa158015611d3a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d5e919061443c565b611d6891906144f7565b611d72919061450e565b979650505050505050565b5060009695505050505050565b6000546001600160a01b03163314611db45760405162461bcd60e51b8152600401610d73906143d2565b6014805461ffff191695151561ff00191695909517610100941515949094029390931763ffff00001916620100009215159290920263ff0000001916919091176301000000911515919091021764ff00000000191664010000000091151591909102179055565b6000546001600160a01b03163314611e455760405162461bcd60e51b8152600401610d73906143d2565b60008054911515600160a81b0260ff60a81b19909216919091179055565b6000546001600160a01b03163314611e8d5760405162461bcd60e51b8152600401610d73906143d2565b6001600160a01b038116611ece5760405162461bcd60e51b815260206004820152600860248201526706e657720697320360c41b6044820152606401610d73565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383811660008181526027602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0381166000908152602a6020526040812054900361128a576007541580611fea5750806001600160a01b03166007600081548110611fd257611fd2614426565b6000918252602090912001546001600160a01b031614155b1561128a57600754604080516001600160a01b038416815260208101929092524282820152517f610927ea9054acb8dbdcc45de059355be9f7e1d99786df027933336acdf94b379181900360600190a1600780546001600160a01b0383166000818152602a60205260408120839055600183018455929092527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6880180546001600160a01b031916909117905550565b6001600160a01b0383166000908152602660205260408120549080808080808080898910156121145760405162461bcd60e51b815260206004820152602160248201527f496e73756666696369656e742062616c616e636520666f72207472616e7366656044820152603960f91b6064820152608401610d73565b600054600160a01b900460ff1615612140576121318c8c8c612475565b50505050505050505050505050565b6002546001600160a01b038c8116911614801561216c57503360009081526025602052604090205460ff165b156121875761217a8a61252a565b9750871561218757600191505b6002546001600160a01b03908116908d16036121b3576121a68a612595565b965086156121b357600192505b6001600160a01b038c1660009081526029602052604090205460ff16806121f257506001600160a01b038b1660009081526029602052604090205460ff165b156123d4576001600160a01b038b1660009081526029602052604090205460ff16801561221d575081155b1561222757600193505b6001600160a01b038c1660009081526029602052604090205460ff16801561224d575082155b1561225757600194505b6001600160a01b038c1660009081526028602052604090205460ff1615801561229957506001600160a01b038b1660009081526028602052604090205460ff16155b156123d4576001955060006017541180156122b657506017544210155b6123025760405162461bcd60e51b815260206004820152601b60248201527f54726164696e6720686173206e6f7420737461727465642079657400000000006044820152606401610d73565b6014546000906301000000900460ff16801561231b5750845b80612330575060145460ff1680156123305750825b8061234a5750601454610100900460ff16801561234a5750835b80612365575060145462010000900460ff1680156123655750855b600054909150600160a01b900460ff1615801561237f5750805b801561238f5750601b5460225410155b156123d2576018546032906000906064906123aa908f6144f7565b6123b4919061450e565b90506022548111156123c557506022545b6123cf8183612664565b50505b505b6001600160a01b038c1660009081526029602052604090205460ff1615801561241657506001600160a01b038b1660009081526029602052604090205460ff16155b1561241f575060015b6124308c8c8c89898987898b612b7a565b6001600160a01b038c1630146124675781806124495750835b15612457576124578c611f8b565b8061246757612467601c546130c8565b505050505050505050505050565b6001600160a01b03831660009081526026602052604081208054839190839061249f90849061446b565b90915550506001600160a01b038316600090815260266020526040812080548492906124cc908490614530565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161251891815260200190565b60405180910390a35060019392505050565b600080600080612538611a4d565b9250925092506000808411801561254f5750600083115b1561256c578261255f85886144f7565b612569919061450e565b90505b6125768185614530565b821061258c5761258882878686613748565b5094505b50505050919050565b60008060006125a2611a4d565b925050915081811161265d5760025484906125c5906001600160a01b031661143a565b6125cf919061446b565b600260009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612622573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612646919061443c565b61265090866144f7565b61265a919061450e565b92505b5050919050565b6000805460ff60a01b1916600160a01b179055601454600160281b90046001600160a01b03161515806126a157506015546001600160a01b031615155b6126d65760405162461bcd60e51b8152600401610d73906020808252600490820152636530303160e01b604082015260600190565b8015612b6957601454600090600160281b90046001600160a01b03161580159061270b5750601454640100000000900460ff16155b8061273557506015546001600160a01b0316158015906127355750601454640100000000900460ff165b1561273f57506024545b600061274b8285614530565b90508060000361275c575050612b69565b6040805142815260208101869052908101849052606081018390527fc757940cc5600f41abee476dcbd861d3777b392e77d7d7bfae801c0a7a4e5cb49060800160405180910390a16003546005546000916127c99130916001600160a01b03908116918691849116613a38565b90508015612b65576000826127de85846144f7565b6127e8919061450e565b90506127f4818361446b565b602360008282546128059190614530565b90915550508015612b4c57601454640100000000900460ff166129d95760035460145460405163a9059cbb60e01b81526001600160a01b03600160281b909204821660048201526024810184905291169063a9059cbb906044016020604051808303816000875af115801561287e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a2919061447e565b50601460059054906101000a90046001600160a01b03166001600160a01b031663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156128f357600080fd5b505af1925050508015612904575060015b6129cf57612910614543565b806308c379a00361297757506129246145a2565b8061292f5750612979565b600080516020614a398339815191528160405160200161294f9190614627565b60408051601f19818403018152908290526129699161410e565b60405180910390a1506129cf565b505b600080516020614a398339815191526040516129c6906020808252601a908201527f53796e63206661696c65643a20556e6b6e6f776e206572726f72000000000000604082015260600190565b60405180910390a15b6000602455612b4c565b600354601554601654600654600093612a08936001600160a01b03918216939082169287929182169116613a38565b90508015612b4a57601660009054906101000a90046001600160a01b03166001600160a01b0316622c86c26040518163ffffffff1660e01b8152600401600060405180830381600087803b158015612a5f57600080fd5b505af1925050508015612a70575060015b612b4457612a7c614543565b806308c379a003612ae35750612a906145a2565b80612a9b5750612ae5565b600080516020614a3983398151915281604051602001612abb919061465c565b60408051601f1981840301815290829052612ad59161410e565b60405180910390a150612b44565b505b6040517f53776170206661696c65643a20556e6b6e6f776e206572726f722e20000000006020820152600080516020614a3983398151915290603c0160408051601f1981840301815290829052612b3b9161410e565b60405180910390a15b60006024555b505b8560226000828254612b5e919061446b565b9091555050505b5050505b50506000805460ff60a01b19169055565b604080516001600160a01b03808c1682528a1660208201529081018890528615156060820152851515608082015284151560a082015283151560c082015282151560e08201528115156101008201527f8f1fe9b10ea903f59ee567ceabc468702db4b25736a0aca68642ddc5e4feb183906101200160405180910390a16001600160a01b038916600090815260266020526040902054612c1b90889061446b565b6001600160a01b038a1660009081526026602052604081209190915586156130ad576000601e54601754612c4f9190614530565b42111590508615612f2c578015612e9757326000908152602c602052604090205460ff16158015612c9957506001600160a01b038a166000908152602c602052604090205460ff16155b612cf55760405162461bcd60e51b815260206004820152602760248201527f416c7265616479207075726368617365642077697468696e207468652066697260448201526639ba103437bab960c91b6064820152608401610d73565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110612d2a57612d2a614426565b6001600160a01b039283166020918202929092010152600354825191169082906001908110612d5b57612d5b614426565b6001600160a01b0392831660209182029290920101526004805460405163d06ca61f60e01b8152600093919091169163d06ca61f91612d9e918f918791016146c9565b600060405180830381865afa158015612dbb573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612de391908101906146e2565b905060195481600181518110612dfb57612dfb614426565b60200260200101511115612e5b5760405162461bcd60e51b815260206004820152602160248201527f507572636861736520616d6f756e74206578636565647320746865206c696d696044820152601d60fa1b6064820152608401610d73565b5050326000908152602c60205260408082208054600160ff1991821681179092556001600160a01b038e16845291909220805490911690911790555b6000601354600c548b612eaa91906144f7565b612eb4919061450e565b90506000601354600d548c612ec991906144f7565b612ed3919061450e565b90508115612ef457612ee58285614530565b9350612ef48d61dead84613c70565b8015612f2957612f048185614530565b93508060226000828254612f189190614530565b90915550612f2990508d3083613c70565b50505b8515612ff3576000808215612f5c57601354601054612f4b908d6144f7565b612f55919061450e565b9150612f96565b601354600f54612f6c908d6144f7565b612f76919061450e565b9150601354600e548c612f8991906144f7565b612f93919061450e565b90505b612fa08183614530565b612faa9085614530565b9350612fc08d30612fbb8486614530565b613c70565b8160246000828254612fd29190614530565b925050819055508060226000828254612feb9190614530565b909155505050505b831561304f5760006013546011548b61300c91906144f7565b613016919061450e565b9050801561304d576130288184614530565b92506130358c3083613c70565b80602260008282546130479190614530565b90915550505b505b82156130ab5760006013546012548b61306891906144f7565b613072919061450e565b905080156130a9576130848184614530565b92506130918c3083613c70565b80602260008282546130a39190614530565b90915550505b505b505b6130bc8a8a612fbb848c61446b565b50505050505050505050565b436021546020546130d99190614530565b11156130e25750565b613188604051806101e001604052806000815260200160006001600160a01b031681526020016000815260200160006001600160701b0316815260200160006001600160701b0316815260200160006001600160a01b031681526020016000815260200160006001600160a01b03168152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6023546003546040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa1580156131d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131f7919061443c565b1015613270576003546040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa158015613245573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613269919061443c565b8152613276565b60235481525b805115806132865750601f548151105b1561328f575050565b6002546001600160a01b03166020808301829052604080516318160ddd60e01b815290516318160ddd926004808401939192918290030181865afa1580156132db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132ff919061443c565b60408201819052600003613311575050565b80602001516001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015613353573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061337791906144b2565b506001600160701b03908116608084015216606082015260208082015160408051630dfe168160e01b815290516001600160a01b0390921692630dfe1681926004808401938290030181865afa1580156133d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133f99190614793565b6001600160a01b0390811660a0830181905260035490911614613420578060800151613426565b80606001515b6001600160701b031660c0820152600754610140820152600061016082018190526101808201525a6101a08201525b818161016001511080156134725750806101400151816101800151105b156136e557806101400151601d541061348b576000601d555b6007601d54815481106134a0576134a0614426565b600091825260209182902001546001600160a01b0390811660e08401819052918301516040516370a0823160e01b8152600481019390935216906370a0823190602401602060405180830381865afa158015613500573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613524919061443c565b6101008201819052604082015160c08301519091906135449060026144f7565b61354e91906144f7565b613558919061450e565b6101c08201526101008101511580159061358f575060e08101516001600160a01b03166000908152602b602052604090205460ff16155b80156135a25750601a54816101c0015110155b1561368957604081015161010082015182516135be91906144f7565b6135c8919061450e565b6101208201819052158015906135e45750806101200151602354115b156136895760035460e082015161012083015160405163a9059cbb60e01b81526001600160a01b039283166004820152602481019190915291169063a9059cbb906044016020604051808303816000875af1158015613647573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061366b919061447e565b5080610120015160236000828254613683919061446b565b90915550505b5a816101a0015161369a919061446b565b8161016001516136aa9190614530565b6101608201525a6101a0820152601d80549060006136c7836147b0565b909155505061018081018051906136dd826147b0565b905250613455565b610180810151610140820151601d54604080513281524260208201528082019490945260608401929092526080830152517f0bdfe6de705201414a2aab63a16602ef5f7c5d444d282a6ca1e99c89c66c89f19181900360a00190a1505043602055565b6000806000600260009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156137a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137c4919061443c565b90506000600460009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561381b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061383f9190614793565b6001600160a01b031663017e7e586040518163ffffffff1660e01b8152600401602060405180830381865afa15801561387c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138a09190614793565b60025460408051637464fc3d60e01b815290519293506001600160a01b0380851615159360009390911691637464fc3d9160048083019260209291908290030181865afa1580156138f5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613919919061443c565b905081156139be5780156139be57600061393b613936898b6144f7565b613ce8565b9050600061394883613ce8565b9050808211156139bb57600061395e828461446b565b61396890886144f7565b6139739060086144f7565b905060006139828360086144f7565b61398d8560116144f7565b6139979190614530565b90506139a3818361450e565b985088156139b8576139b58989614530565b97505b50505b50505b60006139ca898c61446b565b9050846000036139f5576103e86139e46139368c846144f7565b6139ee919061446b565b9650613a2a565b613a2789613a0387846144f7565b613a0d919061450e565b89613a18888e6144f7565b613a22919061450e565b613d58565b96505b505050505094509492505050565b604080516002808252606082018352600092839291906020830190803683370190505090508681600081518110613a7157613a71614426565b60200260200101906001600160a01b031690816001600160a01b0316815250508581600181518110613aa557613aa5614426565b60200260200101906001600160a01b031690816001600160a01b0316815250506000613aea82600081518110613add57613add614426565b6020026020010151613d70565b613b0083600181518110613add57613add614426565b604051602001613b119291906147c9565b60408051601f198184030181529082905260048054635c11d79560e01b84529193506001600160a01b0390911691635c11d79591613b5a918a9160009188918b9142910161481a565b600060405180830381600087803b158015613b7457600080fd5b505af1925050508015613b85575060015b613c4f57613b91614543565b806308c379a003613c005750613ba56145a2565b80613bb05750613c02565b600080516020614a398339815191528183604051602001613bd2929190614856565b60408051601f1981840301815290829052613bec9161410e565b60405180910390a160009350505050613c67565b505b600080516020614a3983398151915281604051602001613c2291906148ac565b60408051601f1981840301815290829052613c3c9161410e565b60405180910390a1600092505050613c67565b6000613c5c888787613f51565b9350613c6792505050565b95945050505050565b6001600160a01b038216600090815260266020526040902054613c94908290614530565b6001600160a01b0380841660008181526026602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611f7e9085815260200190565b60006003821115613d495750806000613d0260028361450e565b613d0d906001614530565b90505b81811015613d4357905080600281613d28818661450e565b613d329190614530565b613d3c919061450e565b9050613d10565b50919050565b8115613d53575060015b919050565b6000818310613d675781613d69565b825b9392505050565b604080518082018252601081526f181899199a1a9b1b9c1cb0b131b232b360811b60208201528151602a80825260608281019094526001600160a01b0385169291600091602082018180368337019050509050600360fc1b81600081518110613ddb57613ddb614426565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613e0a57613e0a614426565b60200101906001600160f81b031916908160001a90535060005b6014811015613f485782600485613e3c84600c614530565b60208110613e4c57613e4c614426565b1a60f81b6001600160f81b031916901c60f81c60ff1681518110613e7257613e72614426565b01602001516001600160f81b03191682613e8d8360026144f7565b613e98906002614530565b81518110613ea857613ea8614426565b60200101906001600160f81b031916908160001a9053508284613ecc83600c614530565b60208110613edc57613edc614426565b825191901a600f16908110613ef357613ef3614426565b01602001516001600160f81b03191682613f0e8360026144f7565b613f19906003614530565b81518110613f2957613f29614426565b60200101906001600160f81b031916908160001a905350600101613e24565b50949350505050565b6040516370a0823160e01b81526001600160a01b03828116600483015260009182918616906370a0823190602401602060405180830381865afa158015613f9c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613fc0919061443c565b90508015614043576040516323b872dd60e01b81526001600160a01b0384811660048301528581166024830152604482018390528616906323b872dd906064016020604051808303816000875af115801561401f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f48919061447e565b949350505050565b610147806148f283390190565b6001600160a01b038116811461128a57600080fd5b60006020828403121561407f57600080fd5b8135613d6981614058565b801515811461128a57600080fd5b600080604083850312156140ab57600080fd5b82356140b681614058565b915060208301356140c68161408a565b809150509250929050565b6000602082840312156140e357600080fd5b5035919050565b60005b838110156141055781810151838201526020016140ed565b50506000910152565b602081526000825180602084015261412d8160408501602087016140ea565b601f01601f19169190910160400192915050565b6000806040838503121561415457600080fd5b823561415f81614058565b946020939093013593505050565b60008083601f84011261417f57600080fd5b50813567ffffffffffffffff81111561419757600080fd5b6020830191508360208260051b85010111156141b257600080fd5b9250929050565b6000806000604084860312156141ce57600080fd5b833567ffffffffffffffff8111156141e557600080fd5b6141f18682870161416d565b90945092505060208401356142058161408a565b809150509250925092565b6000806020838503121561422357600080fd5b823567ffffffffffffffff81111561423a57600080fd5b6142468582860161416d565b90969095509350505050565b60008060006060848603121561426757600080fd5b833561427281614058565b9250602084013561428281614058565b929592945050506040919091013590565b600080600080600080600060e0888a0312156142ae57600080fd5b505085359760208701359750604087013596606081013596506080810135955060a0810135945060c0013592509050565b6000806000606084860312156142f457600080fd5b83356142ff81614058565b925060208401359150604084013561420581614058565b6000806040838503121561432957600080fd5b823561433481614058565b915060208301356140c681614058565b600080600080600060a0868803121561435c57600080fd5b85356143678161408a565b945060208601356143778161408a565b935060408601356143878161408a565b925060608601356143978161408a565b915060808601356143a78161408a565b809150509295509295909350565b6000602082840312156143c757600080fd5b8135613d698161408a565b60208082526006908201526510b7bbb732b960d11b604082015260600190565b600181811c9082168061440657607f821691505b602082108103613d4357634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60006020828403121561444e57600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610f5557610f55614455565b60006020828403121561449057600080fd5b8151613d698161408a565b80516001600160701b0381168114613d5357600080fd5b6000806000606084860312156144c757600080fd5b6144d08461449b565b92506144de6020850161449b565b9150604084015163ffffffff8116811461420557600080fd5b8082028115828204841417610f5557610f55614455565b60008261452b57634e487b7160e01b600052601260045260246000fd5b500490565b80820180821115610f5557610f55614455565b600060033d111561455c5760046000803e5060005160e01c5b90565b634e487b7160e01b600052604160045260246000fd5b601f8201601f1916810167ffffffffffffffff8111828210171561459b5761459b61455f565b6040525050565b600060443d10156145b05790565b6040513d600319016004823e80513d602482011167ffffffffffffffff821117156145da57505090565b808201805167ffffffffffffffff8111156145f6575050505090565b3d8401600319018282016020011115614610575050505090565b61461f60208285010185614575565b509392505050565b6c029bcb731903330b4b632b21d1609d1b81526000825161464f81600d8501602087016140ea565b91909101600d0192915050565b6c029bbb0b8103330b4b632b21d1609d1b81526000825161464f81600d8501602087016140ea565b600081518084526020840193506020830160005b828110156146bf5781516001600160a01b0316865260209586019590910190600101614698565b5093949350505050565b8281526040602082015260006140436040830184614684565b6000602082840312156146f457600080fd5b815167ffffffffffffffff81111561470b57600080fd5b8201601f8101841361471c57600080fd5b805167ffffffffffffffff8111156147365761473661455f565b8060051b60405161474a6020830182614575565b91825260208184018101929081018784111561476557600080fd5b6020850194505b838510156147885784518082526020958601959093500161476c565b509695505050505050565b6000602082840312156147a557600080fd5b8151613d6981614058565b6000600182016147c2576147c2614455565b5060010190565b6502830ba341d160d51b8152600083516147ea8160068501602088016140ea565b63010169f160e51b600691840191820152835161480e81600a8401602088016140ea565b01600a01949350505050565b85815284602082015260a06040820152600061483960a0830186614684565b6001600160a01b0394909416606083015250608001529392505050565b6c029bbb0b8103330b4b632b21d1609d1b81526000835161487e81600d8501602088016140ea565b61017160f51b600d9184019182015283516148a081600f8401602088016140ea565b01600f01949350505050565b7f53776170206661696c65643a20556e6b6e6f776e206572726f722e20000000008152600082516148e481601c8501602087016140ea565b91909101601c019291505056fe608060405234801561001057600080fd5b5060405161014738038061014783398101604081905261002f916100a8565b60405163095ea7b360e01b815233600482015260001960248201526001600160a01b0382169063095ea7b3906044016020604051808303816000875af115801561007d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100a191906100d8565b50506100fa565b6000602082840312156100ba57600080fd5b81516001600160a01b03811681146100d157600080fd5b9392505050565b6000602082840312156100ea57600080fd5b815180151581146100d157600080fd5b603f806101086000396000f3fe6080604052600080fdfea26469706673582212205bb056719ee05ba3475bc2049069d34a8fb4a2c0c4c1b61cd52d80d4100ca67f64736f6c634300081a00337654f5627170c8c611e846c6a0975b839bba70fab53fcdfdbf48ef218348d521a26469706673582212209011bb05f8eb101ab283d62fc246f9b0141789f4733ba584a5a1db5eccd1401064736f6c634300081a0033608060405234801561001057600080fd5b5060405161014738038061014783398101604081905261002f916100a8565b60405163095ea7b360e01b815233600482015260001960248201526001600160a01b0382169063095ea7b3906044016020604051808303816000875af115801561007d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100a191906100d8565b50506100fa565b6000602082840312156100ba57600080fd5b81516001600160a01b03811681146100d157600080fd5b9392505050565b6000602082840312156100ea57600080fd5b815180151581146100d157600080fd5b603f806101086000396000f3fe6080604052600080fdfea26469706673582212205bb056719ee05ba3475bc2049069d34a8fb4a2c0c4c1b61cd52d80d4100ca67f64736f6c634300081a00338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001600000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000018ffcd2db52767ee0000000000000000000000000000055d398326f99059ff775485246999027b31979550000000000000000000000008c3a4c64e2f4b407a5e90b85562b44e5db38123c0000000000000000000000008c3a4c64e2f4b407a5e90b85562b44e5db38123c00000000000000000000000010ed43c718714eb63d5aa57b78b54704e256024e0000000000000000000000008c3a4c64e2f4b407a5e90b85562b44e5db38123c0000000000000000000000000000000000000000000000000000000000000003434444000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034344440000000000000000000000000000000000000000000000000000000000