Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
Contract
Compiler Version
v0.4.24+commit.e67f0147
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-08-12 */ //author : dm & w pragma solidity ^0.4.23; library SafeMath { function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; assert(c / a == b); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a / b; return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { assert(b <= a); return a - b; } function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; assert(c >= a); return c; } } contract ERC20 { function transfer(address _to, uint256 _value) public returns (bool success); function balanceOf(address _owner) public constant returns (uint256 balance); } contract Controller { address public owner; modifier onlyOwner { require(msg.sender == owner); _; } function change_owner(address new_owner) onlyOwner { require(new_owner != 0x0); owner = new_owner; } function Controller() { owner = msg.sender; } } contract Contract is Controller { using SafeMath for uint256; struct Contributor { uint256 balance; uint256 fee_owner; uint256 fee_devs; uint8 rounds; bool whitelisted; } struct Snapshot { uint256 tokens_balance; uint256 eth_balance; } modifier underMaxAmount { require(max_amount == 0 || this.balance <= max_amount); _; } address constant public DEVELOPER1 = 0x8C006d807EBAe91F341a4308132Fd756808e0126; address constant public DEVELOPER2 = 0x63F7547Ac277ea0B52A0B060Be6af8C5904953aa; uint256 constant public FEE_DEV = 670; uint256 public FEE_OWNER; uint256 public max_amount; uint256 public individual_cap; uint256 public gas_price_max; uint8 public rounds; bool public whitelist_enabled; mapping (address => Contributor) public contributors; Snapshot[] public snapshots; uint256[] public total_fees; uint256 public const_contract_eth_value; uint256 public percent_reduction; address public sale; ERC20 public token; bool public bought_tokens; bool public owner_supplied_eth; bool public allow_contributions = true; bool public allow_refunds; //============================ constructor( uint256 _max_amount, bool _whitelist, uint256 _owner_fee_divisor ) { FEE_OWNER = _owner_fee_divisor; max_amount = calculate_with_fees(_max_amount); whitelist_enabled = _whitelist; Contributor storage contributor = contributors[msg.sender]; contributor.whitelisted = true; total_fees.length = 2; } function buy_the_tokens(bytes _data) onlyOwner { require(!bought_tokens && sale != 0x0); bought_tokens = true; const_contract_eth_value = this.balance; take_fees_eth_dev(); take_fees_eth_owner(); const_contract_eth_value = this.balance; require(sale.call.gas(msg.gas).value(this.balance)(_data)); } function whitelist_addys(address[] _addys, bool _state) onlyOwner { for (uint256 i = 0; i < _addys.length; i++) { Contributor storage contributor = contributors[_addys[i]]; contributor.whitelisted = _state; } } function force_refund(address _addy) onlyOwner { refund(_addy); } function force_partial_refund(address _addy) onlyOwner { partial_refund(_addy); } function set_gas_price_max(uint256 _gas_price) onlyOwner { gas_price_max = _gas_price; } function set_sale_address(address _sale) onlyOwner { require(_sale != 0x0); sale = _sale; } function set_token_address(address _token) onlyOwner { require(_token != 0x0); token = ERC20(_token); } function set_allow_contributions(bool _boolean) onlyOwner { allow_contributions = _boolean; } function set_allow_refunds(bool _boolean) onlyOwner { allow_refunds = _boolean; } function set_tokens_received() onlyOwner { tokens_received(); } function set_percent_reduction(uint256 _reduction) onlyOwner payable { require(bought_tokens && rounds == 0 && _reduction <= 100); percent_reduction = _reduction; if (msg.value > 0) { owner_supplied_eth = true; } const_contract_eth_value = const_contract_eth_value.sub((const_contract_eth_value.mul(_reduction)).div(100)); } function set_whitelist_enabled(bool _boolean) onlyOwner { whitelist_enabled = _boolean; } function change_individual_cap(uint256 _cap) onlyOwner { individual_cap = _cap; } function change_max_amount(uint256 _amount) onlyOwner { //ATTENTION! The new amount should be in wei //Use https://etherconverter.online/ max_amount = calculate_with_fees(_amount); } function change_fee(uint256 _fee) onlyOwner { FEE_OWNER = _fee; } function emergency_token_withdraw(address _address) onlyOwner { ERC20 temp_token = ERC20(_address); require(temp_token.transfer(msg.sender, temp_token.balanceOf(this))); } function emergency_eth_withdraw() onlyOwner { msg.sender.transfer(this.balance); } function withdraw(address _user) internal { require(bought_tokens); uint256 contract_token_balance = token.balanceOf(address(this)); require(contract_token_balance != 0); Contributor storage contributor = contributors[_user]; if (contributor.rounds < rounds) { Snapshot storage snapshot = snapshots[contributor.rounds]; uint256 tokens_to_withdraw = contributor.balance.mul(snapshot.tokens_balance).div(snapshot.eth_balance); snapshot.tokens_balance = snapshot.tokens_balance.sub(tokens_to_withdraw); snapshot.eth_balance = snapshot.eth_balance.sub(contributor.balance); contributor.rounds++; require(token.transfer(_user, tokens_to_withdraw)); } } function refund(address _user) internal { require(!bought_tokens && allow_refunds && percent_reduction == 0); Contributor storage contributor = contributors[_user]; total_fees[0] -= contributor.fee_owner; total_fees[1] -= contributor.fee_devs; uint256 eth_to_withdraw = contributor.balance.add(contributor.fee_owner).add(contributor.fee_devs); contributor.balance = 0; contributor.fee_owner = 0; contributor.fee_devs = 0; _user.transfer(eth_to_withdraw); } function partial_refund(address _user) internal { require(bought_tokens && allow_refunds && rounds == 0 && percent_reduction > 0); Contributor storage contributor = contributors[_user]; require(contributor.rounds == 0); uint256 eth_to_withdraw = contributor.balance.mul(percent_reduction).div(100); contributor.balance = contributor.balance.sub(eth_to_withdraw); if (owner_supplied_eth) { uint256 fee = contributor.fee_owner.mul(percent_reduction).div(100); eth_to_withdraw = eth_to_withdraw.add(fee); } _user.transfer(eth_to_withdraw); } function take_fees_eth_dev() internal { if (FEE_DEV != 0) { DEVELOPER1.transfer(total_fees[1]); DEVELOPER2.transfer(total_fees[1]); } } function take_fees_eth_owner() internal { if (FEE_OWNER != 0) { owner.transfer(total_fees[0]); } } function calculate_with_fees(uint256 _amount) internal returns (uint256) { uint256 temp = _amount; if (FEE_DEV != 0) { temp = temp.add(_amount.div(FEE_DEV/2)); } if (FEE_OWNER != 0) { temp = temp.add(_amount.div(FEE_OWNER)); } return temp; } function tokens_received() internal { uint256 previous_balance; for (uint8 i = 0; i < snapshots.length; i++) { previous_balance = previous_balance.add(snapshots[i].tokens_balance); } snapshots.push(Snapshot(token.balanceOf(address(this)).sub(previous_balance), const_contract_eth_value)); rounds++; } function tokenFallback(address _from, uint _value, bytes _data) { if (ERC20(msg.sender) == token) { tokens_received(); } } function withdraw_my_tokens() { for (uint8 i = contributors[msg.sender].rounds; i < rounds; i++) { withdraw(msg.sender); } } function withdraw_tokens_for(address _addy) { for (uint8 i = contributors[_addy].rounds; i < rounds; i++) { withdraw(_addy); } } function refund_my_ether() { refund(msg.sender); } function partial_refund_my_ether() { partial_refund(msg.sender); } function provide_eth() payable {} function () payable underMaxAmount { require(!bought_tokens && allow_contributions && (gas_price_max == 0 || tx.gasprice <= gas_price_max)); Contributor storage contributor = contributors[msg.sender]; if (whitelist_enabled) { require(contributor.whitelisted); } uint256 fee = 0; if (FEE_OWNER != 0) { fee = SafeMath.div(msg.value, FEE_OWNER); contributor.fee_owner += fee; total_fees[0] += fee; } uint256 fees = fee; if (FEE_DEV != 0) { fee = msg.value.div(FEE_DEV); total_fees[1] += fee; contributor.fee_devs += fee*2; fees = fees.add(fee*2); } contributor.balance = contributor.balance.add(msg.value.sub(fees)); require(individual_cap == 0 || contributor.balance <= individual_cap); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[],"name":"allow_contributions","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_boolean","type":"bool"}],"name":"set_whitelist_enabled","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"individual_cap","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"withdraw_my_tokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addy","type":"address"}],"name":"force_refund","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"max_amount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"contributors","outputs":[{"name":"balance","type":"uint256"},{"name":"fee_owner","type":"uint256"},{"name":"fee_devs","type":"uint256"},{"name":"rounds","type":"uint8"},{"name":"whitelisted","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"allow_refunds","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"new_owner","type":"address"}],"name":"change_owner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_cap","type":"uint256"}],"name":"change_individual_cap","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"change_max_amount","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"refund_my_ether","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"set_token_address","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"set_tokens_received","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"FEE_OWNER","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addy","type":"address"}],"name":"withdraw_tokens_for","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"const_contract_eth_value","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"partial_refund_my_ether","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"DEVELOPER2","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"bought_tokens","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_boolean","type":"bool"}],"name":"set_allow_contributions","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_reduction","type":"uint256"}],"name":"set_percent_reduction","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"emergency_token_withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner_supplied_eth","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sale","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_fee","type":"uint256"}],"name":"change_fee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addy","type":"address"}],"name":"force_partial_refund","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"gas_price_max","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"emergency_eth_withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"DEVELOPER1","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addys","type":"address[]"},{"name":"_state","type":"bool"}],"name":"whitelist_addys","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_data","type":"bytes"}],"name":"buy_the_tokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"whitelist_enabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"provide_eth","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"rounds","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_value","type":"uint256"},{"name":"_data","type":"bytes"}],"name":"tokenFallback","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"percent_reduction","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FEE_DEV","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"snapshots","outputs":[{"name":"tokens_balance","type":"uint256"},{"name":"eth_balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_gas_price","type":"uint256"}],"name":"set_gas_price_max","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_boolean","type":"bool"}],"name":"set_allow_refunds","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"total_fees","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_sale","type":"address"}],"name":"set_sale_address","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_max_amount","type":"uint256"},{"name":"_whitelist","type":"bool"},{"name":"_owner_fee_divisor","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"}]
Contract Creation Code
60806040526001600c60166101000a81548160ff0219169083151502179055503480156200002c57600080fd5b5060405160608062002d8f8339810180604052810190808051906020019092919080519060200190929190805190602001909291905050506000336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600181905550620000c78462000161640100000000026401000000009004565b60028190555082600560016101000a81548160ff021916908315150217905550600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905060018160030160016101000a81548160ff021916908315150217905550600260088162000156919062000266565b5050505050620002bd565b600080829050600061029e141515620001cb57620001c8620001aa600261029e8115156200018b57fe5b04856200022b6401000000000262000e71179091906401000000009004565b82620002476401000000000262000e8c179091906401000000009004565b90505b600060015414151562000222576200021f62000201600154856200022b6401000000000262000e71179091906401000000009004565b82620002476401000000000262000e8c179091906401000000009004565b90505b80915050919050565b60008082848115156200023a57fe5b0490508091505092915050565b60008082840190508381101515156200025c57fe5b8091505092915050565b81548183558181111562000290578183600052602060002091820191016200028f919062000295565b5b505050565b620002ba91905b80821115620002b65760008160009055506001016200029c565b5090565b90565b612ac280620002cd6000396000f300608060405260043610610225576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806303b918dc1461044e57806310d2f2e51461047d578063111485ef146104ac578063157f67e8146104d757806318af7021146104ee5780631a34fe81146105315780631f6d49421461055c578063223db315146105d9578063253c8bd41461060857806329d98a7b1461064b578063398f2648146106785780633c4293d8146106a557806342263aa2146106bc57806348103077146106ff57806349edfb94146107165780635219ffb81461074157806356813535146107845780635a8830e2146107af57806360e393c6146107c65780636360fc3f1461081d578063666375e51461084c578063678f70331461087b578063687ab3811461089b5780636954abee146108de5780636ad1fe021461090d5780636ceba55e146109645780637036f9d9146109915780637520bf60146109d45780637a87f51a146109ff57806382b2f95f14610a1657806383b47a4d14610a6d5780638611731914610adf5780638a8b7e0214610b485780638da5cb5b14610b775780638f49a26414610bce578063a2e800ad14610bd8578063c0ee0b8a14610c09578063c34dd14114610c9c578063d54839bf14610cc7578063d6565a2d14610cf2578063e70e690a14610d3a578063ebc56eec14610d67578063ef956c4114610d96578063f2bee03d14610dd7578063fc0c546a14610e1a575b600080600080600254148061025357506002543073ffffffffffffffffffffffffffffffffffffffff163111155b151561025e57600080fd5b600c60149054906101000a900460ff161580156102875750600c60169054906101000a900460ff165b80156102a25750600060045414806102a157506004543a11155b5b15156102ad57600080fd5b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209250600560019054906101000a900460ff1615610321578260030160019054906101000a900460ff16151561032057600080fd5b5b60009150600060015414151561037a5761033d34600154610e71565b9150818360010160008282540192505081905550816008600081548110151561036257fe5b90600052602060002001600082825401925050819055505b819050600061029e1415156103f65761039e61029e34610e7190919063ffffffff16565b915081600860018154811015156103b157fe5b90600052602060002001600082825401925050819055506002820283600201600082825401925050819055506103f36002830282610e8c90919063ffffffff16565b90505b61041f61040c8234610eaa90919063ffffffff16565b8460000154610e8c90919063ffffffff16565b83600001819055506000600354148061043e5750600354836000015411155b151561044957600080fd5b505050005b34801561045a57600080fd5b50610463610ec3565b604051808215151515815260200191505060405180910390f35b34801561048957600080fd5b506104aa600480360381019080803515159060200190929190505050610ed6565b005b3480156104b857600080fd5b506104c1610f4e565b6040518082815260200191505060405180910390f35b3480156104e357600080fd5b506104ec610f54565b005b3480156104fa57600080fd5b5061052f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fdf565b005b34801561053d57600080fd5b50610546611046565b6040518082815260200191505060405180910390f35b34801561056857600080fd5b5061059d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061104c565b604051808681526020018581526020018481526020018360ff1660ff168152602001821515151581526020019550505050505060405180910390f35b3480156105e557600080fd5b506105ee61109c565b604051808215151515815260200191505060405180910390f35b34801561061457600080fd5b50610649600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110af565b005b34801561065757600080fd5b5061067660048036038101908080359060200190929190505050611173565b005b34801561068457600080fd5b506106a3600480360381019080803590602001909291905050506111d8565b005b3480156106b157600080fd5b506106ba611245565b005b3480156106c857600080fd5b506106fd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611250565b005b34801561070b57600080fd5b50610714611315565b005b34801561072257600080fd5b5061072b61137a565b6040518082815260200191505060405180910390f35b34801561074d57600080fd5b50610782600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611380565b005b34801561079057600080fd5b5061079961140c565b6040518082815260200191505060405180910390f35b3480156107bb57600080fd5b506107c4611412565b005b3480156107d257600080fd5b506107db61141d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561082957600080fd5b50610832611435565b604051808215151515815260200191505060405180910390f35b34801561085857600080fd5b50610879600480360381019080803515159060200190929190505050611448565b005b610899600480360381019080803590602001909291905050506114c0565b005b3480156108a757600080fd5b506108dc600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506115d2565b005b3480156108ea57600080fd5b506108f36117f4565b604051808215151515815260200191505060405180910390f35b34801561091957600080fd5b50610922611807565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561097057600080fd5b5061098f6004803603810190808035906020019092919050505061182d565b005b34801561099d57600080fd5b506109d2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611892565b005b3480156109e057600080fd5b506109e96118f9565b6040518082815260200191505060405180910390f35b348015610a0b57600080fd5b50610a146118ff565b005b348015610a2257600080fd5b50610a2b6119ba565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610a7957600080fd5b50610add600480360381019080803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192908035151590602001909291905050506119d2565b005b348015610aeb57600080fd5b50610b46600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611ac5565b005b348015610b5457600080fd5b50610b5d611cb9565b604051808215151515815260200191505060405180910390f35b348015610b8357600080fd5b50610b8c611ccc565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610bd6611cf1565b005b348015610be457600080fd5b50610bed611cf3565b604051808260ff1660ff16815260200191505060405180910390f35b348015610c1557600080fd5b50610c9a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611d06565b005b348015610ca857600080fd5b50610cb1611d6a565b6040518082815260200191505060405180910390f35b348015610cd357600080fd5b50610cdc611d70565b6040518082815260200191505060405180910390f35b348015610cfe57600080fd5b50610d1d60048036038101908080359060200190929190505050611d76565b604051808381526020018281526020019250505060405180910390f35b348015610d4657600080fd5b50610d6560048036038101908080359060200190929190505050611da9565b005b348015610d7357600080fd5b50610d94600480360381019080803515159060200190929190505050611e0e565b005b348015610da257600080fd5b50610dc160048036038101908080359060200190929190505050611e86565b6040518082815260200191505060405180910390f35b348015610de357600080fd5b50610e18600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611ea9565b005b348015610e2657600080fd5b50610e2f611f6e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000808284811515610e7f57fe5b0490508091505092915050565b6000808284019050838110151515610ea057fe5b8091505092915050565b6000828211151515610eb857fe5b818303905092915050565b600c60169054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f3157600080fd5b80600560016101000a81548160ff02191690831515021790555050565b60035481565b6000600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160009054906101000a900460ff1690505b600560009054906101000a900460ff1660ff168160ff161015610fdc57610fcf33611f94565b8080600101915050610fa9565b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561103a57600080fd5b6110438161231d565b50565b60025481565b60066020528060005260406000206000915090508060000154908060010154908060020154908060030160009054906101000a900460ff16908060030160019054906101000a900460ff16905085565b600c60179054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561110a57600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff161415151561113057600080fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156111ce57600080fd5b8060038190555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561123357600080fd5b61123c81612498565b60028190555050565b61124e3361231d565b565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156112ab57600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff16141515156112d157600080fd5b80600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561137057600080fd5b61137861251f565b565b60015481565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160009054906101000a900460ff1690505b600560009054906101000a900460ff1660ff168160ff161015611408576113fb82611f94565b80806001019150506113d5565b5050565b60095481565b61141b33612716565b565b7363f7547ac277ea0b52a0b060be6af8c5904953aa81565b600c60149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156114a357600080fd5b80600c60166101000a81548160ff02191690831515021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561151b57600080fd5b600c60149054906101000a900460ff16801561154957506000600560009054906101000a900460ff1660ff16145b8015611556575060648111155b151561156157600080fd5b80600a81905550600034111561158d576001600c60156101000a81548160ff0219169083151502179055505b6115c96115b860646115aa846009546128d190919063ffffffff16565b610e7190919063ffffffff16565b600954610eaa90919063ffffffff16565b60098190555050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561162f57600080fd5b8190508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb338373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1580156116ea57600080fd5b505af11580156116fe573d6000803e3d6000fd5b505050506040513d602081101561171457600080fd5b81019080805190602001909291905050506040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156117aa57600080fd5b505af11580156117be573d6000803e3d6000fd5b505050506040513d60208110156117d457600080fd5b810190808051906020019092919050505015156117f057600080fd5b5050565b600c60159054906101000a900460ff1681565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561188857600080fd5b8060018190555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156118ed57600080fd5b6118f681612716565b50565b60045481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561195a57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f193505050501580156119b7573d6000803e3d6000fd5b50565b738c006d807ebae91f341a4308132fd756808e012681565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611a3057600080fd5b600091505b8351821015611abf57600660008584815181101515611a5057fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050828160030160016101000a81548160ff0219169083151502179055508180600101925050611a35565b50505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611b2057600080fd5b600c60149054906101000a900460ff16158015611b7657506000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b1515611b8157600080fd5b6001600c60146101000a81548160ff0219169083151502179055503073ffffffffffffffffffffffffffffffffffffffff1631600981905550611bc261290c565b611bca612a05565b3073ffffffffffffffffffffffffffffffffffffffff1631600981905550600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff165a3073ffffffffffffffffffffffffffffffffffffffff16318360405180828051906020019080838360005b83811015611c68578082015181840152602081019050611c4d565b50505050905090810190601f168015611c955780820380516001836020036101000a031916815260200191505b50915050600060405180830381858888f193505050501515611cb657600080fd5b50565b600560019054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b565b600560009054906101000a900460ff1681565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415611d6557611d6461251f565b5b505050565b600a5481565b61029e81565b600781815481101515611d8557fe5b90600052602060002090600202016000915090508060000154908060010154905082565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e0457600080fd5b8060048190555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e6957600080fd5b80600c60176101000a81548160ff02191690831515021790555050565b600881815481101515611e9557fe5b906000526020600020016000915090505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611f0457600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff1614151515611f2a57600080fd5b80600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600080600c60149054906101000a900460ff161515611fb557600080fd5b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15801561207257600080fd5b505af1158015612086573d6000803e3d6000fd5b505050506040513d602081101561209c57600080fd5b81019080805190602001909291905050509350600084141515156120bf57600080fd5b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209250600560009054906101000a900460ff1660ff168360030160009054906101000a900460ff1660ff1610156123165760078360030160009054906101000a900460ff1660ff1681548110151561215157fe5b906000526020600020906002020191506121928260010154612184846000015486600001546128d190919063ffffffff16565b610e7190919063ffffffff16565b90506121ab818360000154610eaa90919063ffffffff16565b82600001819055506121ce83600001548360010154610eaa90919063ffffffff16565b826001018190555082600301600081819054906101000a900460ff168092919060010191906101000a81548160ff021916908360ff16021790555050600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb86836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156122cf57600080fd5b505af11580156122e3573d6000803e3d6000fd5b505050506040513d60208110156122f957600080fd5b8101908080519060200190929190505050151561231557600080fd5b5b5050505050565b600080600c60149054906101000a900460ff161580156123495750600c60179054906101000a900460ff165b801561235757506000600a54145b151561236257600080fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002091508160010154600860008154811015156123b857fe5b90600052602060002001600082825403925050819055508160020154600860018154811015156123e457fe5b906000526020600020016000828254039250508190555061242c826002015461241e84600101548560000154610e8c90919063ffffffff16565b610e8c90919063ffffffff16565b90506000826000018190555060008260010181905550600082600201819055508273ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612492573d6000803e3d6000fd5b50505050565b600080829050600061029e1415156124e0576124dd6124ce600261029e8115156124be57fe5b0485610e7190919063ffffffff16565b82610e8c90919063ffffffff16565b90505b60006001541415156125165761251361250460015485610e7190919063ffffffff16565b82610e8c90919063ffffffff16565b90505b80915050919050565b600080600090505b6007805490508160ff16101561257c5761256d60078260ff1681548110151561254c57fe5b90600052602060002090600202016000015483610e8c90919063ffffffff16565b91508080600101915050612527565b6007604080519081016040528061269385600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15801561264a57600080fd5b505af115801561265e573d6000803e3d6000fd5b505050506040513d602081101561267457600080fd5b8101908080519060200190929190505050610eaa90919063ffffffff16565b81526020016009548152509080600181540180825580915050906001820390600052602060002090600202016000909192909190915060008201518160000155602082015181600101555050506005600081819054906101000a900460ff168092919060010191906101000a81548160ff021916908360ff160217905550505050565b6000806000600c60149054906101000a900460ff1680156127435750600c60179054906101000a900460ff165b801561276157506000600560009054906101000a900460ff1660ff16145b801561276f57506000600a54115b151561277a57600080fd5b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020925060008360030160009054906101000a900460ff1660ff161415156127de57600080fd5b61280a60646127fc600a5486600001546128d190919063ffffffff16565b610e7190919063ffffffff16565b9150612823828460000154610eaa90919063ffffffff16565b8360000181905550600c60159054906101000a900460ff16156128845761286c606461285e600a5486600101546128d190919063ffffffff16565b610e7190919063ffffffff16565b90506128818183610e8c90919063ffffffff16565b91505b8373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501580156128ca573d6000803e3d6000fd5b5050505050565b60008060008414156128e65760009150612905565b82840290508284828115156128f757fe5b0414151561290157fe5b8091505b5092915050565b600061029e141515612a0357738c006d807ebae91f341a4308132fd756808e012673ffffffffffffffffffffffffffffffffffffffff166108fc6008600181548110151561295657fe5b90600052602060002001549081150290604051600060405180830381858888f1935050505015801561298c573d6000803e3d6000fd5b507363f7547ac277ea0b52a0b060be6af8c5904953aa73ffffffffffffffffffffffffffffffffffffffff166108fc600860018154811015156129cb57fe5b90600052602060002001549081150290604051600060405180830381858888f19350505050158015612a01573d6000803e3d6000fd5b505b565b6000600154141515612a94576000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc60086000815481101515612a5c57fe5b90600052602060002001549081150290604051600060405180830381858888f19350505050158015612a92573d6000803e3d6000fd5b505b5600a165627a7a72305820d5e270a9074e2dd0d38ef530109f1fc9e0cb15789ea60646ee90a5e15c12d9ff00290000000000000000000000000000000000000000000000a2a15d09519be0000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000025
Deployed Bytecode
0x608060405260043610610225576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806303b918dc1461044e57806310d2f2e51461047d578063111485ef146104ac578063157f67e8146104d757806318af7021146104ee5780631a34fe81146105315780631f6d49421461055c578063223db315146105d9578063253c8bd41461060857806329d98a7b1461064b578063398f2648146106785780633c4293d8146106a557806342263aa2146106bc57806348103077146106ff57806349edfb94146107165780635219ffb81461074157806356813535146107845780635a8830e2146107af57806360e393c6146107c65780636360fc3f1461081d578063666375e51461084c578063678f70331461087b578063687ab3811461089b5780636954abee146108de5780636ad1fe021461090d5780636ceba55e146109645780637036f9d9146109915780637520bf60146109d45780637a87f51a146109ff57806382b2f95f14610a1657806383b47a4d14610a6d5780638611731914610adf5780638a8b7e0214610b485780638da5cb5b14610b775780638f49a26414610bce578063a2e800ad14610bd8578063c0ee0b8a14610c09578063c34dd14114610c9c578063d54839bf14610cc7578063d6565a2d14610cf2578063e70e690a14610d3a578063ebc56eec14610d67578063ef956c4114610d96578063f2bee03d14610dd7578063fc0c546a14610e1a575b600080600080600254148061025357506002543073ffffffffffffffffffffffffffffffffffffffff163111155b151561025e57600080fd5b600c60149054906101000a900460ff161580156102875750600c60169054906101000a900460ff165b80156102a25750600060045414806102a157506004543a11155b5b15156102ad57600080fd5b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209250600560019054906101000a900460ff1615610321578260030160019054906101000a900460ff16151561032057600080fd5b5b60009150600060015414151561037a5761033d34600154610e71565b9150818360010160008282540192505081905550816008600081548110151561036257fe5b90600052602060002001600082825401925050819055505b819050600061029e1415156103f65761039e61029e34610e7190919063ffffffff16565b915081600860018154811015156103b157fe5b90600052602060002001600082825401925050819055506002820283600201600082825401925050819055506103f36002830282610e8c90919063ffffffff16565b90505b61041f61040c8234610eaa90919063ffffffff16565b8460000154610e8c90919063ffffffff16565b83600001819055506000600354148061043e5750600354836000015411155b151561044957600080fd5b505050005b34801561045a57600080fd5b50610463610ec3565b604051808215151515815260200191505060405180910390f35b34801561048957600080fd5b506104aa600480360381019080803515159060200190929190505050610ed6565b005b3480156104b857600080fd5b506104c1610f4e565b6040518082815260200191505060405180910390f35b3480156104e357600080fd5b506104ec610f54565b005b3480156104fa57600080fd5b5061052f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fdf565b005b34801561053d57600080fd5b50610546611046565b6040518082815260200191505060405180910390f35b34801561056857600080fd5b5061059d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061104c565b604051808681526020018581526020018481526020018360ff1660ff168152602001821515151581526020019550505050505060405180910390f35b3480156105e557600080fd5b506105ee61109c565b604051808215151515815260200191505060405180910390f35b34801561061457600080fd5b50610649600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110af565b005b34801561065757600080fd5b5061067660048036038101908080359060200190929190505050611173565b005b34801561068457600080fd5b506106a3600480360381019080803590602001909291905050506111d8565b005b3480156106b157600080fd5b506106ba611245565b005b3480156106c857600080fd5b506106fd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611250565b005b34801561070b57600080fd5b50610714611315565b005b34801561072257600080fd5b5061072b61137a565b6040518082815260200191505060405180910390f35b34801561074d57600080fd5b50610782600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611380565b005b34801561079057600080fd5b5061079961140c565b6040518082815260200191505060405180910390f35b3480156107bb57600080fd5b506107c4611412565b005b3480156107d257600080fd5b506107db61141d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561082957600080fd5b50610832611435565b604051808215151515815260200191505060405180910390f35b34801561085857600080fd5b50610879600480360381019080803515159060200190929190505050611448565b005b610899600480360381019080803590602001909291905050506114c0565b005b3480156108a757600080fd5b506108dc600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506115d2565b005b3480156108ea57600080fd5b506108f36117f4565b604051808215151515815260200191505060405180910390f35b34801561091957600080fd5b50610922611807565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561097057600080fd5b5061098f6004803603810190808035906020019092919050505061182d565b005b34801561099d57600080fd5b506109d2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611892565b005b3480156109e057600080fd5b506109e96118f9565b6040518082815260200191505060405180910390f35b348015610a0b57600080fd5b50610a146118ff565b005b348015610a2257600080fd5b50610a2b6119ba565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610a7957600080fd5b50610add600480360381019080803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192908035151590602001909291905050506119d2565b005b348015610aeb57600080fd5b50610b46600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611ac5565b005b348015610b5457600080fd5b50610b5d611cb9565b604051808215151515815260200191505060405180910390f35b348015610b8357600080fd5b50610b8c611ccc565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610bd6611cf1565b005b348015610be457600080fd5b50610bed611cf3565b604051808260ff1660ff16815260200191505060405180910390f35b348015610c1557600080fd5b50610c9a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611d06565b005b348015610ca857600080fd5b50610cb1611d6a565b6040518082815260200191505060405180910390f35b348015610cd357600080fd5b50610cdc611d70565b6040518082815260200191505060405180910390f35b348015610cfe57600080fd5b50610d1d60048036038101908080359060200190929190505050611d76565b604051808381526020018281526020019250505060405180910390f35b348015610d4657600080fd5b50610d6560048036038101908080359060200190929190505050611da9565b005b348015610d7357600080fd5b50610d94600480360381019080803515159060200190929190505050611e0e565b005b348015610da257600080fd5b50610dc160048036038101908080359060200190929190505050611e86565b6040518082815260200191505060405180910390f35b348015610de357600080fd5b50610e18600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611ea9565b005b348015610e2657600080fd5b50610e2f611f6e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000808284811515610e7f57fe5b0490508091505092915050565b6000808284019050838110151515610ea057fe5b8091505092915050565b6000828211151515610eb857fe5b818303905092915050565b600c60169054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f3157600080fd5b80600560016101000a81548160ff02191690831515021790555050565b60035481565b6000600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160009054906101000a900460ff1690505b600560009054906101000a900460ff1660ff168160ff161015610fdc57610fcf33611f94565b8080600101915050610fa9565b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561103a57600080fd5b6110438161231d565b50565b60025481565b60066020528060005260406000206000915090508060000154908060010154908060020154908060030160009054906101000a900460ff16908060030160019054906101000a900460ff16905085565b600c60179054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561110a57600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff161415151561113057600080fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156111ce57600080fd5b8060038190555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561123357600080fd5b61123c81612498565b60028190555050565b61124e3361231d565b565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156112ab57600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff16141515156112d157600080fd5b80600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561137057600080fd5b61137861251f565b565b60015481565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160009054906101000a900460ff1690505b600560009054906101000a900460ff1660ff168160ff161015611408576113fb82611f94565b80806001019150506113d5565b5050565b60095481565b61141b33612716565b565b7363f7547ac277ea0b52a0b060be6af8c5904953aa81565b600c60149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156114a357600080fd5b80600c60166101000a81548160ff02191690831515021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561151b57600080fd5b600c60149054906101000a900460ff16801561154957506000600560009054906101000a900460ff1660ff16145b8015611556575060648111155b151561156157600080fd5b80600a81905550600034111561158d576001600c60156101000a81548160ff0219169083151502179055505b6115c96115b860646115aa846009546128d190919063ffffffff16565b610e7190919063ffffffff16565b600954610eaa90919063ffffffff16565b60098190555050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561162f57600080fd5b8190508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb338373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1580156116ea57600080fd5b505af11580156116fe573d6000803e3d6000fd5b505050506040513d602081101561171457600080fd5b81019080805190602001909291905050506040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156117aa57600080fd5b505af11580156117be573d6000803e3d6000fd5b505050506040513d60208110156117d457600080fd5b810190808051906020019092919050505015156117f057600080fd5b5050565b600c60159054906101000a900460ff1681565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561188857600080fd5b8060018190555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156118ed57600080fd5b6118f681612716565b50565b60045481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561195a57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f193505050501580156119b7573d6000803e3d6000fd5b50565b738c006d807ebae91f341a4308132fd756808e012681565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611a3057600080fd5b600091505b8351821015611abf57600660008584815181101515611a5057fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050828160030160016101000a81548160ff0219169083151502179055508180600101925050611a35565b50505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611b2057600080fd5b600c60149054906101000a900460ff16158015611b7657506000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b1515611b8157600080fd5b6001600c60146101000a81548160ff0219169083151502179055503073ffffffffffffffffffffffffffffffffffffffff1631600981905550611bc261290c565b611bca612a05565b3073ffffffffffffffffffffffffffffffffffffffff1631600981905550600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff165a3073ffffffffffffffffffffffffffffffffffffffff16318360405180828051906020019080838360005b83811015611c68578082015181840152602081019050611c4d565b50505050905090810190601f168015611c955780820380516001836020036101000a031916815260200191505b50915050600060405180830381858888f193505050501515611cb657600080fd5b50565b600560019054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b565b600560009054906101000a900460ff1681565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415611d6557611d6461251f565b5b505050565b600a5481565b61029e81565b600781815481101515611d8557fe5b90600052602060002090600202016000915090508060000154908060010154905082565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e0457600080fd5b8060048190555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e6957600080fd5b80600c60176101000a81548160ff02191690831515021790555050565b600881815481101515611e9557fe5b906000526020600020016000915090505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611f0457600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff1614151515611f2a57600080fd5b80600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600080600c60149054906101000a900460ff161515611fb557600080fd5b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15801561207257600080fd5b505af1158015612086573d6000803e3d6000fd5b505050506040513d602081101561209c57600080fd5b81019080805190602001909291905050509350600084141515156120bf57600080fd5b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209250600560009054906101000a900460ff1660ff168360030160009054906101000a900460ff1660ff1610156123165760078360030160009054906101000a900460ff1660ff1681548110151561215157fe5b906000526020600020906002020191506121928260010154612184846000015486600001546128d190919063ffffffff16565b610e7190919063ffffffff16565b90506121ab818360000154610eaa90919063ffffffff16565b82600001819055506121ce83600001548360010154610eaa90919063ffffffff16565b826001018190555082600301600081819054906101000a900460ff168092919060010191906101000a81548160ff021916908360ff16021790555050600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb86836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156122cf57600080fd5b505af11580156122e3573d6000803e3d6000fd5b505050506040513d60208110156122f957600080fd5b8101908080519060200190929190505050151561231557600080fd5b5b5050505050565b600080600c60149054906101000a900460ff161580156123495750600c60179054906101000a900460ff165b801561235757506000600a54145b151561236257600080fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002091508160010154600860008154811015156123b857fe5b90600052602060002001600082825403925050819055508160020154600860018154811015156123e457fe5b906000526020600020016000828254039250508190555061242c826002015461241e84600101548560000154610e8c90919063ffffffff16565b610e8c90919063ffffffff16565b90506000826000018190555060008260010181905550600082600201819055508273ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612492573d6000803e3d6000fd5b50505050565b600080829050600061029e1415156124e0576124dd6124ce600261029e8115156124be57fe5b0485610e7190919063ffffffff16565b82610e8c90919063ffffffff16565b90505b60006001541415156125165761251361250460015485610e7190919063ffffffff16565b82610e8c90919063ffffffff16565b90505b80915050919050565b600080600090505b6007805490508160ff16101561257c5761256d60078260ff1681548110151561254c57fe5b90600052602060002090600202016000015483610e8c90919063ffffffff16565b91508080600101915050612527565b6007604080519081016040528061269385600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15801561264a57600080fd5b505af115801561265e573d6000803e3d6000fd5b505050506040513d602081101561267457600080fd5b8101908080519060200190929190505050610eaa90919063ffffffff16565b81526020016009548152509080600181540180825580915050906001820390600052602060002090600202016000909192909190915060008201518160000155602082015181600101555050506005600081819054906101000a900460ff168092919060010191906101000a81548160ff021916908360ff160217905550505050565b6000806000600c60149054906101000a900460ff1680156127435750600c60179054906101000a900460ff165b801561276157506000600560009054906101000a900460ff1660ff16145b801561276f57506000600a54115b151561277a57600080fd5b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020925060008360030160009054906101000a900460ff1660ff161415156127de57600080fd5b61280a60646127fc600a5486600001546128d190919063ffffffff16565b610e7190919063ffffffff16565b9150612823828460000154610eaa90919063ffffffff16565b8360000181905550600c60159054906101000a900460ff16156128845761286c606461285e600a5486600101546128d190919063ffffffff16565b610e7190919063ffffffff16565b90506128818183610e8c90919063ffffffff16565b91505b8373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501580156128ca573d6000803e3d6000fd5b5050505050565b60008060008414156128e65760009150612905565b82840290508284828115156128f757fe5b0414151561290157fe5b8091505b5092915050565b600061029e141515612a0357738c006d807ebae91f341a4308132fd756808e012673ffffffffffffffffffffffffffffffffffffffff166108fc6008600181548110151561295657fe5b90600052602060002001549081150290604051600060405180830381858888f1935050505015801561298c573d6000803e3d6000fd5b507363f7547ac277ea0b52a0b060be6af8c5904953aa73ffffffffffffffffffffffffffffffffffffffff166108fc600860018154811015156129cb57fe5b90600052602060002001549081150290604051600060405180830381858888f19350505050158015612a01573d6000803e3d6000fd5b505b565b6000600154141515612a94576000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc60086000815481101515612a5c57fe5b90600052602060002001549081150290604051600060405180830381858888f19350505050158015612a92573d6000803e3d6000fd5b505b5600a165627a7a72305820d5e270a9074e2dd0d38ef530109f1fc9e0cb15789ea60646ee90a5e15c12d9ff0029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000000000000000000000000000a2a15d09519be0000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000025
-----Decoded View---------------
Arg [0] : _max_amount (uint256): 3000000000000000000000
Arg [1] : _whitelist (bool): True
Arg [2] : _owner_fee_divisor (uint256): 37
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000a2a15d09519be00000
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000025
Swarm Source
bzzr://d5e270a9074e2dd0d38ef530109f1fc9e0cb15789ea60646ee90a5e15c12d9ff
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 31 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.