377 txs
12.6k calls
constructor
constructor(uint256 _initialSupply, address _initialSupplyTo, address _dxn, address _governance, address _vesting, address _devFeeTo)
functions
allowance
viewfunction allowance(address owner, address spender) view returns (uint256)
averageBurnedPerBlockEpoch
viewfunction averageBurnedPerBlockEpoch() view returns (uint256 averagePerBlock)
averageBurnedPerBlockSinceStart
viewfunction averageBurnedPerBlockSinceStart() view returns (uint256 averagePerBlock)
balanceOf
viewfunction balanceOf(address account) view returns (uint256)
contractStartBlock
viewfunction contractStartBlock() view returns (uint256)
DEADBEEF
viewfunction DEADBEEF() view returns (address)
decimals
viewfunction decimals() view returns (uint8)
devFeeTo
viewfunction devFeeTo() view returns (address)
dxn
viewfunction dxn() view returns (address)
epoch
viewfunction epoch() view returns (uint256)
epochBurns
viewfunction epochBurns(uint256) view returns (uint256 burned, uint256 totalSupply)
epochCalculationStartBlock
viewfunction epochCalculationStartBlock() view returns (uint256)
getAmountsAfterTax
viewfunction getAmountsAfterTax(address from, address to, uint256 amount) view returns (uint256, uint256)
governance
viewfunction governance() view returns (address)
isExcludedFromTax
viewfunction isExcludedFromTax(address) view returns (bool isExcludedWhenSender, bool isExcludedWhenRecipient)
lastSupplyOfDXNInPair
viewfunction lastSupplyOfDXNInPair() view returns (uint256)
lastSupplyOfNXDInPair
viewfunction lastSupplyOfNXDInPair() view returns (uint256)
lpSupplyOfPair
viewfunction lpSupplyOfPair(address) view returns (uint256)
MAX_DEV_ALLOC
viewfunction MAX_DEV_ALLOC() view returns (uint256)
MAX_REWARDS_SUPPLY
viewfunction MAX_REWARDS_SUPPLY() view returns (uint256)
maxSupply
viewfunction maxSupply() view returns (uint256)
name
viewfunction name() view returns (string)
protocol
viewfunction protocol() view returns (address)
SELL_TAX_X100
viewfunction SELL_TAX_X100() view returns (uint256)
symbol
viewfunction symbol() view returns (string)
taxRecipient
viewfunction taxRecipient() view returns (address)
totalBurnAddressBalUpToLastEpoch
viewfunction totalBurnAddressBalUpToLastEpoch() view returns (uint256)
totalNXDBurned
viewfunction totalNXDBurned() view returns (uint256)
totalSupply
viewfunction totalSupply() view returns (uint256)
UNISWAP_V2_FACTORY
viewfunction UNISWAP_V2_FACTORY() view returns (address)
UNISWAP_V2_ROUTER
viewfunction UNISWAP_V2_ROUTER() view returns (address)
uniswapV2Pair
viewfunction uniswapV2Pair() view returns (address)
v2Oracle
viewfunction v2Oracle() view returns (address)
approve
nonpayablefunction approve(address spender, uint256 value) returns (bool)
mint
nonpayablefunction mint(address account, uint256 amount)
mintDevAlloc
nonpayablefunction mintDevAlloc(address account, uint256 amount)
setDevFeeTo
nonpayablefunction setDevFeeTo(address _devFeeTo)
setGovernance
nonpayablefunction setGovernance(address _governance)
setUniswapV2Pair
nonpayablefunction setUniswapV2Pair(address _uniswapV2Pair)
setV2Oracle
nonpayablefunction setV2Oracle(address _v2Oracle)
startNewEpochIfReady
nonpayablefunction startNewEpochIfReady()
transfer
nonpayablefunction transfer(address to, uint256 value) returns (bool)
transferFrom
nonpayablefunction transferFrom(address from, address to, uint256 value) returns (bool)
updateTaxWhitelist
nonpayablefunction updateTaxWhitelist(address account, bool whenSender, bool whenRecipient)
events
Approval
event Approval(address indexed owner, address indexed spender, uint256 value)
Transfer
event Transfer(address indexed from, address indexed to, uint256 value)
errors
ERC20InsufficientAllowance
error ERC20InsufficientAllowance(address spender, uint256 allowance, uint256 needed)
ERC20InsufficientBalance
error ERC20InsufficientBalance(address sender, uint256 balance, uint256 needed)
ERC20InvalidApprover
error ERC20InvalidApprover(address approver)
ERC20InvalidReceiver
error ERC20InvalidReceiver(address receiver)
ERC20InvalidSender
error ERC20InvalidSender(address sender)
ERC20InvalidSpender
error ERC20InvalidSpender(address spender)
MaxSupply
error MaxSupply()
NoLPWithdraw
error NoLPWithdraw()
NoRemovalMainLP
error NoRemovalMainLP()
NoRemovalZeroAddress
error NoRemovalZeroAddress()
Unauthorized
error Unauthorized()
creation bytecode
0x60e06040524662aa36a7146200002a57735c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f62000040565b73daf1b15ac3ca069bf811553170bad5b23342a4d65b600780546001600160a01b0319166001600160a01b03929092169190911790554662aa36a7146200008657737a250d5630b4cf539739df2c5dacb4c659f2488d6200009c565b7342f6460304545b48e788f6e8478fbf5e7dd7cde05b600880546001600160a01b0319166001600160a01b0392909216919091179055348015620000c957600080fd5b5060405162002be238038062002be2833981016040819052620000ec91620005ca565b466001146200010b57604051806020016040528060008152506200012e565b60405180604001604052806009815260200168272c22102a37b5b2b760b91b8152505b6003906200013d9082620006f7565b50466001146200015d57604051806020016040528060008152506200017a565b6040518060400160405280600381526020016213961160ea1b8152505b600490620001899082620006f7565b5033608052600f80546001600160a01b0319166001600160a01b038316179055620001b585876200036b565b600b80546001600160a01b0319166001600160a01b03861617905569032d26d12e980b600000620001f1699a956119863cd440000088620007d9565b620001fd9190620007d9565b60a05260405133906200021090620005a3565b6001600160a01b039091168152602001604051809103906000f0801580156200023d573d6000803e3d6000fd5b506001600160a01b0390811660c0908152600e80546001600160a01b031916868416179055604080518082018252600180825260006020808401828152308352600580835286842095518654925161ffff1993841691151561ff001990811692909217610100911515820217909755975187518089018952868152808501868152918b1686528285528886209051815492519285169015158b1617911515880291909117905560805187518089018952868152808501878152918b1686528285528886209051815492519285169015158b1617911515880291909117905586518088018852858152808401958652988b168452909152939020945185549151919093169215159093169190911791151502179055436011556200035f620003ad565b50505050505062000827565b6001600160a01b0382166200039b5760405163ec442f0560e01b8152600060048201526024015b60405180910390fd5b620003a96000838362000470565b5050565b4360125461c350620003c09190620007d9565b10156200046e5760155473deadbeefdeadbeefdeadbeefdeadbeefdeadbeef6000908152602081905260008051602062002bc28339815191525490916200040791620007f5565b60008051602062002bc28339815191525460155560408051808201825282815260025460208281019182526013805460009081526014909252938120925183559051600190920191909155436012558154929350909162000468906200080b565b90915550505b565b6001600160a01b0383166200049f578060026000828254620004939190620007d9565b90915550620005139050565b6001600160a01b03831660009081526020819052604090205481811015620004f45760405163391434e360e21b81526001600160a01b0385166004820152602481018290526044810183905260640162000392565b6001600160a01b03841660009081526020819052604090209082900390555b6001600160a01b038216620005315760028054829003905562000550565b6001600160a01b03821660009081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516200059691815260200190565b60405180910390a3505050565b6108f380620022cf83390190565b6001600160a01b0381168114620005c757600080fd5b50565b60008060008060008060c08789031215620005e457600080fd5b865195506020870151620005f881620005b1565b60408801519095506200060b81620005b1565b60608801519094506200061e81620005b1565b60808801519093506200063181620005b1565b60a08801519092506200064481620005b1565b809150509295509295509295565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200067d57607f821691505b6020821081036200069e57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620006f257600081815260208120601f850160051c81016020861015620006cd5750805b601f850160051c820191505b81811015620006ee57828155600101620006d9565b5050505b505050565b81516001600160401b0381111562000713576200071362000652565b6200072b8162000724845462000668565b84620006a4565b602080601f8311600181146200076357600084156200074a5750858301515b600019600386901b1c1916600185901b178555620006ee565b600085815260208120601f198616915b82811015620007945788860151825594840194600190910190840162000773565b5085821015620007b35787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b80820180821115620007ef57620007ef620007c3565b92915050565b81810381811115620007ef57620007ef620007c3565b600060018201620008205762000820620007c3565b5060010190565b60805160a05160c051611a2b620008a46000396000818161046d01528181611100015281816112eb01528181611346015261138e0152600081816105d90152818161093201526109e10152600081816104b8015281816106780152818161087b015281816108e5015281816109a20152610a240152611a2b6000f3fe608060405234801561001057600080fd5b50600436106102745760003560e01c8063755d59fa11610151578063a9059cbb116100c3578063cb4ca63111610087578063cb4ca63114610591578063d5abeb01146105d4578063d7ac9b10146105fb578063dd62ed3e1461060e578063ef3b9dd114610647578063f38221a41461064f57600080fd5b8063a9059cbb14610551578063ab033ea914610564578063b33f417614610577578063bba8623014610580578063be5340901461058957600080fd5b806395d89b411161011557806395d89b41146104f65780639747498c146104fe57806399d8fae31461050f5780639d6eb2cb14610522578063a29a60891461052b578063a82ed9ec1461053e57600080fd5b8063755d59fa1461048f578063872e225a146104a25780638ce74426146104b35780638db07c4d146104da578063900cf0cf146104ed57600080fd5b8063330a5800116101ea57806349c5468d116101ae57806349c5468d146104075780635aa6e675146104105780635afe54d2146104235780635d577c181461043657806370a082311461043f578063737ea06e1461046857600080fd5b8063330a580014610392578063332c412d146103c5578063383da5fa146103d857806340c10f19146103e157806349bd5a5e146103f457600080fd5b806318160ddd1161023c57806318160ddd1461032557806321a454421461032d57806323b872dd1461034057806325d158cf1461035357806330e6c1441461037a578063313ce5671461038357600080fd5b806302bea0f01461027957806306fdde031461028e578063095ea7b3146102ac5780630f56107e146102cf5780631202fcc7146102fd575b600080fd5b61028c6102873660046116c5565b610657565b005b6102966106c8565b6040516102a3919061170e565b60405180910390f35b6102bf6102ba36600461175c565b61075a565b60405190151581526020016102a3565b6102ef6102dd366004611786565b60066020526000908152604090205481565b6040519081526020016102a3565b61031061030b3660046117a8565b610774565b604080519283526020830191909152016102a3565b6002546102ef565b61028c61033b366004611786565b610802565b6102bf61034e3660046117a8565b61084e565b6103106103613660046117e4565b6014602052600090815260409020805460019091015482565b6102ef60105481565b604051601281526020016102a3565b6103ad73deadbeefdeadbeefdeadbeefdeadbeefdeadbeef81565b6040516001600160a01b0390911681526020016102a3565b61028c6103d3366004611786565b610870565b6102ef600c5481565b61028c6103ef36600461175c565b6108da565b6009546103ad906001600160a01b031681565b6102ef60115481565b600e546103ad906001600160a01b031681565b600b546103ad906001600160a01b031681565b6102ef60125481565b6102ef61044d366004611786565b6001600160a01b031660009081526020819052604090205490565b6103ad7f000000000000000000000000000000000000000000000000000000000000000081565b61028c61049d36600461175c565b610997565b6102ef699a956119863cd440000081565b6103ad7f000000000000000000000000000000000000000000000000000000000000000081565b600f546103ad906001600160a01b031681565b6102ef60135481565b610296610a0a565b6102ef69032d26d12e980b60000081565b6007546103ad906001600160a01b031681565b6102ef6101f481565b61028c610539366004611786565b610a19565b6008546103ad906001600160a01b031681565b6102bf61055f36600461175c565b610a8c565b61028c610572366004611786565b610aa2565b6102ef60155481565b6102ef600d5481565b6102ef610aee565b6105bd61059f366004611786565b60056020526000908152604090205460ff8082169161010090041682565b6040805192151583529015156020830152016102a3565b6102ef7f000000000000000000000000000000000000000000000000000000000000000081565b600a546103ad906001600160a01b031681565b6102ef61061c3660046117fd565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61028c610b5c565b6102ef610c16565b600e546001600160a01b0316331480159061069b5750336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614155b156106b8576040516282b42960e81b815260040160405180910390fd5b6106c3838383610c70565b505050565b6060600380546106d790611830565b80601f016020809104026020016040519081016040528092919081815260200182805461070390611830565b80156107505780601f1061072557610100808354040283529160200191610750565b820191906000526020600020905b81548152906001019060200180831161073357829003601f168201915b5050505050905090565b600033610768818585610cc9565b60019150505b92915050565b6001600160a01b038316600090815260056020526040812054819060ff16806107ba57506001600160a01b038416600090815260056020526040902054610100900460ff165b156107ca575081905060006107fa565b60006127106107db6101f486611880565b6107e59190611897565b905060006107f382866118b9565b9350909150505b935093915050565b600f546001600160a01b0316331461082c576040516282b42960e81b815260040160405180910390fd5b600f80546001600160a01b0319166001600160a01b0392909216919091179055565b600061085b843384610cd6565b610866848484610d59565b5060019392505050565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146108b8576040516282b42960e81b815260040160405180910390fd5b600a80546001600160a01b0319166001600160a01b0392909216919091179055565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610922576040516282b42960e81b815260040160405180910390fd5b61095669032d26d12e980b6000007f00000000000000000000000000000000000000000000000000000000000000006118b9565b8161096060025490565b61096a91906118cc565b111561098957604051632cdb04a160e21b815260040160405180910390fd5b6109938282611478565b5050565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146109df576040516282b42960e81b815260040160405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000008161096060025490565b6060600480546106d790611830565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610a61576040516282b42960e81b815260040160405180910390fd5b600980546001600160a01b0319166001600160a01b038316179055610a898160016000610c70565b50565b6000610a99338484610d59565b50600192915050565b600e546001600160a01b03163314610acc576040516282b42960e81b815260040160405180910390fd5b600e80546001600160a01b0319166001600160a01b0392909216919091179055565b60155473deadbeefdeadbeefdeadbeefdeadbeefdeadbeef600090815260208190526000805160206119b68339815191525490918291610b2e91906118b9565b905060115443610b3e91906118b9565b81601554610b4c91906118cc565b610b569190611897565b91505090565b4360125461c350610b6d91906118cc565b1015610c145760155473deadbeefdeadbeefdeadbeefdeadbeefdeadbeef600090815260208190526000805160206119b6833981519152549091610bb0916118b9565b6000805160206119b683398151915254601555604080518082018252828152600254602082810191825260138054600090815260149092529381209251835590516001909201919091554360125581549293509091610c0e906118df565b90915550505b565b60155473deadbeefdeadbeefdeadbeefdeadbeefdeadbeef600090815260208190526000805160206119b68339815191525490918291610c5691906118b9565b905060125443610c6691906118b9565b610b569082611897565b604080518082018252921515835290151560208084019182526001600160a01b039490941660009081526005909452922090518154925161ffff1990931690151561ff0019161761010092151592909202919091179055565b6106c383838360016114ae565b6001600160a01b038381166000908152600160209081526040808320938616835292905220546000198114610d535781811015610d4457604051637dc7a0d960e11b81526001600160a01b038416600482015260248101829052604481018390526064015b60405180910390fd5b610d53848484840360006114ae565b50505050565b6001600160a01b038316610d8357604051634b637e8f60e11b815260006004820152602401610d3b565b6001600160a01b038216610dad5760405163ec442f0560e01b815260006004820152602401610d3b565b6001600160a01b038316600090815260208190526040902054811115610e10576001600160a01b0383166000818152602081905260409081902054905163391434e360e21b81526004810192909252602482015260448101829052606401610d3b565b6001600160a01b03831660009081526020819052604081208054839290610e389084906118b9565b909155506000905080610e4c858585610774565b90925090508015611407573060009081526020819052604081208054839290610e769084906118cc565b909155505060405181815230906001600160a01b038716906000805160206119d68339815191529060200160405180910390a36040805160028082526060820183526000926020830190803683370190505090503081600081518110610ede57610ede6118f8565b6001600160a01b039283166020918202929092010152600b54825191169082906001908110610f0f57610f0f6118f8565b6001600160a01b03909216602092830291909101909101526000612710610f3884610fa0611880565b610f429190611897565b600854909150610f5d9030906001600160a01b031683610cc9565b600a60009054906101000a90046001600160a01b03166001600160a01b031663a17a26856040518163ffffffff1660e01b8152600401602060405180830381865afa158015610fb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fd4919061190e565b1561104257600a60009054906101000a90046001600160a01b03166001600160a01b031663a2e620456040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561102957600080fd5b505af115801561103d573d6000803e3d6000fd5b505050505b600a54604051633ddac95360e01b8152306004820152602481018390526000916001600160a01b031690633ddac95390604401602060405180830381865afa158015611092573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110b6919061192b565b90506127106110c7826125e4611880565b6110d19190611897565b600854604051635c11d79560e01b81529192506001600160a01b031690635c11d7959061112a908590859088907f0000000000000000000000000000000000000000000000000000000000000000904290600401611944565b600060405180830381600087803b15801561114457600080fd5b505af1158015611158573d6000803e3d6000fd5b505050506000828561116a91906118b9565b9050600061271061117d87610fa0611880565b6111879190611897565b9050600061271061119a886103e8611880565b6111a49190611897565b306000908152602081905260408120805492935085929091906111c89084906118b9565b909155506111d69050610b5c565b73deadbeefdeadbeefdeadbeefdeadbeefdeadbeef600090815260208190526000805160206119b683398151915280548492906112149084906118cc565b92505081905550816010600082825461122d91906118cc565b909155505060405182815273deadbeefdeadbeefdeadbeefdeadbeefdeadbeef9030906000805160206119d68339815191529060200160405180910390a3600f546001600160a01b0316600090815260208190526040812080548392906112959084906118cc565b9091555050600f546040518281526001600160a01b039091169030906000805160206119d68339815191529060200160405180910390a36000816112d984866118b9565b6112e391906118b9565b9050806000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166001600160a01b03168152602001908152602001600020600082825461133991906118cc565b90915550506040518181527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169030906000805160206119d68339815191529060200160405180910390a37f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f514d4c66040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050505050505050505b6001600160a01b0384166000908152602081905260408120805484929061142f9084906118cc565b92505081905550836001600160a01b0316856001600160a01b03166000805160206119d68339815191528460405161146991815260200190565b60405180910390a35050505050565b6001600160a01b0382166114a25760405163ec442f0560e01b815260006004820152602401610d3b565b61099360008383611583565b6001600160a01b0384166114d85760405163e602df0560e01b815260006004820152602401610d3b565b6001600160a01b03831661150257604051634a1406b160e11b815260006004820152602401610d3b565b6001600160a01b0380851660009081526001602090815260408083209387168352929052208290558015610d5357826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161157591815260200190565b60405180910390a350505050565b6001600160a01b0383166115ae5780600260008282546115a391906118cc565b909155506116209050565b6001600160a01b038316600090815260208190526040902054818110156116015760405163391434e360e21b81526001600160a01b03851660048201526024810182905260448101839052606401610d3b565b6001600160a01b03841660009081526020819052604090209082900390555b6001600160a01b03821661163c5760028054829003905561165b565b6001600160a01b03821660009081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03166000805160206119d68339815191528360405161168e91815260200190565b60405180910390a3505050565b80356001600160a01b03811681146116b257600080fd5b919050565b8015158114610a8957600080fd5b6000806000606084860312156116da57600080fd5b6116e38461169b565b925060208401356116f3816116b7565b91506040840135611703816116b7565b809150509250925092565b600060208083528351808285015260005b8181101561173b5785810183015185820160400152820161171f565b506000604082860101526040601f19601f8301168501019250505092915050565b6000806040838503121561176f57600080fd5b6117788361169b565b946020939093013593505050565b60006020828403121561179857600080fd5b6117a18261169b565b9392505050565b6000806000606084860312156117bd57600080fd5b6117c68461169b565b92506117d46020850161169b565b9150604084013590509250925092565b6000602082840312156117f657600080fd5b5035919050565b6000806040838503121561181057600080fd5b6118198361169b565b91506118276020840161169b565b90509250929050565b600181811c9082168061184457607f821691505b60208210810361186457634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761076e5761076e61186a565b6000826118b457634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561076e5761076e61186a565b8082018082111561076e5761076e61186a565b6000600182016118f1576118f161186a565b5060010190565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561192057600080fd5b81516117a1816116b7565b60006020828403121561193d57600080fd5b5051919050565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119945784516001600160a01b03168352938301939183019160010161196f565b50506001600160a01b0396909616606085015250505060800152939250505056feab5df040718b8f3693f97387eae2b30dba7f3bb953d1029260a38be856fa3d0eddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220b59944c3a6b594bf3459f01c451eab9c3323a7f8dbdf9d10fa796f7f71f7791264736f6c6343000814003360c06040524662aa36a714610028577380f0c1c49891dcfdd40b6e0f960f84e6042bcb6f61003e565b7324aedc58ec49861ec31dd01be1b9e176ce2529e65b600080546001600160a01b0319166001600160a01b03929092169190911790554662aa36a71461008257737a250d5630b4cf539739df2c5dacb4c659f2488d610098565b7342f6460304545b48e788f6e8478fbf5e7dd7cde05b600180546001600160a01b0319166001600160a01b03929092169190911790553480156100c457600080fd5b506040516108f33803806108f38339810160408190526100e3916100f8565b336080526001600160a01b031660a052610128565b60006020828403121561010a57600080fd5b81516001600160a01b038116811461012157600080fd5b9392505050565b60805160a05161077d610176600039600081816101090152818161024b01526102e101526000818160ae0152818161015c015281816103eb015281816104fb0152610588015261077d6000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c80638ce744261161005b5780638ce7442614610104578063a82ed9ec1461012b578063b9de186a1461013e578063f514d4c61461014757600080fd5b80632d9c7f071461008d57806331b703db146100a957806346db5a3b146100e85780635afe54d2146100f1575b600080fd5b61009660035481565b6040519081526020015b60405180910390f35b6100d07f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100a0565b61009660025481565b6000546100d0906001600160a01b031681565b6100d07f000000000000000000000000000000000000000000000000000000000000000081565b6001546100d0906001600160a01b031681565b61009660045481565b61014f610151565b005b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461019a57604051633f33d0c960e01b815260040160405180910390fd5b600080546040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa1580156101e3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610207919061066f565b9050670a688906bd8b00006000670de0b6b3a7640000610227838561069e565b61023191906106bb565b60005460405163095ea7b360e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660048301526024820184905292935091169063095ea7b3906044016020604051808303816000875af11580156102a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102ca91906106dd565b506040516366d6fdf960e11b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063cdadfbf290602401600060405180830381600087803b15801561032d57600080fd5b505af1158015610341573d6000803e3d6000fd5b5050505080600460008282546103579190610706565b90915550506000546040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa1580156103a4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103c8919061066f565b6040516370a0823160e01b81523060048201529093506000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a0823190602401602060405180830381865afa158015610432573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610456919061066f565b60005460015460405163095ea7b360e01b81526001600160a01b03918216600482015260248101889052929350169063095ea7b3906044016020604051808303816000875af11580156104ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104d191906106dd565b5060015460405163095ea7b360e01b81526001600160a01b039182166004820152602481018390527f00000000000000000000000000000000000000000000000000000000000000009091169063095ea7b3906044016020604051808303816000875af1158015610546573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056a91906106dd565b506001546000805460405162e8e33760e81b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152918216602482015260448101859052606481018890526084810183905260a481018390523060c48201524260e48201529192839291169063e8e3370090610104016060604051808303816000875af115801561060e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190610719565b509150915081600260008282546106499190610706565b9250508190555080600360008282546106629190610706565b9091555050505050505050565b60006020828403121561068157600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176106b5576106b5610688565b92915050565b6000826106d857634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156106ef57600080fd5b815180151581146106ff57600080fd5b9392505050565b808201808211156106b5576106b5610688565b60008060006060848603121561072e57600080fd5b835192506020840151915060408401519050925092509256fea26469706673582212203bbfc2847a32bae249d69ad8d37b53c95968d7cfa2daf468b3c74a14ded1d83e64736f6c63430008140033ab5df040718b8f3693f97387eae2b30dba7f3bb953d1029260a38be856fa3d0e00000000000000000000000000000000000000000000010f0cf064dd59200000000000000000000000000000d61dbb63a32c45020c0ecf1e065291ac1778fadd00000000000000000000000080f0c1c49891dcfdd40b6e0f960f84e6042bcb6f000000000000000000000000254f637af8d6276f5ffe4072279cb60a8e013e540000000000000000000000000d3f85c6175ce44f22e6cb54dc2bf25ab2a9dabc000000000000000000000000254f637af8d6276f5ffe4072279cb60a8e013e54