More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 3,248 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Lock Unsold Toke... | 4721685 | 2579 days ago | IN | 0 ETH | 0.07490615 | ||||
Remove Transfer ... | 4721285 | 2579 days ago | IN | 0 ETH | 0.00331903 | ||||
Reverse Purchase | 4716550 | 2580 days ago | IN | 0.00000001 ETH | 0.00472659 | ||||
Reverse Purchase | 4716535 | 2580 days ago | IN | 0.05999999 ETH | 0.00472659 | ||||
Reverse Purchase | 4716500 | 2580 days ago | IN | 0.05999999 ETH | 0.00472659 | ||||
Reverse Purchase | 4716462 | 2580 days ago | IN | 0.00599999 ETH | 0.00472659 | ||||
Reverse Purchase | 4716441 | 2580 days ago | IN | 0.00000007 ETH | 0.00289905 | ||||
Reverse Purchase | 4716423 | 2580 days ago | IN | 0 ETH | 0.005271 | ||||
Reverse Purchase | 4716407 | 2580 days ago | IN | 0 ETH | 0.005271 | ||||
Reverse Purchase | 4716402 | 2580 days ago | IN | 0 ETH | 0.005271 | ||||
Reverse Purchase | 4716392 | 2580 days ago | IN | 0 ETH | 0.005271 | ||||
Reverse Purchase | 4716370 | 2580 days ago | IN | 0 ETH | 0.005271 | ||||
Reverse Purchase | 4716177 | 2580 days ago | IN | 0 ETH | 0.0026355 | ||||
Transfer | 4711716 | 2580 days ago | IN | 0.4 ETH | 0.00021043 | ||||
Purchase Tokens | 4711049 | 2581 days ago | IN | 0.02 ETH | 0.00022587 | ||||
Purchase Tokens | 4710863 | 2581 days ago | IN | 1.11 ETH | 0.00022812 | ||||
Purchase Tokens | 4707618 | 2581 days ago | IN | 0.2 ETH | 0.00045174 | ||||
Purchase Tokens | 4707299 | 2581 days ago | IN | 2.8 ETH | 0.00047432 | ||||
Purchase Tokens | 4689624 | 2584 days ago | IN | 20 ETH | 0.00135522 | ||||
Purchase Tokens | 4689607 | 2584 days ago | IN | 20 ETH | 0.00111128 | ||||
Purchase Tokens | 4687736 | 2585 days ago | IN | 1 ETH | 0.0003 | ||||
Add Whitelist | 4687735 | 2585 days ago | IN | 0 ETH | 0.00461545 | ||||
Add Whitelist | 4687541 | 2585 days ago | IN | 0 ETH | 0.00461993 | ||||
Add Whitelist | 4687491 | 2585 days ago | IN | 0 ETH | 0.00461993 | ||||
Add Whitelist | 4687472 | 2585 days ago | IN | 0 ETH | 0.00461993 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
4721685 | 2579 days ago | Contract Creation | 0 ETH | |||
4716550 | 2580 days ago | 0 ETH | ||||
4716550 | 2580 days ago | 0.00000001 ETH | ||||
4716535 | 2580 days ago | 0.03999999 ETH | ||||
4716535 | 2580 days ago | 0.01999999 ETH | ||||
4716500 | 2580 days ago | 0.04999999 ETH | ||||
4716500 | 2580 days ago | 0.01 ETH | ||||
4716462 | 2580 days ago | 0.00499999 ETH | ||||
4716462 | 2580 days ago | 0.001 ETH | ||||
4687222 | 2585 days ago | 0.06999999 ETH | ||||
4687222 | 2585 days ago | 0 ETH | ||||
4687214 | 2585 days ago | 0.99999999 ETH | ||||
4687214 | 2585 days ago | 1 wei | ||||
4686226 | 2585 days ago | 0.02999999 ETH | ||||
4686226 | 2585 days ago | 0 ETH | ||||
4685671 | 2585 days ago | 1.53522238 ETH | ||||
4685671 | 2585 days ago | 0 ETH | ||||
4685398 | 2585 days ago | 0.99999999 ETH | ||||
4685398 | 2585 days ago | 1 wei | ||||
4684805 | 2585 days ago | 0.99999999 ETH | ||||
4684805 | 2585 days ago | 1 wei | ||||
4684652 | 2585 days ago | 0.49999999 ETH | ||||
4684652 | 2585 days ago | 0 ETH | ||||
4684553 | 2585 days ago | 2.99999999 ETH | ||||
4684553 | 2585 days ago | 3 wei |
Loading...
Loading
Contract Name:
Sale
Compiler Version
v0.4.17+commit.bdeb9e52
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2017-11-07 */ library SafeMath { function mul(uint256 a, uint256 b) pure internal returns (uint256) { uint256 c = a * b; assert(a == 0 || c / a == b); return c; } function div(uint256 a, uint256 b) pure internal returns (uint256) { // assert(b > 0); // Solidity automatically throws when dividing by 0 uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } function sub(uint256 a, uint256 b) pure internal returns (uint256) { assert(b <= a); return a - b; } function add(uint256 a, uint256 b) pure internal returns (uint256) { uint256 c = a + b; assert(c >= a); return c; } } contract Token { /* This is a slight change to the ERC20 base standard. function totalSupply() constant returns (uint256 supply); is replaced with: uint256 public totalSupply; This automatically creates a getter function for the totalSupply. This is moved to the base contract since public getter functions are not currently recognised as an implementation of the matching abstract function by the compiler. */ /// total amount of tokens uint256 public totalSupply; address public sale; bool public transfersAllowed; /// @param _owner The address from which the balance will be retrieved /// @return The balance function balanceOf(address _owner) constant public returns (uint256 balance); /// @notice send `_value` token to `_to` from `msg.sender` /// @param _to The address of the recipient /// @param _value The amount of token to be transferred /// @return Whether the transfer was successful or not function transfer(address _to, uint256 _value) public returns (bool success); /// @notice send `_value` token to `_to` from `_from` on the condition it is approved by `_from` /// @param _from The address of the sender /// @param _to The address of the recipient /// @param _value The amount of token to be transferred /// @return Whether the transfer was successful or not function transferFrom(address _from, address _to, uint256 _value) public returns (bool success); /// @notice `msg.sender` approves `_spender` to spend `_value` tokens /// @param _spender The address of the account able to transfer the tokens /// @param _value The amount of tokens to be approved for transfer /// @return Whether the approval was successful or not function approve(address _spender, uint256 _value) public returns (bool success); /// @param _owner The address of the account owning tokens /// @param _spender The address of the account able to transfer the tokens /// @return Amount of remaining tokens allowed to spent function allowance(address _owner, address _spender) constant public returns (uint256 remaining); event Transfer(address indexed _from, address indexed _to, uint256 _value); event Approval(address indexed _owner, address indexed _spender, uint256 _value); } contract StandardToken is Token { function transfer(address _to, uint256 _value) public validTransfer returns (bool success) { //Default assumes totalSupply can't be over max (2^256 - 1). //If your token leaves out totalSupply and can issue more tokens as time goes on, you need to check if it doesn't wrap. //Replace the if with this one instead. //require(balances[msg.sender] >= _value && balances[_to] + _value > balances[_to]); require(balances[msg.sender] >= _value); balances[msg.sender] = SafeMath.sub(balances[msg.sender], _value); balances[_to] = SafeMath.add(balances[_to],_value); Transfer(msg.sender, _to, _value); return true; } function transferFrom(address _from, address _to, uint256 _value) public validTransfer returns (bool success) { //same as above. Replace this line with the following if you want to protect against wrapping uints. //require(balances[_from] >= _value && allowed[_from][msg.sender] >= _value && balances[_to] + _value > balances[_to]); require(balances[_from] >= _value && allowed[_from][msg.sender] >= _value); balances[_to] = SafeMath.add(balances[_to], _value); balances[_from] = SafeMath.sub(balances[_from], _value); allowed[_from][msg.sender] = SafeMath.sub(allowed[_from][msg.sender], _value); Transfer(_from, _to, _value); return true; } function balanceOf(address _owner) public constant returns (uint256 balance) { return balances[_owner]; } function approve(address _spender, uint256 _value) public returns (bool success) { require(balances[msg.sender] >= _value); allowed[msg.sender][_spender] = _value; Approval(msg.sender, _spender, _value); return true; } function allowance(address _owner, address _spender) public constant returns (uint256 remaining) { return allowed[_owner][_spender]; } mapping (address => uint256) balances; mapping (address => mapping (address => uint256)) allowed; modifier validTransfer() { require(msg.sender == sale || transfersAllowed); _; } } contract HumanStandardToken is StandardToken { /* Public variables of the token */ /* NOTE: The following variables are OPTIONAL vanities. One does not have to include them. They allow one to customise the token contract & in no way influences the core functionality. Some wallets/interfaces might not even bother to look at this information. */ string public name; //fancy name: eg Simon Bucks uint8 public decimals; //How many decimals to show. ie. There could 1000 base units with 3 decimals. Meaning 0.980 SBX = 980 base units. It's like comparing 1 wei to 1 ether. string public symbol; //An identifier: eg SBX string public version = 'H0.1'; //human 0.1 standard. Just an arbitrary versioning scheme. function HumanStandardToken( uint256 _initialAmount, string _tokenName, uint8 _decimalUnits, string _tokenSymbol, address _sale) public { balances[msg.sender] = _initialAmount; // Give the creator all initial tokens totalSupply = _initialAmount; // Update total supply name = _tokenName; // Set the name for display purposes decimals = _decimalUnits; // Amount of decimals for display purposes symbol = _tokenSymbol; // Set the symbol for display purposes sale = _sale; transfersAllowed = false; } /* Approves and then calls the receiving contract */ function approveAndCall(address _spender, uint256 _value, bytes _extraData) public returns (bool success) { allowed[msg.sender][_spender] = _value; Approval(msg.sender, _spender, _value); //call the receiveApproval function on the contract you want to be notified. This crafts the function signature manually so one doesn't have to include a contract in here just for this. //receiveApproval(address _from, uint256 _value, address _tokenContract, bytes _extraData) //it is assumed that when does this that the call *should* succeed, otherwise one would use vanilla approve instead. require(_spender.call(bytes4(bytes32(keccak256("receiveApproval(address,uint256,address,bytes)"))), msg.sender, _value, this, _extraData)); return true; } function reversePurchase(address _tokenHolder) public onlySale { require(!transfersAllowed); uint value = balances[_tokenHolder]; balances[_tokenHolder] = SafeMath.sub(balances[_tokenHolder], value); balances[sale] = SafeMath.add(balances[sale], value); Transfer(_tokenHolder, sale, value); } function removeTransferLock() public onlySale { transfersAllowed = true; } modifier onlySale() { require(msg.sender == sale); _; } } contract Disbursement { /* * Storage */ address public owner; address public receiver; uint public disbursementPeriod; uint public startDate; uint public withdrawnTokens; Token public token; /* * Modifiers */ modifier isOwner() { if (msg.sender != owner) // Only owner is allowed to proceed revert(); _; } modifier isReceiver() { if (msg.sender != receiver) // Only receiver is allowed to proceed revert(); _; } modifier isSetUp() { if (address(token) == 0) // Contract is not set up revert(); _; } /* * Public functions */ /// @dev Constructor function sets contract owner /// @param _receiver Receiver of vested tokens /// @param _disbursementPeriod Vesting period in seconds /// @param _startDate Start date of disbursement period (cliff) function Disbursement(address _receiver, uint _disbursementPeriod, uint _startDate) public { if (_receiver == 0 || _disbursementPeriod == 0) // Arguments are null revert(); owner = msg.sender; receiver = _receiver; disbursementPeriod = _disbursementPeriod; startDate = _startDate; if (startDate == 0) startDate = now; } /// @dev Setup function sets external contracts' addresses /// @param _token Token address function setup(Token _token) public isOwner { if (address(token) != 0 || address(_token) == 0) // Setup was executed already or address is null revert(); token = _token; } /// @dev Transfers tokens to a given address /// @param _to Address of token receiver /// @param _value Number of tokens to transfer function withdraw(address _to, uint256 _value) public isReceiver isSetUp { uint maxTokens = calcMaxWithdraw(); if (_value > maxTokens) revert(); withdrawnTokens = SafeMath.add(withdrawnTokens, _value); token.transfer(_to, _value); } /// @dev Calculates the maximum amount of vested tokens /// @return Number of vested tokens to withdraw function calcMaxWithdraw() public constant returns (uint) { uint maxTokens = SafeMath.mul(SafeMath.add(token.balanceOf(this), withdrawnTokens), SafeMath.sub(now,startDate)) / disbursementPeriod; //uint maxTokens = (token.balanceOf(this) + withdrawnTokens) * (now - startDate) / disbursementPeriod; if (withdrawnTokens >= maxTokens || startDate > now) return 0; if (SafeMath.sub(maxTokens, withdrawnTokens) > token.totalSupply()) return token.totalSupply(); return SafeMath.sub(maxTokens, withdrawnTokens); } } contract Sale { // EVENTS event TransferredTimelockedTokens(address beneficiary, address disbursement,uint beneficiaryTokens); event PurchasedTokens(address indexed purchaser, uint amount); event LockedUnsoldTokens(uint numTokensLocked, address disburser); // STORAGE uint public constant TOTAL_SUPPLY = 1000000000000000000; uint public constant MAX_PRIVATE = 750200000000000000; uint8 public constant DECIMALS = 9; string public constant NAME = "Leverj"; string public constant SYMBOL = "LEV"; address public owner; address public whitelistAdmin; address public wallet; HumanStandardToken public token; uint public freezeBlock; uint public startBlock; uint public endBlock; uint public price_in_wei = 333333; //wei per 10**-9 of a LEV! uint public privateAllocated = 0; bool public setupCompleteFlag = false; bool public emergencyFlag = false; address[] public disbursements; mapping(address => uint) public whitelistRegistrants; mapping(address => bool) public whitelistRegistrantsFlag; bool public publicSale = false; // PUBLIC FUNCTIONS function Sale( address _owner, uint _freezeBlock, uint _startBlock, uint _endBlock, address _whitelistAdmin) public checkBlockNumberInputs(_freezeBlock, _startBlock, _endBlock) { owner = _owner; whitelistAdmin = _whitelistAdmin; token = new HumanStandardToken(TOTAL_SUPPLY, NAME, DECIMALS, SYMBOL, address(this)); freezeBlock = _freezeBlock; startBlock = _startBlock; endBlock = _endBlock; assert(token.transfer(this, token.totalSupply())); assert(token.balanceOf(this) == token.totalSupply()); assert(token.balanceOf(this) == TOTAL_SUPPLY); } function purchaseTokens() public payable setupComplete notInEmergency saleInProgress { require(whitelistRegistrantsFlag[msg.sender] == true); /* Calculate whether any of the msg.value needs to be returned to the sender. The purchaseAmount is the actual number of tokens which will be purchased. */ uint purchaseAmount = msg.value / price_in_wei; uint excessAmount = msg.value % price_in_wei; if (!publicSale){ require(whitelistRegistrants[msg.sender] > 0 ); uint tempWhitelistAmount = whitelistRegistrants[msg.sender]; if (purchaseAmount > whitelistRegistrants[msg.sender]){ uint extra = SafeMath.sub(purchaseAmount,whitelistRegistrants[msg.sender]); purchaseAmount = whitelistRegistrants[msg.sender]; excessAmount = SafeMath.add(excessAmount,extra*price_in_wei); } whitelistRegistrants[msg.sender] = SafeMath.sub(whitelistRegistrants[msg.sender], purchaseAmount); assert(whitelistRegistrants[msg.sender] < tempWhitelistAmount); } // Cannot purchase more tokens than this contract has available to sell require(purchaseAmount <= token.balanceOf(this)); // Return any excess msg.value if (excessAmount > 0){ msg.sender.transfer(excessAmount); } // Forward received ether minus any excessAmount to the wallet wallet.transfer(this.balance); // Transfer the sum of tokens tokenPurchase to the msg.sender assert(token.transfer(msg.sender, purchaseAmount)); PurchasedTokens(msg.sender, purchaseAmount); } function lockUnsoldTokens(address _unsoldTokensWallet) public saleEnded setupComplete onlyOwner { Disbursement disbursement = new Disbursement( _unsoldTokensWallet, 1*365*24*60*60, block.timestamp ); disbursement.setup(token); uint amountToLock = token.balanceOf(this); disbursements.push(disbursement); token.transfer(disbursement, amountToLock); LockedUnsoldTokens(amountToLock, disbursement); } // OWNER-ONLY FUNCTIONS function distributeTimelockedTokens( address[] _beneficiaries, uint[] _beneficiariesTokens, uint[] _timelockStarts, uint[] _periods ) public onlyOwner saleNotEnded { assert(!setupCompleteFlag); assert(_beneficiariesTokens.length < 11); assert(_beneficiaries.length == _beneficiariesTokens.length); assert(_beneficiariesTokens.length == _timelockStarts.length); assert(_timelockStarts.length == _periods.length); for(uint i = 0; i < _beneficiaries.length; i++) { require(privateAllocated + _beneficiariesTokens[i] <= MAX_PRIVATE); privateAllocated = SafeMath.add(privateAllocated, _beneficiariesTokens[i]); address beneficiary = _beneficiaries[i]; uint beneficiaryTokens = _beneficiariesTokens[i]; Disbursement disbursement = new Disbursement( beneficiary, _periods[i], _timelockStarts[i] ); disbursement.setup(token); token.transfer(disbursement, beneficiaryTokens); disbursements.push(disbursement); TransferredTimelockedTokens(beneficiary, disbursement, beneficiaryTokens); } assert(token.balanceOf(this) >= (SafeMath.sub(TOTAL_SUPPLY, MAX_PRIVATE))); } function distributePresaleTokens(address[] _buyers, uint[] _amounts) public onlyOwner saleNotEnded { assert(!setupCompleteFlag); require(_buyers.length < 11); require(_buyers.length == _amounts.length); for(uint i=0; i < _buyers.length; i++){ require(SafeMath.add(privateAllocated, _amounts[i]) <= MAX_PRIVATE); assert(token.transfer(_buyers[i], _amounts[i])); privateAllocated = SafeMath.add(privateAllocated, _amounts[i]); PurchasedTokens(_buyers[i], _amounts[i]); } assert(token.balanceOf(this) >= (SafeMath.sub(TOTAL_SUPPLY, MAX_PRIVATE))); } function removeTransferLock() public onlyOwner { token.removeTransferLock(); } function reversePurchase(address _tokenHolder) payable public onlyOwner { uint refund = SafeMath.mul(token.balanceOf(_tokenHolder),price_in_wei); require(msg.value >= refund); uint excessAmount = SafeMath.sub(msg.value, refund); if (excessAmount > 0) { msg.sender.transfer(excessAmount); } _tokenHolder.transfer(refund); token.reversePurchase(_tokenHolder); } function setSetupComplete() public onlyOwner { require(wallet!=0); require(privateAllocated!=0); setupCompleteFlag = true; } function configureWallet(address _wallet) public onlyOwner { wallet = _wallet; } function changeOwner(address _newOwner) public onlyOwner { require(_newOwner != 0); owner = _newOwner; } function changeWhitelistAdmin(address _newAdmin) public onlyOwner { require(_newAdmin != 0); whitelistAdmin = _newAdmin; } function changePrice(uint _newPrice) public onlyOwner notFrozen validPrice(_newPrice) { price_in_wei = _newPrice; } function changeStartBlock(uint _newBlock) public onlyOwner notFrozen { require(block.number <= _newBlock && _newBlock < startBlock); freezeBlock = SafeMath.sub(_newBlock , SafeMath.sub(startBlock, freezeBlock)); startBlock = _newBlock; } function emergencyToggle() public onlyOwner { emergencyFlag = !emergencyFlag; } function addWhitelist(address[] _purchaser, uint[] _amount) public onlyWhitelistAdmin saleNotEnded { assert(_purchaser.length < 11 ); assert(_purchaser.length == _amount.length); for(uint i = 0; i < _purchaser.length; i++) { whitelistRegistrants[_purchaser[i]] = _amount[i]; whitelistRegistrantsFlag[_purchaser[i]] = true; } } function startPublicSale() public onlyOwner { if (!publicSale){ publicSale = true; } } // MODIFIERS modifier saleEnded { require(block.number >= endBlock); _; } modifier saleNotEnded { require(block.number < endBlock); _; } modifier onlyOwner { require(msg.sender == owner); _; } modifier onlyWhitelistAdmin { require(msg.sender == owner || msg.sender == whitelistAdmin); _; } modifier notFrozen { require(block.number < freezeBlock); _; } modifier saleInProgress { require(block.number >= startBlock && block.number < endBlock); _; } modifier setupComplete { assert(setupCompleteFlag); _; } modifier notInEmergency { assert(emergencyFlag == false); _; } modifier checkBlockNumberInputs(uint _freeze, uint _start, uint _end) { require(_freeze >= block.number && _start >= _freeze && _end >= _start); _; } modifier validPrice(uint _price){ require(_price > 0); _; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[],"name":"emergencyToggle","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_purchaser","type":"address[]"},{"name":"_amount","type":"uint256[]"}],"name":"addWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"endBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"startPublicSale","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"whitelistRegistrants","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"MAX_PRIVATE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"DECIMALS","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"purchaseTokens","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"publicSale","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"freezeBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_unsoldTokensWallet","type":"address"}],"name":"lockUnsoldTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"startBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"whitelistAdmin","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"disbursements","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_tokenHolder","type":"address"}],"name":"reversePurchase","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"wallet","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newBlock","type":"uint256"}],"name":"changeStartBlock","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_beneficiaries","type":"address[]"},{"name":"_beneficiariesTokens","type":"uint256[]"},{"name":"_timelockStarts","type":"uint256[]"},{"name":"_periods","type":"uint256[]"}],"name":"distributeTimelockedTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"setupCompleteFlag","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_buyers","type":"address[]"},{"name":"_amounts","type":"uint256[]"}],"name":"distributePresaleTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"privateAllocated","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"TOTAL_SUPPLY","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"whitelistRegistrantsFlag","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newPrice","type":"uint256"}],"name":"changePrice","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"NAME","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"changeOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"setSetupComplete","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"emergencyFlag","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"price_in_wei","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_wallet","type":"address"}],"name":"configureWallet","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newAdmin","type":"address"}],"name":"changeWhitelistAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"removeTransferLock","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"SYMBOL","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_owner","type":"address"},{"name":"_freezeBlock","type":"uint256"},{"name":"_startBlock","type":"uint256"},{"name":"_endBlock","type":"uint256"},{"name":"_whitelistAdmin","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"beneficiary","type":"address"},{"indexed":false,"name":"disbursement","type":"address"},{"indexed":false,"name":"beneficiaryTokens","type":"uint256"}],"name":"TransferredTimelockedTokens","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"purchaser","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"PurchasedTokens","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"numTokensLocked","type":"uint256"},{"indexed":false,"name":"disburser","type":"address"}],"name":"LockedUnsoldTokens","type":"event"}]
Contract Creation Code
60606040526205161560075560006008556000600960006101000a81548160ff0219169083151502179055506000600960016101000a81548160ff0219169083151502179055506000600d60006101000a81548160ff02191690831515021790555034156200006d57600080fd5b60405160a0806200595a83398101604052808051906020019091908051906020019091908051906020019091908051906020019091908051906020019091905050838383438310158015620000c25750828210155b8015620000cf5750818110155b1515620000db57600080fd5b876000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550670de0b6b3a76400006040805190810160405280600681526020017f4c657665726a000000000000000000000000000000000000000000000000000081525060096040805190810160405280600381526020017f4c4556000000000000000000000000000000000000000000000000000000000081525030620001de620007a9565b80868152602001806020018560ff1660ff168152602001806020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838103835287818151815260200191508051906020019080838360005b838110156200026557808201518184015260208101905062000248565b50505050905090810190601f168015620002935780820380516001836020036101000a031916815260200191505b50838103825285818151815260200191508051906020019080838360005b83811015620002ce578082015181840152602081019050620002b1565b50505050905090810190601f168015620002fc5780820380516001836020036101000a031916815260200191505b50975050505050505050604051809103906000f08015156200031d57600080fd5b600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550866004819055508560058190555084600681905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb30600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166318160ddd6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b15156200044057600080fd5b6102c65a03f115156200045257600080fd5b505050604051805190506000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515620004ea57600080fd5b6102c65a03f11515620004fc57600080fd5b5050506040518051905015156200050f57fe5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166318160ddd6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b15156200059e57600080fd5b6102c65a03f11515620005b057600080fd5b50505060405180519050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15156200068057600080fd5b6102c65a03f115156200069257600080fd5b50505060405180519050141515620006a657fe5b670de0b6b3a7640000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15156200077557600080fd5b6102c65a03f115156200078757600080fd5b505050604051805190501415156200079b57fe5b5050505050505050620007ba565b604051611912806200404883390190565b61387e80620007ca6000396000f30060606040523615620001d8576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168062a5359814620001dd578063050414bb14620001f5578063083c632314620002925780630c1c972a14620002be578063259b2ce014620002d657806327d9418214620003265780632e0f262514620003525780633290ce29146200038457806333bc1c5c14620003905780633a15786014620003c057806341c0aa0e14620003ec57806348cd4cb114620004285780634adbe55114620004545780634e29cba614620004ac5780635187527f1462000512578063521eb27314620005425780635437f098146200059a578063555c475814620005c05780638741ab4914620006dd5780638c1d92af146200070d5780638da5cb5b14620007aa5780638e2a37b21462000802578063902d55a5146200082e5780639cf66013146200085a578063a2b40d1914620008ae578063a3f4df7e14620008d4578063a6f9dae11462000968578063a951c99414620009a4578063b4007cda14620009bc578063c74a690c14620009ec578063cb1be21a1462000a18578063f17520e51462000a54578063f5308c7d1462000a90578063f76f8d781462000aa8578063fc0c546a1462000b3c575b600080fd5b3415620001e957600080fd5b620001f362000b94565b005b34156200020157600080fd5b620002906004808035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190505062000c1c565b005b34156200029e57600080fd5b620002a862000e06565b6040518082815260200191505060405180910390f35b3415620002ca57600080fd5b620002d462000e0c565b005b3415620002e257600080fd5b62000310600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505062000e9d565b6040518082815260200191505060405180910390f35b34156200033257600080fd5b6200033c62000eb5565b6040518082815260200191505060405180910390f35b34156200035e57600080fd5b6200036862000ec1565b604051808260ff1660ff16815260200191505060405180910390f35b6200038e62000ec6565b005b34156200039c57600080fd5b620003a662001511565b604051808215151515815260200191505060405180910390f35b3415620003cc57600080fd5b620003d662001524565b6040518082815260200191505060405180910390f35b3415620003f857600080fd5b62000426600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506200152a565b005b34156200043457600080fd5b6200043e62001998565b6040518082815260200191505060405180910390f35b34156200046057600080fd5b6200046a6200199e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3415620004b857600080fd5b620004d06004808035906020019091905050620019c4565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b62000540600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505062001a04565b005b34156200054e57600080fd5b6200055862001cd6565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3415620005a657600080fd5b620005be600480803590602001909190505062001cfc565b005b3415620005cc57600080fd5b620006db60048080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091908035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190505062001db2565b005b3415620006e957600080fd5b620006f362002398565b604051808215151515815260200191505060405180910390f35b34156200071957600080fd5b620007a860048080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091905050620023ab565b005b3415620007b657600080fd5b620007c06200278b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156200080e57600080fd5b62000818620027b0565b6040518082815260200191505060405180910390f35b34156200083a57600080fd5b62000844620027b6565b6040518082815260200191505060405180910390f35b34156200086657600080fd5b62000894600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050620027c2565b604051808215151515815260200191505060405180910390f35b3415620008ba57600080fd5b620008d26004808035906020019091905050620027e2565b005b3415620008e057600080fd5b620008ea6200286b565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156200092c5780820151818401526020810190506200090f565b50505050905090810190601f1680156200095a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156200097457600080fd5b620009a2600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050620028a4565b005b3415620009b057600080fd5b620009ba6200296a565b005b3415620009c857600080fd5b620009d262002a3f565b604051808215151515815260200191505060405180910390f35b3415620009f857600080fd5b62000a0262002a52565b6040518082815260200191505060405180910390f35b341562000a2457600080fd5b62000a52600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505062002a58565b005b341562000a6057600080fd5b62000a8e600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505062002af8565b005b341562000a9c57600080fd5b62000aa662002bbf565b005b341562000ab457600080fd5b62000abe62002cb8565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101562000b0057808201518184015260208101905062000ae3565b50505050905090810190601f16801562000b2e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341562000b4857600080fd5b62000b5262002cf1565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151562000bf057600080fd5b600960019054906101000a900460ff1615600960016101000a81548160ff021916908315150217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148062000cc75750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151562000cd357600080fd5b6006544310151562000ce457600080fd5b600b835110151562000cf257fe5b8151835114151562000d0057fe5b600090505b825181101562000e0157818181518110151562000d1e57fe5b90602001906020020151600b6000858481518110151562000d3b57fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600c6000858481518110151562000d9857fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808060010191505062000d05565b505050565b60065481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151562000e6857600080fd5b600d60009054906101000a900460ff16151562000e9b576001600d60006101000a81548160ff0219169083151502179055505b565b600b6020528060005260406000206000915090505481565b670a693eecde7f800081565b600981565b600080600080600960009054906101000a900460ff16151562000ee557fe5b60001515600960019054906101000a900460ff16151514151562000f0557fe5b600554431015801562000f19575060065443105b151562000f2557600080fd5b60011515600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514151562000f8557600080fd5b6007543481151562000f9357fe5b0493506007543481151562000fa457fe5b069250600d60009054906101000a900460ff16151562001213576000600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541115156200100d57600080fd5b600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549150600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548411156200113957620010e284600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205462002d17565b9050600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205493506200113683600754830262002d31565b92505b62001184600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548562002d17565b600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015156200121257fe5b5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1515620012d957600080fd5b6102c65a03f11515620012eb57600080fd5b5050506040518051905084111515156200130457600080fd5b600083111562001350573373ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f1935050505015156200134f57600080fd5b5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f193505050501515620013ca57600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33866000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15156200149857600080fd5b6102c65a03f11515620014aa57600080fd5b505050604051805190501515620014bd57fe5b3373ffffffffffffffffffffffffffffffffffffffff167ff9c447a9cff6748e98623cddf46579164dc4c2af6253de5278893e8659277364856040518082815260200191505060405180910390a250505050565b600d60009054906101000a900460ff1681565b60045481565b60008060065443101515156200153f57600080fd5b600960009054906101000a900460ff1615156200155857fe5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515620015b457600080fd5b826301e1338042620015c562002d86565b808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019350505050604051809103906000f08015156200162057600080fd5b91508173ffffffffffffffffffffffffffffffffffffffff166366d38203600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b1515620016df57600080fd5b6102c65a03f11515620016f157600080fd5b505050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1515620017ba57600080fd5b6102c65a03f11515620017cc57600080fd5b505050604051805190509050600a8054806001018281620017ee919062002d97565b9160005260206000209001600084909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15156200190b57600080fd5b6102c65a03f115156200191d57600080fd5b50505060405180519050507f178394bd3d3f3a67e10feb6c72c680672592e37c14e1f799ae54fe869cec1a808183604051808381526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1505050565b60055481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a81815481101515620019d457fe5b90600052602060002090016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151562001a6357600080fd5b62001b52600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231856000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b151562001b2d57600080fd5b6102c65a03f1151562001b3f57600080fd5b5050506040518051905060075462002d50565b915081341015151562001b6457600080fd5b62001b70348362002d17565b9050600081111562001bbe573373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050151562001bbd57600080fd5b5b8273ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050151562001bff57600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635187527f846040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b151562001cbc57600080fd5b6102c65a03f1151562001cce57600080fd5b505050505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151562001d5857600080fd5b6004544310151562001d6957600080fd5b80431115801562001d7b575060055481105b151562001d8757600080fd5b62001da28162001d9c60055460045462002d17565b62002d17565b6004819055508060058190555050565b6000806000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151562001e1457600080fd5b6006544310151562001e2557600080fd5b600960009054906101000a900460ff1615151562001e3f57fe5b600b875110151562001e4d57fe5b8651885114151562001e5b57fe5b8551875114151562001e6957fe5b8451865114151562001e7757fe5b600093505b87518410156200228557670a693eecde7f8000878581518110151562001e9e57fe5b90602001906020020151600854011115151562001eba57600080fd5b62001ee0600854888681518110151562001ed057fe5b9060200190602002015162002d31565b600881905550878481518110151562001ef557fe5b906020019060200201519250868481518110151562001f1057fe5b90602001906020020151915082858581518110151562001f2c57fe5b90602001906020020151878681518110151562001f4557fe5b9060200190602002015162001f5962002d86565b808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019350505050604051809103906000f080151562001fb457600080fd5b90508073ffffffffffffffffffffffffffffffffffffffff166366d38203600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b15156200207357600080fd5b6102c65a03f115156200208557600080fd5b505050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb82846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15156200215657600080fd5b6102c65a03f115156200216857600080fd5b5050506040518051905050600a805480600101828162002189919062002d97565b9160005260206000209001600083909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550507f659bd17426525d271e76e8b662badf9e68de74efbdb62927843499ecec17c924838284604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001935050505060405180910390a1838060010194505062001e7c565b620022a1670de0b6b3a7640000670a693eecde7f800062002d17565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15156200236757600080fd5b6102c65a03f115156200237957600080fd5b50505060405180519050101515156200238e57fe5b5050505050505050565b600960009054906101000a900460ff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156200240957600080fd5b600654431015156200241a57600080fd5b600960009054906101000a900460ff161515156200243457fe5b600b83511015156200244557600080fd5b815183511415156200245657600080fd5b600090505b82518110156200267d57670a693eecde7f80006200249460085484848151811015156200248457fe5b9060200190602002015162002d31565b11151515620024a257600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8483815181101515620024ef57fe5b9060200190602002015184848151811015156200250857fe5b906020019060200201516000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515620025a057600080fd5b6102c65a03f11515620025b257600080fd5b505050604051805190501515620025c557fe5b620025eb6008548383815181101515620025db57fe5b9060200190602002015162002d31565b60088190555082818151811015156200260057fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff167ff9c447a9cff6748e98623cddf46579164dc4c2af6253de5278893e865927736483838151811015156200265057fe5b906020019060200201516040518082815260200191505060405180910390a280806001019150506200245b565b62002699670de0b6b3a7640000670a693eecde7f800062002d17565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15156200275f57600080fd5b6102c65a03f115156200277157600080fd5b50505060405180519050101515156200278657fe5b505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60085481565b670de0b6b3a764000081565b600c6020528060005260406000206000915054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156200283e57600080fd5b600454431015156200284f57600080fd5b806000811115156200286057600080fd5b816007819055505050565b6040805190810160405280600681526020017f4c657665726a000000000000000000000000000000000000000000000000000081525081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156200290057600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff16141515156200292757600080fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515620029c657600080fd5b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415151562002a0f57600080fd5b60006008541415151562002a2257600080fd5b6001600960006101000a81548160ff021916908315150217905550565b600960019054906101000a900460ff1681565b60075481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151562002ab457600080fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151562002b5457600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff161415151562002b7b57600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151562002c1b57600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f5308c7d6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401600060405180830381600087803b151562002ca157600080fd5b6102c65a03f1151562002cb357600080fd5b505050565b6040805190810160405280600381526020017f4c4556000000000000000000000000000000000000000000000000000000000081525081565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600082821115151562002d2657fe5b818303905092915050565b600080828401905083811015151562002d4657fe5b8091505092915050565b6000808284029050600084148062002d73575082848281151562002d7057fe5b04145b151562002d7c57fe5b8091505092915050565b604051610a648062002def83390190565b81548183558181151162002dc15781836000526020600020918201910162002dc0919062002dc6565b5b505050565b62002deb91905b8082111562002de757600081600090555060010162002dcd565b5090565b9056006060604052341561000f57600080fd5b604051606080610a648339810160405280805190602001909190805190602001909190805190602001909190505060008373ffffffffffffffffffffffffffffffffffffffff1614806100625750600082145b1561006c57600080fd5b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600281905550806003819055506000600354141561010e57426003819055505b505050610944806101206000396000f30060606040523615610097576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630905aa5c1461009c5780630b97bc86146100c55780634bc9fdc2146100ee57806366d38203146101175780638da5cb5b14610150578063e47a6a9f146101a5578063f3fef3a3146101ce578063f7260d3e14610210578063fc0c546a14610265575b600080fd5b34156100a757600080fd5b6100af6102ba565b6040518082815260200191505060405180910390f35b34156100d057600080fd5b6100d86102c0565b6040518082815260200191505060405180910390f35b34156100f957600080fd5b6101016102c6565b6040518082815260200191505060405180910390f35b341561012257600080fd5b61014e600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610575565b005b341561015b57600080fd5b61016361067c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156101b057600080fd5b6101b86106a1565b6040518082815260200191505060405180910390f35b34156101d957600080fd5b61020e600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506106a7565b005b341561021b57600080fd5b610223610862565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561027057600080fd5b610278610888565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60045481565b60035481565b6000806002546103cb6103ba600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b151561039757600080fd5b6102c65a03f115156103a857600080fd5b505050604051805190506004546108ae565b6103c6426003546108cc565b6108e5565b8115156103d457fe5b049050806004541015806103e9575042600354115b156103f75760009150610571565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166318160ddd6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561048557600080fd5b6102c65a03f1151561049657600080fd5b505050604051805190506104ac826004546108cc565b111561056257600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166318160ddd6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561054057600080fd5b6102c65a03f1151561055157600080fd5b505050604051805190509150610571565b61056e816004546108cc565b91505b5090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156105d057600080fd5b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614158061062e575060008173ffffffffffffffffffffffffffffffffffffffff16145b1561063857600080fd5b80600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60025481565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561070557600080fd5b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561074b57600080fd5b6107536102c6565b90508082111561076257600080fd5b61076e600454836108ae565b600481905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb84846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b151561084157600080fd5b6102c65a03f1151561085257600080fd5b5050506040518051905050505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008082840190508381101515156108c257fe5b8091505092915050565b60008282111515156108da57fe5b818303905092915050565b60008082840290506000841480610906575082848281151561090357fe5b04145b151561090e57fe5b80915050929150505600a165627a7a7230582087ca61493b1d8fb49d495b4b6ebc5ac2d7560660d8d6a1c5a5d553d65a1ecb770029a165627a7a72305820efeaeca2e1dc251652a0560abe79bba2750906354f6e0bb8cc2551253ea6bc8a002960606040526040805190810160405280600481526020017f48302e31000000000000000000000000000000000000000000000000000000008152506007908051906020019062000051929190620001a2565b5034156200005e57600080fd5b60405162001912380380620019128339810160405280805190602001909190805182019190602001805190602001909190805182019190602001805190602001909190505084600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555084600081905550836004908051906020019062000106929190620001a2565b5082600560006101000a81548160ff021916908360ff16021790555081600690805190602001906200013a929190620001a2565b5080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160146101000a81548160ff021916908315150217905550505050505062000251565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001e557805160ff191683800117855562000216565b8280016001018555821562000216579182015b8281111562000215578251825591602001919060010190620001f8565b5b50905062000225919062000229565b5090565b6200024e91905b808211156200024a57600081600090555060010162000230565b5090565b90565b6116b180620002616000396000f300606060405236156100d9576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146100de578063095ea7b31461016c57806318160ddd146101c657806323b872dd146101ef578063313ce567146102685780635187527f1461029757806354fd4d50146102d05780636ad1fe021461035e57806370a08231146103b357806395d89b4114610400578063a9059cbb1461048e578063b0660c3d146104e8578063cae9ca5114610515578063dd62ed3e146105b2578063f5308c7d1461061e575b600080fd5b34156100e957600080fd5b6100f1610633565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610131578082015181840152602081019050610116565b50505050905090810190601f16801561015e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561017757600080fd5b6101ac600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506106d1565b604051808215151515815260200191505060405180910390f35b34156101d157600080fd5b6101d9610811565b6040518082815260200191505060405180910390f35b34156101fa57600080fd5b61024e600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610817565b604051808215151515815260200191505060405180910390f35b341561027357600080fd5b61027b610bf0565b604051808260ff1660ff16815260200191505060405180910390f35b34156102a257600080fd5b6102ce600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610c03565b005b34156102db57600080fd5b6102e3610ea6565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610323578082015181840152602081019050610308565b50505050905090810190601f1680156103505780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561036957600080fd5b610371610f44565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156103be57600080fd5b6103ea600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610f6a565b6040518082815260200191505060405180910390f35b341561040b57600080fd5b610413610fb3565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610453578082015181840152602081019050610438565b50505050905090810190601f1680156104805780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561049957600080fd5b6104ce600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611051565b604051808215151515815260200191505060405180910390f35b34156104f357600080fd5b6104fb61129b565b604051808215151515815260200191505060405180910390f35b341561052057600080fd5b610598600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919050506112ae565b604051808215151515815260200191505060405180910390f35b34156105bd57600080fd5b610608600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061154f565b6040518082815260200191505060405180910390f35b341561062957600080fd5b6106316115d6565b005b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106c95780601f1061069e576101008083540402835291602001916106c9565b820191906000526020600020905b8154815290600101906020018083116106ac57829003601f168201915b505050505081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561072157600080fd5b81600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806108815750600160149054906101000a900460ff165b151561088c57600080fd5b81600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410158015610957575081600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b151561096257600080fd5b6109ab600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361164e565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610a37600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361166c565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610b00600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361166c565b600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b600560009054906101000a900460ff1681565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610c6157600080fd5b600160149054906101000a900460ff16151515610c7d57600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050610d08600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548261166c565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610db660026000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548261164e565b60026000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b60078054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f3c5780601f10610f1157610100808354040283529160200191610f3c565b820191906000526020600020905b815481529060010190602001808311610f1f57829003601f168201915b505050505081565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110495780601f1061101e57610100808354040283529160200191611049565b820191906000526020600020905b81548152906001019060200180831161102c57829003601f168201915b505050505081565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806110bb5750600160149054906101000a900460ff165b15156110c657600080fd5b81600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561111457600080fd5b61115d600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361166c565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506111e9600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361164e565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b600160149054906101000a900460ff1681565b600082600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925856040518082815260200191505060405180910390a38373ffffffffffffffffffffffffffffffffffffffff1660405180807f72656365697665417070726f76616c28616464726573732c75696e743235362c81526020017f616464726573732c627974657329000000000000000000000000000000000000815250602e01905060405180910390207c01000000000000000000000000000000000000000000000000000000009004338530866040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828051906020019080838360005b838110156114ef5780820151818401526020810190506114d4565b50505050905090810190601f16801561151c5780820380516001836020036101000a031916815260200191505b5094505050505060006040518083038160008761646e5a03f192505050151561154457600080fd5b600190509392505050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561163257600080fd5b60018060146101000a81548160ff021916908315150217905550565b600080828401905083811015151561166257fe5b8091505092915050565b600082821115151561167a57fe5b8183039050929150505600a165627a7a72305820b4e343361918ea689e11082ecf20fa7e551720986c374549449fa73c0f16e2880029000000000000000000000000434dc9ef22b28cb1e9669d0a7abddabe8682e3c000000000000000000000000000000000000000000000000000000000004494d6000000000000000000000000000000000000000000000000000000000044953a00000000000000000000000000000000000000000000000000000000004788ad000000000000000000000000f327f9883c6771e40c8f9b24817564d2c7fed8b8
Deployed Bytecode
0x60606040523615620001d8576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168062a5359814620001dd578063050414bb14620001f5578063083c632314620002925780630c1c972a14620002be578063259b2ce014620002d657806327d9418214620003265780632e0f262514620003525780633290ce29146200038457806333bc1c5c14620003905780633a15786014620003c057806341c0aa0e14620003ec57806348cd4cb114620004285780634adbe55114620004545780634e29cba614620004ac5780635187527f1462000512578063521eb27314620005425780635437f098146200059a578063555c475814620005c05780638741ab4914620006dd5780638c1d92af146200070d5780638da5cb5b14620007aa5780638e2a37b21462000802578063902d55a5146200082e5780639cf66013146200085a578063a2b40d1914620008ae578063a3f4df7e14620008d4578063a6f9dae11462000968578063a951c99414620009a4578063b4007cda14620009bc578063c74a690c14620009ec578063cb1be21a1462000a18578063f17520e51462000a54578063f5308c7d1462000a90578063f76f8d781462000aa8578063fc0c546a1462000b3c575b600080fd5b3415620001e957600080fd5b620001f362000b94565b005b34156200020157600080fd5b620002906004808035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190505062000c1c565b005b34156200029e57600080fd5b620002a862000e06565b6040518082815260200191505060405180910390f35b3415620002ca57600080fd5b620002d462000e0c565b005b3415620002e257600080fd5b62000310600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505062000e9d565b6040518082815260200191505060405180910390f35b34156200033257600080fd5b6200033c62000eb5565b6040518082815260200191505060405180910390f35b34156200035e57600080fd5b6200036862000ec1565b604051808260ff1660ff16815260200191505060405180910390f35b6200038e62000ec6565b005b34156200039c57600080fd5b620003a662001511565b604051808215151515815260200191505060405180910390f35b3415620003cc57600080fd5b620003d662001524565b6040518082815260200191505060405180910390f35b3415620003f857600080fd5b62000426600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506200152a565b005b34156200043457600080fd5b6200043e62001998565b6040518082815260200191505060405180910390f35b34156200046057600080fd5b6200046a6200199e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3415620004b857600080fd5b620004d06004808035906020019091905050620019c4565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b62000540600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505062001a04565b005b34156200054e57600080fd5b6200055862001cd6565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3415620005a657600080fd5b620005be600480803590602001909190505062001cfc565b005b3415620005cc57600080fd5b620006db60048080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091908035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190505062001db2565b005b3415620006e957600080fd5b620006f362002398565b604051808215151515815260200191505060405180910390f35b34156200071957600080fd5b620007a860048080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091905050620023ab565b005b3415620007b657600080fd5b620007c06200278b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156200080e57600080fd5b62000818620027b0565b6040518082815260200191505060405180910390f35b34156200083a57600080fd5b62000844620027b6565b6040518082815260200191505060405180910390f35b34156200086657600080fd5b62000894600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050620027c2565b604051808215151515815260200191505060405180910390f35b3415620008ba57600080fd5b620008d26004808035906020019091905050620027e2565b005b3415620008e057600080fd5b620008ea6200286b565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156200092c5780820151818401526020810190506200090f565b50505050905090810190601f1680156200095a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156200097457600080fd5b620009a2600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050620028a4565b005b3415620009b057600080fd5b620009ba6200296a565b005b3415620009c857600080fd5b620009d262002a3f565b604051808215151515815260200191505060405180910390f35b3415620009f857600080fd5b62000a0262002a52565b6040518082815260200191505060405180910390f35b341562000a2457600080fd5b62000a52600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505062002a58565b005b341562000a6057600080fd5b62000a8e600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505062002af8565b005b341562000a9c57600080fd5b62000aa662002bbf565b005b341562000ab457600080fd5b62000abe62002cb8565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101562000b0057808201518184015260208101905062000ae3565b50505050905090810190601f16801562000b2e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341562000b4857600080fd5b62000b5262002cf1565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151562000bf057600080fd5b600960019054906101000a900460ff1615600960016101000a81548160ff021916908315150217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148062000cc75750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151562000cd357600080fd5b6006544310151562000ce457600080fd5b600b835110151562000cf257fe5b8151835114151562000d0057fe5b600090505b825181101562000e0157818181518110151562000d1e57fe5b90602001906020020151600b6000858481518110151562000d3b57fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600c6000858481518110151562000d9857fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808060010191505062000d05565b505050565b60065481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151562000e6857600080fd5b600d60009054906101000a900460ff16151562000e9b576001600d60006101000a81548160ff0219169083151502179055505b565b600b6020528060005260406000206000915090505481565b670a693eecde7f800081565b600981565b600080600080600960009054906101000a900460ff16151562000ee557fe5b60001515600960019054906101000a900460ff16151514151562000f0557fe5b600554431015801562000f19575060065443105b151562000f2557600080fd5b60011515600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514151562000f8557600080fd5b6007543481151562000f9357fe5b0493506007543481151562000fa457fe5b069250600d60009054906101000a900460ff16151562001213576000600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541115156200100d57600080fd5b600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549150600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548411156200113957620010e284600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205462002d17565b9050600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205493506200113683600754830262002d31565b92505b62001184600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548562002d17565b600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015156200121257fe5b5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1515620012d957600080fd5b6102c65a03f11515620012eb57600080fd5b5050506040518051905084111515156200130457600080fd5b600083111562001350573373ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f1935050505015156200134f57600080fd5b5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f193505050501515620013ca57600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33866000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15156200149857600080fd5b6102c65a03f11515620014aa57600080fd5b505050604051805190501515620014bd57fe5b3373ffffffffffffffffffffffffffffffffffffffff167ff9c447a9cff6748e98623cddf46579164dc4c2af6253de5278893e8659277364856040518082815260200191505060405180910390a250505050565b600d60009054906101000a900460ff1681565b60045481565b60008060065443101515156200153f57600080fd5b600960009054906101000a900460ff1615156200155857fe5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515620015b457600080fd5b826301e1338042620015c562002d86565b808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019350505050604051809103906000f08015156200162057600080fd5b91508173ffffffffffffffffffffffffffffffffffffffff166366d38203600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b1515620016df57600080fd5b6102c65a03f11515620016f157600080fd5b505050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1515620017ba57600080fd5b6102c65a03f11515620017cc57600080fd5b505050604051805190509050600a8054806001018281620017ee919062002d97565b9160005260206000209001600084909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15156200190b57600080fd5b6102c65a03f115156200191d57600080fd5b50505060405180519050507f178394bd3d3f3a67e10feb6c72c680672592e37c14e1f799ae54fe869cec1a808183604051808381526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1505050565b60055481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a81815481101515620019d457fe5b90600052602060002090016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151562001a6357600080fd5b62001b52600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231856000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b151562001b2d57600080fd5b6102c65a03f1151562001b3f57600080fd5b5050506040518051905060075462002d50565b915081341015151562001b6457600080fd5b62001b70348362002d17565b9050600081111562001bbe573373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050151562001bbd57600080fd5b5b8273ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050151562001bff57600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635187527f846040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b151562001cbc57600080fd5b6102c65a03f1151562001cce57600080fd5b505050505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151562001d5857600080fd5b6004544310151562001d6957600080fd5b80431115801562001d7b575060055481105b151562001d8757600080fd5b62001da28162001d9c60055460045462002d17565b62002d17565b6004819055508060058190555050565b6000806000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151562001e1457600080fd5b6006544310151562001e2557600080fd5b600960009054906101000a900460ff1615151562001e3f57fe5b600b875110151562001e4d57fe5b8651885114151562001e5b57fe5b8551875114151562001e6957fe5b8451865114151562001e7757fe5b600093505b87518410156200228557670a693eecde7f8000878581518110151562001e9e57fe5b90602001906020020151600854011115151562001eba57600080fd5b62001ee0600854888681518110151562001ed057fe5b9060200190602002015162002d31565b600881905550878481518110151562001ef557fe5b906020019060200201519250868481518110151562001f1057fe5b90602001906020020151915082858581518110151562001f2c57fe5b90602001906020020151878681518110151562001f4557fe5b9060200190602002015162001f5962002d86565b808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019350505050604051809103906000f080151562001fb457600080fd5b90508073ffffffffffffffffffffffffffffffffffffffff166366d38203600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b15156200207357600080fd5b6102c65a03f115156200208557600080fd5b505050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb82846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15156200215657600080fd5b6102c65a03f115156200216857600080fd5b5050506040518051905050600a805480600101828162002189919062002d97565b9160005260206000209001600083909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550507f659bd17426525d271e76e8b662badf9e68de74efbdb62927843499ecec17c924838284604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001935050505060405180910390a1838060010194505062001e7c565b620022a1670de0b6b3a7640000670a693eecde7f800062002d17565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15156200236757600080fd5b6102c65a03f115156200237957600080fd5b50505060405180519050101515156200238e57fe5b5050505050505050565b600960009054906101000a900460ff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156200240957600080fd5b600654431015156200241a57600080fd5b600960009054906101000a900460ff161515156200243457fe5b600b83511015156200244557600080fd5b815183511415156200245657600080fd5b600090505b82518110156200267d57670a693eecde7f80006200249460085484848151811015156200248457fe5b9060200190602002015162002d31565b11151515620024a257600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8483815181101515620024ef57fe5b9060200190602002015184848151811015156200250857fe5b906020019060200201516000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515620025a057600080fd5b6102c65a03f11515620025b257600080fd5b505050604051805190501515620025c557fe5b620025eb6008548383815181101515620025db57fe5b9060200190602002015162002d31565b60088190555082818151811015156200260057fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff167ff9c447a9cff6748e98623cddf46579164dc4c2af6253de5278893e865927736483838151811015156200265057fe5b906020019060200201516040518082815260200191505060405180910390a280806001019150506200245b565b62002699670de0b6b3a7640000670a693eecde7f800062002d17565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15156200275f57600080fd5b6102c65a03f115156200277157600080fd5b50505060405180519050101515156200278657fe5b505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60085481565b670de0b6b3a764000081565b600c6020528060005260406000206000915054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156200283e57600080fd5b600454431015156200284f57600080fd5b806000811115156200286057600080fd5b816007819055505050565b6040805190810160405280600681526020017f4c657665726a000000000000000000000000000000000000000000000000000081525081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156200290057600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff16141515156200292757600080fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515620029c657600080fd5b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415151562002a0f57600080fd5b60006008541415151562002a2257600080fd5b6001600960006101000a81548160ff021916908315150217905550565b600960019054906101000a900460ff1681565b60075481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151562002ab457600080fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151562002b5457600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff161415151562002b7b57600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151562002c1b57600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f5308c7d6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401600060405180830381600087803b151562002ca157600080fd5b6102c65a03f1151562002cb357600080fd5b505050565b6040805190810160405280600381526020017f4c4556000000000000000000000000000000000000000000000000000000000081525081565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600082821115151562002d2657fe5b818303905092915050565b600080828401905083811015151562002d4657fe5b8091505092915050565b6000808284029050600084148062002d73575082848281151562002d7057fe5b04145b151562002d7c57fe5b8091505092915050565b604051610a648062002def83390190565b81548183558181151162002dc15781836000526020600020918201910162002dc0919062002dc6565b5b505050565b62002deb91905b8082111562002de757600081600090555060010162002dcd565b5090565b9056006060604052341561000f57600080fd5b604051606080610a648339810160405280805190602001909190805190602001909190805190602001909190505060008373ffffffffffffffffffffffffffffffffffffffff1614806100625750600082145b1561006c57600080fd5b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600281905550806003819055506000600354141561010e57426003819055505b505050610944806101206000396000f30060606040523615610097576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630905aa5c1461009c5780630b97bc86146100c55780634bc9fdc2146100ee57806366d38203146101175780638da5cb5b14610150578063e47a6a9f146101a5578063f3fef3a3146101ce578063f7260d3e14610210578063fc0c546a14610265575b600080fd5b34156100a757600080fd5b6100af6102ba565b6040518082815260200191505060405180910390f35b34156100d057600080fd5b6100d86102c0565b6040518082815260200191505060405180910390f35b34156100f957600080fd5b6101016102c6565b6040518082815260200191505060405180910390f35b341561012257600080fd5b61014e600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610575565b005b341561015b57600080fd5b61016361067c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156101b057600080fd5b6101b86106a1565b6040518082815260200191505060405180910390f35b34156101d957600080fd5b61020e600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506106a7565b005b341561021b57600080fd5b610223610862565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561027057600080fd5b610278610888565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60045481565b60035481565b6000806002546103cb6103ba600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b151561039757600080fd5b6102c65a03f115156103a857600080fd5b505050604051805190506004546108ae565b6103c6426003546108cc565b6108e5565b8115156103d457fe5b049050806004541015806103e9575042600354115b156103f75760009150610571565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166318160ddd6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561048557600080fd5b6102c65a03f1151561049657600080fd5b505050604051805190506104ac826004546108cc565b111561056257600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166318160ddd6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561054057600080fd5b6102c65a03f1151561055157600080fd5b505050604051805190509150610571565b61056e816004546108cc565b91505b5090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156105d057600080fd5b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614158061062e575060008173ffffffffffffffffffffffffffffffffffffffff16145b1561063857600080fd5b80600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60025481565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561070557600080fd5b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561074b57600080fd5b6107536102c6565b90508082111561076257600080fd5b61076e600454836108ae565b600481905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb84846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b151561084157600080fd5b6102c65a03f1151561085257600080fd5b5050506040518051905050505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008082840190508381101515156108c257fe5b8091505092915050565b60008282111515156108da57fe5b818303905092915050565b60008082840290506000841480610906575082848281151561090357fe5b04145b151561090e57fe5b80915050929150505600a165627a7a7230582087ca61493b1d8fb49d495b4b6ebc5ac2d7560660d8d6a1c5a5d553d65a1ecb770029a165627a7a72305820efeaeca2e1dc251652a0560abe79bba2750906354f6e0bb8cc2551253ea6bc8a0029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000434dc9ef22b28cb1e9669d0a7abddabe8682e3c000000000000000000000000000000000000000000000000000000000004494d6000000000000000000000000000000000000000000000000000000000044953a00000000000000000000000000000000000000000000000000000000004788ad000000000000000000000000f327f9883c6771e40c8f9b24817564d2c7fed8b8
-----Decoded View---------------
Arg [0] : _owner (address): 0x434dC9EF22B28CB1E9669D0A7ABdDABe8682e3c0
Arg [1] : _freezeBlock (uint256): 4494550
Arg [2] : _startBlock (uint256): 4494650
Arg [3] : _endBlock (uint256): 4688045
Arg [4] : _whitelistAdmin (address): 0xF327f9883C6771E40c8F9B24817564D2c7feD8B8
-----Encoded View---------------
5 Constructor Arguments found :
Arg [0] : 000000000000000000000000434dc9ef22b28cb1e9669d0a7abddabe8682e3c0
Arg [1] : 00000000000000000000000000000000000000000000000000000000004494d6
Arg [2] : 000000000000000000000000000000000000000000000000000000000044953a
Arg [3] : 00000000000000000000000000000000000000000000000000000000004788ad
Arg [4] : 000000000000000000000000f327f9883c6771e40c8f9b24817564d2c7fed8b8
Swarm Source
bzzr://b4e343361918ea689e11082ecf20fa7e551720986c374549449fa73c0f16e288
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
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.