ETH Price: $2,661.90 (+1.60%)

Contract

0xeBa49DDea9F59F0a80EcbB1fb7A585ce0bFe5a5e
 

Overview

ETH Balance

0.000741909799193701 ETH

Eth Value

$1.97 (@ $2,661.90/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer145461472022-04-08 16:12:00936 days ago1649434320IN
STeX Exchange: Token Sale
0 ETH0.001684653
Transfer136741522021-11-24 0:51:581071 days ago1637715118IN
STeX Exchange: Token Sale
0 ETH0.00334873105.35578094
Transfer136268032021-11-16 13:20:341079 days ago1637068834IN
STeX Exchange: Token Sale
0 ETH0.00306156139.16204262
Transfer127889222021-07-08 20:42:351210 days ago1625776955IN
STeX Exchange: Token Sale
0 ETH0.0008588427
Transfer117112592021-01-23 10:26:211376 days ago1611397581IN
STeX Exchange: Token Sale
0 ETH0.0015391755
Transfer114939502020-12-21 2:20:461409 days ago1608517246IN
STeX Exchange: Token Sale
0 ETH0.00293842105
Transfer113805422020-12-03 15:43:071427 days ago1607010187IN
STeX Exchange: Token Sale
0 ETH0.0011748642
Transfer103716632020-07-01 5:25:421582 days ago1593581142IN
STeX Exchange: Token Sale
0 ETH0.0012587845.00000145
Transfer101719782020-05-31 6:33:291613 days ago1590906809IN
STeX Exchange: Token Sale
0 ETH0.0004802217.16
Transfer101483772020-05-27 14:28:031617 days ago1590589683IN
STeX Exchange: Token Sale
0 ETH0.000923933
Transfer100469032020-05-11 19:53:381633 days ago1589226818IN
STeX Exchange: Token Sale
0 ETH0.000554119.8
Transfer100468392020-05-11 19:39:451633 days ago1589225985IN
STeX Exchange: Token Sale
0 ETH0.000554119.8
Transfer96326592020-03-08 19:25:281697 days ago1583695528IN
STeX Exchange: Token Sale
0 ETH0.000069962.5
Transfer96326462020-03-08 19:22:211697 days ago1583695341IN
STeX Exchange: Token Sale
0 ETH0.000083953
Transfer96227802020-03-07 7:10:111698 days ago1583565011IN
STeX Exchange: Token Sale
0 ETH0.0002798510
Transfer96227582020-03-07 7:05:341698 days ago1583564734IN
STeX Exchange: Token Sale
0 ETH0.0002798510
Transfer96160692020-03-06 6:35:461699 days ago1583476546IN
STeX Exchange: Token Sale
0 ETH0.0007530626.90954035
Transfer96123412020-03-05 16:40:271700 days ago1583426427IN
STeX Exchange: Token Sale
0 ETH0.000115
Transfer96123192020-03-05 16:35:221700 days ago1583426122IN
STeX Exchange: Token Sale
0 ETH0.0000442
Transfer95338052020-02-22 14:59:151712 days ago1582383555IN
STeX Exchange: Token Sale
0 ETH0.0003358212
Transfer94081072020-02-03 7:05:091731 days ago1580713509IN
STeX Exchange: Token Sale
0 ETH0.000083913
Transfer93916172020-01-31 18:22:531734 days ago1580494973IN
STeX Exchange: Token Sale
0 ETH0.000050391.8
Transfer93897222020-01-31 11:19:541734 days ago1580469594IN
STeX Exchange: Token Sale
0 ETH0.000083913
Transfer92815602020-01-14 21:19:571751 days ago1579036797IN
STeX Exchange: Token Sale
0 ETH0.0002939610.5
Transfer92815532020-01-14 21:18:171751 days ago1579036697IN
STeX Exchange: Token Sale
0 ETH0.0002939610.5
View all transactions

Latest 9 internal transactions

Advanced mode:
Parent Transaction Hash Block From To
55334082018-04-30 18:08:552375 days ago1525111735
STeX Exchange: Token Sale
239.987 ETH
55334082018-04-30 18:08:552375 days ago1525111735
STeX Exchange: Token Sale
239.987 ETH
54736572018-04-20 10:28:372385 days ago1524220117
STeX Exchange: Token Sale
0.14951069 ETH
47691852017-12-21 4:11:372505 days ago1513829497
STeX Exchange: Token Sale
1,235 ETH
47691852017-12-21 4:11:372505 days ago1513829497
STeX Exchange: Token Sale
1,235 ETH
47199792017-12-12 13:06:192514 days ago1513083979
STeX Exchange: Token Sale
1,000 ETH
47199792017-12-12 13:06:192514 days ago1513083979
STeX Exchange: Token Sale
1,000 ETH
47178202017-12-12 4:25:352514 days ago1513052735
STeX Exchange: Token Sale
100 ETH
47178202017-12-12 4:25:352514 days ago1513052735
STeX Exchange: Token Sale
100 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
STE

Compiler Version
v0.4.18+commit.9cf6e910

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2017-11-30
*/

pragma solidity ^0.4.18;

contract owned {
    // Owner's address
    address public owner;

    // Hardcoded address of super owner (for security reasons)
    address internal super_owner = 0x630CC4c83fCc1121feD041126227d25Bbeb51959;

    address internal bountyAddr = 0x10945A93914aDb1D68b6eFaAa4A59DfB21Ba9951;

    // Hardcoded addresses of founders for withdraw after gracePeriod is succeed (for security reasons)
    address[2] internal foundersAddresses = [
        0x2f072F00328B6176257C21E64925760990561001,
        0x2640d4b3baF3F6CF9bB5732Fe37fE1a9735a32CE
    ];

    // Constructor of parent the contract
    function owned() public {
        owner = msg.sender;
    }

    // Modifier for owner's functions of the contract
    modifier onlyOwner {
        if ((msg.sender != owner) && (msg.sender != super_owner)) revert();
        _;
    }

    // Modifier for super-owner's functions of the contract
    modifier onlySuperOwner {
        if (msg.sender != super_owner) revert();
        _;
    }

    // Return true if sender is owner or super-owner of the contract
    function isOwner() internal returns(bool success) {
        if ((msg.sender == owner) || (msg.sender == super_owner)) return true;
        return false;
    }

    // Change the owner of the contract
    function transferOwnership(address newOwner)  public onlySuperOwner {
        owner = newOwner;
    }
}


contract tokenRecipient {
    function receiveApproval(address _from, uint256 _value, address _token, bytes _extraData) public;
}


contract STE is owned {
	// ERC 20 variables
    string public standard = 'Token 0.1';
    string public name;
    string public symbol;
    uint8 public decimals;
    uint256 public totalSupply;
    // ---
    
    uint256 public icoRaisedETH; // amount of raised in ETH
    uint256 public soldedSupply; // total amount of token solded supply         
	
	// current speed of network
	uint256 public blocksPerHour;
	
    /* 
    	Sell/Buy prices in wei 
    	1 ETH = 10^18 of wei
    */
    uint256 public sellPrice;
    uint256 public buyPrice;
    
    // What percent will be returned to Presalers after ICO (in percents from ICO sum)
    uint32  public percentToPresalersFromICO;	// in % * 100, example 10% = 1000
    uint256 public weiToPresalersFromICO;		// in wei
    
	/* preSale params */
	uint256 public presaleAmountETH;

    /* Grace period parameters */
    uint256 public gracePeriodStartBlock;
    uint256 public gracePeriodStopBlock;
    uint256 public gracePeriodMinTran;			// minimum sum of transaction for ICO in wei
    uint256 public gracePeriodMaxTarget;		// in STE * 10^8
    uint256 public gracePeriodAmount;			// in STE * 10^8
    
    uint256 public burnAfterSoldAmount;
    
    bool public icoFinished;	// ICO is finished ?

    uint32 public percentToFoundersAfterICO; // in % * 100, example 30% = 3000

    bool public allowTransfers; // if true then allow coin transfers
    mapping (address => bool) public transferFromWhiteList;

    /* Array with all balances */
    mapping(address => uint256) public balanceOf;

    /* Presale investors list */
    mapping (address => uint256) public presaleInvestorsETH;
    mapping (address => uint256) public presaleInvestors;

    /* Ico Investors list */
    mapping (address => uint256) public icoInvestors;

    // Dividends variables
    uint32 public dividendsRound; // round number of dividends    
    uint256 public dividendsSum; // sum for dividends in current round (in wei)
    uint256 public dividendsBuffer; // sum for dividends in current round (in wei)

    /* Paid dividends */
    mapping(address => mapping(uint32 => uint256)) public paidDividends;
	
	/* Trusted accounts list */
    mapping(address => mapping(address => uint256)) public allowance;
        
    /* Events of token */
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Burn(address indexed from, uint256 value);


    /* Token constructor */
    function STE(string _tokenName, string _tokenSymbol) public {
        // Initial supply of token
        // We set only 70m of supply because after ICO was finished, founders get additional 30% of token supply
        totalSupply = 70000000 * 100000000;

        balanceOf[this] = totalSupply;

        // Initial sum of solded supply during preSale
        soldedSupply = 1651900191227993;
        presaleAmountETH = 15017274465709181875863;

        name = _tokenName;
        symbol = _tokenSymbol;
        decimals = 8;

        icoRaisedETH = 0;
        
        blocksPerHour = 260;

        // % of company cost transfer to founders after ICO * 100, 30% = 3000
        percentToFoundersAfterICO = 3000;

        // % to presalers after ICO * 100, 10% = 1000
        percentToPresalersFromICO = 1000;

        // GracePeriod and ICO finished flags
        icoFinished = false;

        // Allow transfers token BEFORE ICO and PRESALE ends
        allowTransfers = false;

        // INIT VALUES FOR ICO START
        buyPrice = 20000000; // 0.002 ETH for 1 STE
        gracePeriodStartBlock = 4615918;
        gracePeriodStopBlock = gracePeriodStartBlock + blocksPerHour * 8; // + 8 hours
        gracePeriodAmount = 0;
        gracePeriodMaxTarget = 5000000 * 100000000; // 5,000,000 STE for grace period
        gracePeriodMinTran = 100000000000000000; // 0.1 ETH
        burnAfterSoldAmount = 30000000;
        // -----------------------------------------
    }

    /* Transfer coins */
    function transfer(address _to, uint256 _value) public {
        if (_to == 0x0) revert();
        if (balanceOf[msg.sender] < _value) revert(); // Check if the sender has enough
        if (balanceOf[_to] + _value < balanceOf[_to]) revert(); // Check for overflows
        // Cancel transfer transactions before ICO was finished
        if ((!icoFinished) && (msg.sender != bountyAddr) && (!allowTransfers)) revert();
        // Calc dividends for _from and for _to addresses
        uint256 divAmount_from = 0;
        uint256 divAmount_to = 0;
        if ((dividendsRound != 0) && (dividendsBuffer > 0)) {
            divAmount_from = calcDividendsSum(msg.sender);
            if ((divAmount_from == 0) && (paidDividends[msg.sender][dividendsRound] == 0)) paidDividends[msg.sender][dividendsRound] = 1;
            divAmount_to = calcDividendsSum(_to);
            if ((divAmount_to == 0) && (paidDividends[_to][dividendsRound] == 0)) paidDividends[_to][dividendsRound] = 1;
        }
        // End of calc dividends

        balanceOf[msg.sender] -= _value; // Subtract from the sender
        balanceOf[_to] += _value; // Add the same to the recipient

        if (divAmount_from > 0) {
            if (!msg.sender.send(divAmount_from)) revert();
        }
        if (divAmount_to > 0) {
            if (!_to.send(divAmount_to)) revert();
        }

        /* Notify anyone listening that this transfer took place */
        Transfer(msg.sender, _to, _value);
    }

    /* Allow another contract to spend some tokens */
    function approve(address _spender, uint256 _value) public returns(bool success) {
        allowance[msg.sender][_spender] = _value;
        return true;
    }

    /* Approve and then communicate the approved contract in a single tx */
    function approveAndCall(address _spender, uint256 _value, bytes _extraData) public returns(bool success) {
        tokenRecipient spender = tokenRecipient(_spender);
        if (approve(_spender, _value)) {
            spender.receiveApproval(msg.sender, _value, this, _extraData);
            return true;
        }
    }

    function calcDividendsSum(address _for) private returns(uint256 dividendsAmount) {
        if (dividendsRound == 0) return 0;
        if (dividendsBuffer == 0) return 0;
        if (balanceOf[_for] == 0) return 0;
        if (paidDividends[_for][dividendsRound] != 0) return 0;
        uint256 divAmount = 0;
        divAmount = (dividendsSum * ((balanceOf[_for] * 10000000000000000) / totalSupply)) / 10000000000000000;
        // Do not calc dividends less or equal than 0.0001 ETH
        if (divAmount < 100000000000000) {
            paidDividends[_for][dividendsRound] = 1;
            return 0;
        }
        if (divAmount > dividendsBuffer) {
            divAmount = dividendsBuffer;
            dividendsBuffer = 0;
        } else dividendsBuffer -= divAmount;
        paidDividends[_for][dividendsRound] += divAmount;
        return divAmount;
    }

    /* A contract attempts to get the coins */
    function transferFrom(address _from, address _to, uint256 _value) public returns(bool success) {
        if (_to == 0x0) revert();
        if (balanceOf[_from] < _value) revert(); // Check if the sender has enough
        if ((balanceOf[_to] + _value) < balanceOf[_to]) revert(); // Check for overflows        
        if (_value > allowance[_from][msg.sender]) revert(); // Check allowance
        // Cancel transfer transactions before Ico and gracePeriod was finished
        if ((!icoFinished) && (_from != bountyAddr) && (!transferFromWhiteList[_from]) && (!allowTransfers)) revert();

        // Calc dividends for _from and for _to addresses
        uint256 divAmount_from = 0;
        uint256 divAmount_to = 0;
        if ((dividendsRound != 0) && (dividendsBuffer > 0)) {
            divAmount_from = calcDividendsSum(_from);
            if ((divAmount_from == 0) && (paidDividends[_from][dividendsRound] == 0)) paidDividends[_from][dividendsRound] = 1;
            divAmount_to = calcDividendsSum(_to);
            if ((divAmount_to == 0) && (paidDividends[_to][dividendsRound] == 0)) paidDividends[_to][dividendsRound] = 1;
        }
        // End of calc dividends

        balanceOf[_from] -= _value; // Subtract from the sender
        balanceOf[_to] += _value; // Add the same to the recipient
        allowance[_from][msg.sender] -= _value;

        if (divAmount_from > 0) {
            if (!_from.send(divAmount_from)) revert();
        }
        if (divAmount_to > 0) {
            if (!_to.send(divAmount_to)) revert();
        }

        Transfer(_from, _to, _value);
        return true;
    }
    
    /* Admin function for transfer coins */
    function transferFromAdmin(address _from, address _to, uint256 _value) public onlyOwner returns(bool success) {
        if (_to == 0x0) revert();
        if (balanceOf[_from] < _value) revert(); // Check if the sender has enough
        if ((balanceOf[_to] + _value) < balanceOf[_to]) revert(); // Check for overflows        

        // Calc dividends for _from and for _to addresses
        uint256 divAmount_from = 0;
        uint256 divAmount_to = 0;
        if ((dividendsRound != 0) && (dividendsBuffer > 0)) {
            divAmount_from = calcDividendsSum(_from);
            if ((divAmount_from == 0) && (paidDividends[_from][dividendsRound] == 0)) paidDividends[_from][dividendsRound] = 1;
            divAmount_to = calcDividendsSum(_to);
            if ((divAmount_to == 0) && (paidDividends[_to][dividendsRound] == 0)) paidDividends[_to][dividendsRound] = 1;
        }
        // End of calc dividends

        balanceOf[_from] -= _value; // Subtract from the sender
        balanceOf[_to] += _value; // Add the same to the recipient

        if (divAmount_from > 0) {
            if (!_from.send(divAmount_from)) revert();
        }
        if (divAmount_to > 0) {
            if (!_to.send(divAmount_to)) revert();
        }

        Transfer(_from, _to, _value);
        return true;
    }
    
    // This function is called when anyone send ETHs to this token
    function buy() public payable {
        if (isOwner()) {

        } else {
            uint256 amount = 0;
            amount = msg.value / buyPrice; // calculates the amount of STE

            uint256 amountToPresaleInvestor = 0;

            // GracePeriod if current timestamp between gracePeriodStartBlock and gracePeriodStopBlock
            if ( (block.number >= gracePeriodStartBlock) && (block.number <= gracePeriodStopBlock) ) {
                if ( (msg.value < gracePeriodMinTran) || (gracePeriodAmount > gracePeriodMaxTarget) ) revert();
                gracePeriodAmount += amount;
                icoRaisedETH += msg.value;
                icoInvestors[msg.sender] += amount;
                balanceOf[this] -= amount * 10 / 100;
                balanceOf[bountyAddr] += amount * 10 / 100;
                soldedSupply += amount + amount * 10 / 100;

            // Payment to presellers when ICO was finished
	        } else if ((icoFinished) && (presaleInvestorsETH[msg.sender] > 0) && (weiToPresalersFromICO > 0)) {
                amountToPresaleInvestor = msg.value + (presaleInvestorsETH[msg.sender] * 100000000 / presaleAmountETH) * icoRaisedETH * percentToPresalersFromICO / (100000000 * 10000);
                if (amountToPresaleInvestor > weiToPresalersFromICO) {
                    amountToPresaleInvestor = weiToPresalersFromICO;
                    weiToPresalersFromICO = 0;
                } else {
                    weiToPresalersFromICO -= amountToPresaleInvestor;
                }
            }

			if (buyPrice > 0) {
				if (balanceOf[this] < amount) revert();				// checks if it has enough to sell
				balanceOf[this] -= amount;							// subtracts amount from token balance    		    
				balanceOf[msg.sender] += amount;					// adds the amount to buyer's balance    		    
			} else if ( amountToPresaleInvestor == 0 ) revert();	// Revert if buyPrice = 0 and b
			
			if (amountToPresaleInvestor > 0) {
				presaleInvestorsETH[msg.sender] = 0;
				if ( !msg.sender.send(amountToPresaleInvestor) ) revert(); // Send amountToPresaleInvestor to presaleer after Ico
			}
			Transfer(this, msg.sender, amount);					// execute an event reflecting the change
        }
    }

    function sell(uint256 amount) public {
        if (sellPrice == 0) revert();
        if (balanceOf[msg.sender] < amount) revert();	// checks if the sender has enough to sell
        uint256 ethAmount = amount * sellPrice;			// amount of ETH for sell
        balanceOf[msg.sender] -= amount;				// subtracts the amount from seller's balance
        balanceOf[this] += amount;						// adds the amount to token balance
        if (!msg.sender.send(ethAmount)) revert();		// sends ether to the seller.
        Transfer(msg.sender, this, amount);
    }


    /* 
    	Set params of ICO
    	
    	_auctionsStartBlock, _auctionsStopBlock - block number of start and stop of Ico
    	_auctionsMinTran - minimum transaction amount for Ico in wei
    */
    function setICOParams(uint256 _gracePeriodPrice, uint32 _gracePeriodStartBlock, uint32 _gracePeriodStopBlock, uint256 _gracePeriodMaxTarget, uint256 _gracePeriodMinTran, bool _resetAmount) public onlyOwner {
    	gracePeriodStartBlock = _gracePeriodStartBlock;
        gracePeriodStopBlock = _gracePeriodStopBlock;
        gracePeriodMaxTarget = _gracePeriodMaxTarget;
        gracePeriodMinTran = _gracePeriodMinTran;
        
        buyPrice = _gracePeriodPrice;    	
    	
        icoFinished = false;        

        if (_resetAmount) icoRaisedETH = 0;
    }

    // Initiate dividends round ( owner can transfer ETH to contract and initiate dividends round )
    // aDividendsRound - is integer value of dividends period such as YYYYMM example 201712 (year 2017, month 12)
    function setDividends(uint32 _dividendsRound) public payable onlyOwner {
        if (_dividendsRound > 0) {
            if (msg.value < 1000000000000000) revert();
            dividendsSum = msg.value;
            dividendsBuffer = msg.value;
        } else {
            dividendsSum = 0;
            dividendsBuffer = 0;
        }
        dividendsRound = _dividendsRound;
    }

    // Get dividends
    function getDividends() public {
        if (dividendsBuffer == 0) revert();
        if (balanceOf[msg.sender] == 0) revert();
        if (paidDividends[msg.sender][dividendsRound] != 0) revert();
        uint256 divAmount = calcDividendsSum(msg.sender);
        if (divAmount >= 100000000000000) {
            if (!msg.sender.send(divAmount)) revert();
        }
    }

    // Set sell and buy prices for token
    function setPrices(uint256 _buyPrice, uint256 _sellPrice) public onlyOwner {
        buyPrice = _buyPrice;
        sellPrice = _sellPrice;
    }


    // Set sell and buy prices for token
    function setAllowTransfers(bool _allowTransfers) public onlyOwner {
        allowTransfers = _allowTransfers;
    }

    // Stop gracePeriod
    function stopGracePeriod() public onlyOwner {
        gracePeriodStopBlock = block.number;
        buyPrice = 0;
        sellPrice = 0;
    }

    // Stop ICO
    function stopICO() public onlyOwner {
        if ( gracePeriodStopBlock > block.number ) gracePeriodStopBlock = block.number;
        
        icoFinished = true;

        weiToPresalersFromICO = icoRaisedETH * percentToPresalersFromICO / 10000;

        if (soldedSupply >= (burnAfterSoldAmount * 100000000)) {

            uint256 companyCost = soldedSupply * 1000000 * 10000;
            companyCost = companyCost / (10000 - percentToFoundersAfterICO) / 1000000;
            
            uint256 amountToFounders = companyCost - soldedSupply;

            // Burn extra coins if current balance of token greater than amountToFounders 
            if (balanceOf[this] > amountToFounders) {
                Burn(this, (balanceOf[this]-amountToFounders));
                balanceOf[this] = 0;
                totalSupply = companyCost;
            } else {
                totalSupply += amountToFounders - balanceOf[this];
            }

            balanceOf[owner] += amountToFounders;
            balanceOf[this] = 0;
            Transfer(this, owner, amountToFounders);
        }

        buyPrice = 0;
        sellPrice = 0;
    }
    
    
    // Withdraw ETH to founders 
    function withdrawToFounders(uint256 amount) public onlyOwner {
    	uint256 amount_to_withdraw = amount * 1000000000000000; // 0.001 ETH
        if ((this.balance - weiToPresalersFromICO) < amount_to_withdraw) revert();
        amount_to_withdraw = amount_to_withdraw / foundersAddresses.length;
        uint8 i = 0;
        uint8 errors = 0;
        
        for (i = 0; i < foundersAddresses.length; i++) {
			if (!foundersAddresses[i].send(amount_to_withdraw)) {
				errors++;
			}
		}
    }
    
    function setBlockPerHour(uint256 _blocksPerHour) public onlyOwner {
    	blocksPerHour = _blocksPerHour;
    }
    
    function setBurnAfterSoldAmount(uint256 _burnAfterSoldAmount)  public onlyOwner {
    	burnAfterSoldAmount = _burnAfterSoldAmount;
    }
    
    function setTransferFromWhiteList(address _from, bool _allow) public onlyOwner {
    	transferFromWhiteList[_from] = _allow;
    }
    
    function addPresaleInvestor(address _addr, uint256 _amountETH, uint256 _amountSTE ) public onlyOwner {    	
	    presaleInvestors[_addr] += _amountSTE;
	    balanceOf[this] -= _amountSTE;
		balanceOf[_addr] += _amountSTE;
	    
	    if ( _amountETH > 0 ) {
	    	presaleInvestorsETH[_addr] += _amountETH;
			balanceOf[this] -= _amountSTE / 10;
			balanceOf[bountyAddr] += _amountSTE / 10;
			//presaleAmountETH += _amountETH;
		}
		
	    Transfer(this, _addr, _amountSTE);
    }
    
    /**/    
        
    // BURN coins in HELL! (sender balance)
    function burn(uint256 amount) public {
        if (balanceOf[msg.sender] < amount) revert(); // Check if the sender has enough
        balanceOf[msg.sender] -= amount; // Subtract from the sender
        totalSupply -= amount; // Updates totalSupply
        Burn(msg.sender, amount);
    }

    // BURN coins of token in HELL!
    function burnContractCoins(uint256 amount) public onlySuperOwner {
        if (balanceOf[this] < amount) revert(); // Check if the sender has enough
        balanceOf[this] -= amount; // Subtract from the contract balance
        totalSupply -= amount; // Updates totalSupply
        Burn(this, amount);
    }

    /* This unnamed function is called whenever someone tries to send ether to it */
    function() internal payable {
        buy();
    }
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[{"name":"_buyPrice","type":"uint256"},{"name":"_sellPrice","type":"uint256"}],"name":"setPrices","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":"_burnAfterSoldAmount","type":"uint256"}],"name":"setBurnAfterSoldAmount","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFromAdmin","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"soldedSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"dividendsBuffer","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"gracePeriodMaxTarget","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"dividendsRound","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"allowTransfers","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"presaleInvestors","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":true,"inputs":[],"name":"icoFinished","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"gracePeriodStartBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_dividendsRound","type":"uint32"}],"name":"setDividends","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"percentToPresalersFromICO","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sellPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"standard","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"weiToPresalersFromICO","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_gracePeriodPrice","type":"uint256"},{"name":"_gracePeriodStartBlock","type":"uint32"},{"name":"_gracePeriodStopBlock","type":"uint32"},{"name":"_gracePeriodMaxTarget","type":"uint256"},{"name":"_gracePeriodMinTran","type":"uint256"},{"name":"_resetAmount","type":"bool"}],"name":"setICOParams","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"transferFromWhiteList","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"buyPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_blocksPerHour","type":"uint256"}],"name":"setBlockPerHour","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":"percentToFoundersAfterICO","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"icoInvestors","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"dividendsSum","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"burnAfterSoldAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"presaleAmountETH","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"buy","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"stopGracePeriod","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"gracePeriodStopBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"burnContractCoins","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"stopICO","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"},{"name":"_extraData","type":"bytes"}],"name":"approveAndCall","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"uint32"}],"name":"paidDividends","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"},{"name":"_amountETH","type":"uint256"},{"name":"_amountSTE","type":"uint256"}],"name":"addPresaleInvestor","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"gracePeriodMinTran","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"gracePeriodAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"presaleInvestorsETH","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"blocksPerHour","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_allowTransfers","type":"bool"}],"name":"setAllowTransfers","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"withdrawToFounders","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"sell","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"getDividends","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"icoRaisedETH","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_allow","type":"bool"}],"name":"setTransferFromWhiteList","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_tokenName","type":"string"},{"name":"_tokenSymbol","type":"string"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Burn","type":"event"}]

606060405273630cc4c83fcc1121fed041126227d25bbeb51959600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507310945a93914adb1d68b6efaaa4a59dfb21ba9951600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040805190810160405280732f072f00328b6176257c21e6492576099056100173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001732640d4b3baf3f6cf9bb5732fe37fe1a9735a32ce73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815250600390600262000155929190620003c1565b506040805190810160405280600981526020017f546f6b656e20302e31000000000000000000000000000000000000000000000081525060059080519060200190620001a392919062000443565b503415620001b057600080fd5b60405162004aec38038062004aec83398101604052808051820191906020018051820191905050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506618de76816d8000600981905550600954601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506605de64fc1a4059600b8190555069032e168c69a1e3d3b6976011819055508160069080519060200190620002a292919062000443565b508060079080519060200190620002bb92919062000443565b5060088060006101000a81548160ff021916908360ff1602179055506000600a81905550610104600c81905550610bb8601860016101000a81548163ffffffff021916908363ffffffff1602179055506103e8600f60006101000a81548163ffffffff021916908363ffffffff1602179055506000601860006101000a81548160ff0219169083151502179055506000601860056101000a81548160ff0219169083151502179055506301312d00600e8190555062466eee6012819055506008600c54026012540160138190555060006016819055506601c6bf5263400060158190555067016345785d8a00006014819055506301c9c380601781905550505062000538565b826002810192821562000430579160200282015b828111156200042f5782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555091602001919060010190620003d5565b5b5090506200043f9190620004ca565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200048657805160ff1916838001178555620004b7565b82800160010185558215620004b7579182015b82811115620004b657825182559160200191906001019062000499565b5b509050620004c6919062000510565b5090565b6200050d91905b808211156200050957600081816101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550600101620004d1565b5090565b90565b6200053591905b808211156200053157600081600090555060010162000517565b5090565b90565b6145a480620005486000396000f300606060405260043610610293576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806305fefda71461029d57806306fdde03146102c957806308b73b3114610357578063095ea7b31461037a5780630d271720146103d45780630d6795311461044d578063111a1fe91461047657806318160ddd1461049f5780631a21c229146104c85780631d05bcb3146104f15780632185810b1461052657806323b872dd14610553578063242aa460146105cc578063313ce56714610619578063356e29271461064857806341461bad1461067557806342966c681461069e57806343ab850b146106c1578063443af072146106df5780634b750334146107145780635a3b7e421461073d57806370a08231146107cb57806371c107781461081857806377f54a82146108415780637e9b98ae1461089f5780638620410b146108f05780638da5cb5b14610919578063951d86a41461096e57806395d89b411461099157806399c20c3414610a1f5780639a95691514610a545780639dd7496414610aa15780639fd5298414610aca578063a08b144714610af3578063a6f2ae3a14610b1c578063a9059cbb14610b26578063b536fa6314610b68578063bb4cbd0b14610b7d578063c1b4aa5114610ba6578063c8e569a814610bc9578063cae9ca5114610bde578063cbd07fd814610c7b578063cc7fe38c14610cd7578063cf2f856e14610d22578063cf509b9d14610d4b578063d0fc899a14610d74578063dbcd258d14610dc1578063dd62ed3e14610dea578063df50afa414610e56578063e37d4fed14610e7b578063e4849b3214610e9e578063ed442e1414610ec1578063f2fde38b14610ed6578063f4a222e914610f0f578063f94d7a1014610f38575b61029b610f7c565b005b34156102a857600080fd5b6102c7600480803590602001909190803590602001909190505061146c565b005b34156102d457600080fd5b6102dc611533565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561031c578082015181840152602081019050610301565b50505050905090810190601f1680156103495780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561036257600080fd5b61037860048080359060200190919050506115d1565b005b341561038557600080fd5b6103ba600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611690565b604051808215151515815260200191505060405180910390f35b34156103df57600080fd5b610433600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190505061171d565b604051808215151515815260200191505060405180910390f35b341561045857600080fd5b610460611cb3565b6040518082815260200191505060405180910390f35b341561048157600080fd5b610489611cb9565b6040518082815260200191505060405180910390f35b34156104aa57600080fd5b6104b2611cbf565b6040518082815260200191505060405180910390f35b34156104d357600080fd5b6104db611cc5565b6040518082815260200191505060405180910390f35b34156104fc57600080fd5b610504611ccb565b604051808263ffffffff1663ffffffff16815260200191505060405180910390f35b341561053157600080fd5b610539611ce1565b604051808215151515815260200191505060405180910390f35b341561055e57600080fd5b6105b2600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611cf4565b604051808215151515815260200191505060405180910390f35b34156105d757600080fd5b610603600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506123cb565b6040518082815260200191505060405180910390f35b341561062457600080fd5b61062c6123e3565b604051808260ff1660ff16815260200191505060405180910390f35b341561065357600080fd5b61065b6123f6565b604051808215151515815260200191505060405180910390f35b341561068057600080fd5b610688612409565b6040518082815260200191505060405180910390f35b34156106a957600080fd5b6106bf600480803590602001909190505061240f565b005b6106dd600480803563ffffffff16906020019091905050612509565b005b34156106ea57600080fd5b6106f2612629565b604051808263ffffffff1663ffffffff16815260200191505060405180910390f35b341561071f57600080fd5b61072761263f565b6040518082815260200191505060405180910390f35b341561074857600080fd5b610750612645565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610790578082015181840152602081019050610775565b50505050905090810190601f1680156107bd5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156107d657600080fd5b610802600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506126e3565b6040518082815260200191505060405180910390f35b341561082357600080fd5b61082b6126fb565b6040518082815260200191505060405180910390f35b341561084c57600080fd5b61089d600480803590602001909190803563ffffffff1690602001909190803563ffffffff169060200190919080359060200190919080359060200190919080351515906020019091905050612701565b005b34156108aa57600080fd5b6108d6600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050612817565b604051808215151515815260200191505060405180910390f35b34156108fb57600080fd5b610903612837565b6040518082815260200191505060405180910390f35b341561092457600080fd5b61092c61283d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561097957600080fd5b61098f6004808035906020019091905050612862565b005b341561099c57600080fd5b6109a4612921565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156109e45780820151818401526020810190506109c9565b50505050905090810190601f168015610a115780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3415610a2a57600080fd5b610a326129bf565b604051808263ffffffff1663ffffffff16815260200191505060405180910390f35b3415610a5f57600080fd5b610a8b600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506129d5565b6040518082815260200191505060405180910390f35b3415610aac57600080fd5b610ab46129ed565b6040518082815260200191505060405180910390f35b3415610ad557600080fd5b610add6129f3565b6040518082815260200191505060405180910390f35b3415610afe57600080fd5b610b066129f9565b6040518082815260200191505060405180910390f35b610b24610f7c565b005b3415610b3157600080fd5b610b66600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506129ff565b005b3415610b7357600080fd5b610b7b612f65565b005b3415610b8857600080fd5b610b90613033565b6040518082815260200191505060405180910390f35b3415610bb157600080fd5b610bc76004808035906020019091905050613039565b005b3415610bd457600080fd5b610bdc61318f565b005b3415610be957600080fd5b610c61600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919050506135cb565b604051808215151515815260200191505060405180910390f35b3415610c8657600080fd5b610cc1600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803563ffffffff16906020019091905050613749565b6040518082815260200191505060405180910390f35b3415610ce257600080fd5b610d20600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803590602001909190505061376e565b005b3415610d2d57600080fd5b610d35613a9f565b6040518082815260200191505060405180910390f35b3415610d5657600080fd5b610d5e613aa5565b6040518082815260200191505060405180910390f35b3415610d7f57600080fd5b610dab600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050613aab565b6040518082815260200191505060405180910390f35b3415610dcc57600080fd5b610dd4613ac3565b6040518082815260200191505060405180910390f35b3415610df557600080fd5b610e40600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050613ac9565b6040518082815260200191505060405180910390f35b3415610e6157600080fd5b610e7960048080351515906020019091905050613aee565b005b3415610e8657600080fd5b610e9c6004808035906020019091905050613bc0565b005b3415610ea957600080fd5b610ebf6004808035906020019091905050613d60565b005b3415610ecc57600080fd5b610ed4613f07565b005b3415610ee157600080fd5b610f0d600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050614040565b005b3415610f1a57600080fd5b610f226140df565b6040518082815260200191505060405180910390f35b3415610f4357600080fd5b610f7a600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803515159060200190919050506140e5565b005b600080610f876141f5565b15610f9157611468565b60009150600e5434811515610fa257fe5b049150600090506012544310158015610fbd57506013544311155b1561114c57601454341080610fd55750601554601654115b15610fdf57600080fd5b8160166000828254019250508190555034600a6000828254019250508190555081601d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506064600a830281151561105b57fe5b04601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506064600a83028115156110b757fe5b04601a6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506064600a830281151561113557fe5b048201600b6000828254019250508190555061126e565b601860009054906101000a900460ff1680156111a757506000601b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b80156111b557506000601054115b1561126d5764e8d4a51000600f60009054906101000a900463ffffffff1663ffffffff16600a546011546305f5e100601b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020540281151561122e57fe5b04020281151561123a57fe5b043401905060105481111561125b576010549050600060108190555061126c565b806010600082825403925050819055505b5b5b6000600e5411156113645781601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156112c557600080fd5b81601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550611373565b600081141561137257600080fd5b5b6000811115611402576000601b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050151561140157600080fd5b5b3373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35b5050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156115175750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b1561152157600080fd5b81600e8190555080600d819055505050565b60068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156115c95780601f1061159e576101008083540402835291602001916115c9565b820191906000526020600020905b8154815290600101906020018083116115ac57829003601f168201915b505050505081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561167c5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b1561168657600080fd5b8060178190555050565b600081602260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001905092915050565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156117cd5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b156117d757600080fd5b60008573ffffffffffffffffffffffffffffffffffffffff1614156117fb57600080fd5b83601a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561184757600080fd5b601a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484601a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020540110156118d457600080fd5b60009150600090506000601e60009054906101000a900463ffffffff1663ffffffff161415801561190757506000602054115b15611b1357611915866142b5565b915060008214801561199557506000602160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff16815260200190815260200160002054145b15611a0f576001602160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff168152602001908152602001600020819055505b611a18856142b5565b9050600081148015611a9857506000602160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff16815260200190815260200160002054145b15611b12576001602160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff168152602001908152602001600020819055505b5b83601a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555083601a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506000821115611bf7578573ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501515611bf657600080fd5b5b6000811115611c41578473ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501515611c4057600080fd5b5b8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a36001925050509392505050565b600b5481565b60205481565b60095481565b60155481565b601e60009054906101000a900463ffffffff1681565b601860059054906101000a900460ff1681565b6000806000808573ffffffffffffffffffffffffffffffffffffffff161415611d1c57600080fd5b83601a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611d6857600080fd5b601a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484601a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054011015611df557600080fd5b602260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054841115611e7e57600080fd5b601860009054906101000a900460ff16158015611ee95750600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614155b8015611f3f5750601960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015611f585750601860059054906101000a900460ff16155b15611f6257600080fd5b60009150600090506000601e60009054906101000a900463ffffffff1663ffffffff1614158015611f9557506000602054115b156121a157611fa3866142b5565b915060008214801561202357506000602160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff16815260200190815260200160002054145b1561209d576001602160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff168152602001908152602001600020819055505b6120a6856142b5565b905060008114801561212657506000602160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff16815260200190815260200160002054145b156121a0576001602160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff168152602001908152602001600020819055505b5b83601a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555083601a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555083602260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550600082111561230f578573ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050151561230e57600080fd5b5b6000811115612359578473ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050151561235857600080fd5b5b8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a36001925050509392505050565b601c6020528060005260406000206000915090505481565b600860009054906101000a900460ff1681565b601860009054906101000a900460ff1681565b60125481565b80601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561245b57600080fd5b80601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550806009600082825403925050819055503373ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5826040518082815260200191505060405180910390a250565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156125b45750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b156125be57600080fd5b60008163ffffffff1611156125f45766038d7ea4c680003410156125e157600080fd5b34601f8190555034602081905550612605565b6000601f8190555060006020819055505b80601e60006101000a81548163ffffffff021916908363ffffffff16021790555050565b600f60009054906101000a900463ffffffff1681565b600d5481565b60058054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156126db5780601f106126b0576101008083540402835291602001916126db565b820191906000526020600020905b8154815290600101906020018083116126be57829003601f168201915b505050505081565b601a6020528060005260406000206000915090505481565b60105481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156127ac5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b156127b657600080fd5b8463ffffffff166012819055508363ffffffff16601381905550826015819055508160148190555085600e819055506000601860006101000a81548160ff021916908315150217905550801561280f576000600a819055505b505050505050565b60196020528060005260406000206000915054906101000a900460ff1681565b600e5481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561290d5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b1561291757600080fd5b80600c8190555050565b60078054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156129b75780601f1061298c576101008083540402835291602001916129b7565b820191906000526020600020905b81548152906001019060200180831161299a57829003601f168201915b505050505081565b601860019054906101000a900463ffffffff1681565b601d6020528060005260406000206000915090505481565b601f5481565b60175481565b60115481565b60008060008473ffffffffffffffffffffffffffffffffffffffff161415612a2657600080fd5b82601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015612a7257600080fd5b601a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483601a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054011015612aff57600080fd5b601860009054906101000a900460ff16158015612b6a5750600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b8015612b835750601860059054906101000a900460ff16155b15612b8d57600080fd5b60009150600090506000601e60009054906101000a900463ffffffff1663ffffffff1614158015612bc057506000602054115b15612dcc57612bce336142b5565b9150600082148015612c4e57506000602160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff16815260200190815260200160002054145b15612cc8576001602160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff168152602001908152602001600020819055505b612cd1846142b5565b9050600081148015612d5157506000602160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff16815260200190815260200160002054145b15612dcb576001602160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff168152602001908152602001600020819055505b5b82601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555082601a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506000821115612eb0573373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501515612eaf57600080fd5b5b6000811115612efa578373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501515612ef957600080fd5b5b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a350505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156130105750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b1561301a57600080fd5b436013819055506000600e819055506000600d81905550565b60135481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561309557600080fd5b80601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156130e157600080fd5b80601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550806009600082825403925050819055503073ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5826040518082815260200191505060405180910390a250565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561323d5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b1561324757600080fd5b43601354111561325957436013819055505b6001601860006101000a81548160ff021916908315150217905550612710600f60009054906101000a900463ffffffff1663ffffffff16600a540281151561329d57fe5b046010819055506305f5e10060175402600b541015156135b757612710620f4240600b5402029150620f4240601860019054906101000a900463ffffffff166127100363ffffffff16838115156132f057fe5b048115156132fa57fe5b049150600b548203905080601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054111561342b573073ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca582601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054036040518082815260200191505060405180910390a26000601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508160098190555061347d565b601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205481036009600082825401925050819055505b80601a60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506000601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35b6000600e819055506000600d819055505050565b6000808490506135db8585611690565b15613740578073ffffffffffffffffffffffffffffffffffffffff16638f4ffcb1338630876040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b838110156136d55780820151818401526020810190506136ba565b50505050905090810190601f1680156137025780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b151561372357600080fd5b6102c65a03f1151561373457600080fd5b50505060019150613741565b5b509392505050565b6021602052816000526040600020602052806000526040600020600091509150505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156138195750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b1561382357600080fd5b80601c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555080601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555080601a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506000821115613a355781601b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550600a8181151561396c57fe5b04601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550600a818115156139c557fe5b04601a6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8273ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b60145481565b60165481565b601b6020528060005260406000206000915090505481565b600c5481565b6022602052816000526040600020602052806000526040600020600091509150505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015613b995750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15613ba357600080fd5b80601860056101000a81548160ff02191690831515021790555050565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015613c705750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15613c7a57600080fd5b66038d7ea4c6800084029250826010543073ffffffffffffffffffffffffffffffffffffffff1631031015613cae57600080fd5b600283811515613cba57fe5b0492506000915060009050600091505b60028260ff161015613d5a5760038260ff16600281101515613ce857fe5b0160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f193505050501515613d4d5780806001019150505b8180600101925050613cca565b50505050565b600080600d541415613d7157600080fd5b81601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015613dbd57600080fd5b600d548202905081601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501515613e9e57600080fd5b3073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35050565b6000806020541415613f1857600080fd5b6000601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541415613f6557600080fd5b6000602160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff16815260200190815260200160002054141515613fe257600080fd5b613feb336142b5565b9050655af3107a40008110151561403d573373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050151561403c57600080fd5b5b50565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561409c57600080fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600a5481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156141905750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b1561419a57600080fd5b80601960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061429f5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b156142ad57600190506142b2565b600090505b90565b6000806000601e60009054906101000a900463ffffffff1663ffffffff1614156142e25760009150614572565b600060205414156142f65760009150614572565b6000601a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414156143475760009150614572565b6000602160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff168152602001908152602001600020541415156143c85760009150614572565b60009050662386f26fc10000600954662386f26fc10000601a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020540281151561442957fe5b04601f540281151561443757fe5b049050655af3107a40008110156144c5576001602160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff1681526020019081526020016000208190555060009150614572565b6020548111156144e157602054905060006020819055506144f2565b806020600082825403925050819055505b80602160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff168152602001908152602001600020600082825401925050819055508091505b509190505600a165627a7a72305820f044c3f2596409b90e3482bee906e10a30c39d375a8f91b76605fed729a3c2990029000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000011535465582045786368616e67652049434f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035354450000000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x606060405260043610610293576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806305fefda71461029d57806306fdde03146102c957806308b73b3114610357578063095ea7b31461037a5780630d271720146103d45780630d6795311461044d578063111a1fe91461047657806318160ddd1461049f5780631a21c229146104c85780631d05bcb3146104f15780632185810b1461052657806323b872dd14610553578063242aa460146105cc578063313ce56714610619578063356e29271461064857806341461bad1461067557806342966c681461069e57806343ab850b146106c1578063443af072146106df5780634b750334146107145780635a3b7e421461073d57806370a08231146107cb57806371c107781461081857806377f54a82146108415780637e9b98ae1461089f5780638620410b146108f05780638da5cb5b14610919578063951d86a41461096e57806395d89b411461099157806399c20c3414610a1f5780639a95691514610a545780639dd7496414610aa15780639fd5298414610aca578063a08b144714610af3578063a6f2ae3a14610b1c578063a9059cbb14610b26578063b536fa6314610b68578063bb4cbd0b14610b7d578063c1b4aa5114610ba6578063c8e569a814610bc9578063cae9ca5114610bde578063cbd07fd814610c7b578063cc7fe38c14610cd7578063cf2f856e14610d22578063cf509b9d14610d4b578063d0fc899a14610d74578063dbcd258d14610dc1578063dd62ed3e14610dea578063df50afa414610e56578063e37d4fed14610e7b578063e4849b3214610e9e578063ed442e1414610ec1578063f2fde38b14610ed6578063f4a222e914610f0f578063f94d7a1014610f38575b61029b610f7c565b005b34156102a857600080fd5b6102c7600480803590602001909190803590602001909190505061146c565b005b34156102d457600080fd5b6102dc611533565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561031c578082015181840152602081019050610301565b50505050905090810190601f1680156103495780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561036257600080fd5b61037860048080359060200190919050506115d1565b005b341561038557600080fd5b6103ba600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611690565b604051808215151515815260200191505060405180910390f35b34156103df57600080fd5b610433600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190505061171d565b604051808215151515815260200191505060405180910390f35b341561045857600080fd5b610460611cb3565b6040518082815260200191505060405180910390f35b341561048157600080fd5b610489611cb9565b6040518082815260200191505060405180910390f35b34156104aa57600080fd5b6104b2611cbf565b6040518082815260200191505060405180910390f35b34156104d357600080fd5b6104db611cc5565b6040518082815260200191505060405180910390f35b34156104fc57600080fd5b610504611ccb565b604051808263ffffffff1663ffffffff16815260200191505060405180910390f35b341561053157600080fd5b610539611ce1565b604051808215151515815260200191505060405180910390f35b341561055e57600080fd5b6105b2600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611cf4565b604051808215151515815260200191505060405180910390f35b34156105d757600080fd5b610603600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506123cb565b6040518082815260200191505060405180910390f35b341561062457600080fd5b61062c6123e3565b604051808260ff1660ff16815260200191505060405180910390f35b341561065357600080fd5b61065b6123f6565b604051808215151515815260200191505060405180910390f35b341561068057600080fd5b610688612409565b6040518082815260200191505060405180910390f35b34156106a957600080fd5b6106bf600480803590602001909190505061240f565b005b6106dd600480803563ffffffff16906020019091905050612509565b005b34156106ea57600080fd5b6106f2612629565b604051808263ffffffff1663ffffffff16815260200191505060405180910390f35b341561071f57600080fd5b61072761263f565b6040518082815260200191505060405180910390f35b341561074857600080fd5b610750612645565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610790578082015181840152602081019050610775565b50505050905090810190601f1680156107bd5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156107d657600080fd5b610802600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506126e3565b6040518082815260200191505060405180910390f35b341561082357600080fd5b61082b6126fb565b6040518082815260200191505060405180910390f35b341561084c57600080fd5b61089d600480803590602001909190803563ffffffff1690602001909190803563ffffffff169060200190919080359060200190919080359060200190919080351515906020019091905050612701565b005b34156108aa57600080fd5b6108d6600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050612817565b604051808215151515815260200191505060405180910390f35b34156108fb57600080fd5b610903612837565b6040518082815260200191505060405180910390f35b341561092457600080fd5b61092c61283d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561097957600080fd5b61098f6004808035906020019091905050612862565b005b341561099c57600080fd5b6109a4612921565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156109e45780820151818401526020810190506109c9565b50505050905090810190601f168015610a115780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3415610a2a57600080fd5b610a326129bf565b604051808263ffffffff1663ffffffff16815260200191505060405180910390f35b3415610a5f57600080fd5b610a8b600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506129d5565b6040518082815260200191505060405180910390f35b3415610aac57600080fd5b610ab46129ed565b6040518082815260200191505060405180910390f35b3415610ad557600080fd5b610add6129f3565b6040518082815260200191505060405180910390f35b3415610afe57600080fd5b610b066129f9565b6040518082815260200191505060405180910390f35b610b24610f7c565b005b3415610b3157600080fd5b610b66600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506129ff565b005b3415610b7357600080fd5b610b7b612f65565b005b3415610b8857600080fd5b610b90613033565b6040518082815260200191505060405180910390f35b3415610bb157600080fd5b610bc76004808035906020019091905050613039565b005b3415610bd457600080fd5b610bdc61318f565b005b3415610be957600080fd5b610c61600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919050506135cb565b604051808215151515815260200191505060405180910390f35b3415610c8657600080fd5b610cc1600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803563ffffffff16906020019091905050613749565b6040518082815260200191505060405180910390f35b3415610ce257600080fd5b610d20600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803590602001909190505061376e565b005b3415610d2d57600080fd5b610d35613a9f565b6040518082815260200191505060405180910390f35b3415610d5657600080fd5b610d5e613aa5565b6040518082815260200191505060405180910390f35b3415610d7f57600080fd5b610dab600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050613aab565b6040518082815260200191505060405180910390f35b3415610dcc57600080fd5b610dd4613ac3565b6040518082815260200191505060405180910390f35b3415610df557600080fd5b610e40600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050613ac9565b6040518082815260200191505060405180910390f35b3415610e6157600080fd5b610e7960048080351515906020019091905050613aee565b005b3415610e8657600080fd5b610e9c6004808035906020019091905050613bc0565b005b3415610ea957600080fd5b610ebf6004808035906020019091905050613d60565b005b3415610ecc57600080fd5b610ed4613f07565b005b3415610ee157600080fd5b610f0d600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050614040565b005b3415610f1a57600080fd5b610f226140df565b6040518082815260200191505060405180910390f35b3415610f4357600080fd5b610f7a600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803515159060200190919050506140e5565b005b600080610f876141f5565b15610f9157611468565b60009150600e5434811515610fa257fe5b049150600090506012544310158015610fbd57506013544311155b1561114c57601454341080610fd55750601554601654115b15610fdf57600080fd5b8160166000828254019250508190555034600a6000828254019250508190555081601d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506064600a830281151561105b57fe5b04601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506064600a83028115156110b757fe5b04601a6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506064600a830281151561113557fe5b048201600b6000828254019250508190555061126e565b601860009054906101000a900460ff1680156111a757506000601b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b80156111b557506000601054115b1561126d5764e8d4a51000600f60009054906101000a900463ffffffff1663ffffffff16600a546011546305f5e100601b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020540281151561122e57fe5b04020281151561123a57fe5b043401905060105481111561125b576010549050600060108190555061126c565b806010600082825403925050819055505b5b5b6000600e5411156113645781601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156112c557600080fd5b81601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550611373565b600081141561137257600080fd5b5b6000811115611402576000601b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050151561140157600080fd5b5b3373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35b5050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156115175750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b1561152157600080fd5b81600e8190555080600d819055505050565b60068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156115c95780601f1061159e576101008083540402835291602001916115c9565b820191906000526020600020905b8154815290600101906020018083116115ac57829003601f168201915b505050505081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561167c5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b1561168657600080fd5b8060178190555050565b600081602260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001905092915050565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156117cd5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b156117d757600080fd5b60008573ffffffffffffffffffffffffffffffffffffffff1614156117fb57600080fd5b83601a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561184757600080fd5b601a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484601a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020540110156118d457600080fd5b60009150600090506000601e60009054906101000a900463ffffffff1663ffffffff161415801561190757506000602054115b15611b1357611915866142b5565b915060008214801561199557506000602160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff16815260200190815260200160002054145b15611a0f576001602160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff168152602001908152602001600020819055505b611a18856142b5565b9050600081148015611a9857506000602160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff16815260200190815260200160002054145b15611b12576001602160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff168152602001908152602001600020819055505b5b83601a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555083601a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506000821115611bf7578573ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501515611bf657600080fd5b5b6000811115611c41578473ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501515611c4057600080fd5b5b8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a36001925050509392505050565b600b5481565b60205481565b60095481565b60155481565b601e60009054906101000a900463ffffffff1681565b601860059054906101000a900460ff1681565b6000806000808573ffffffffffffffffffffffffffffffffffffffff161415611d1c57600080fd5b83601a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611d6857600080fd5b601a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484601a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054011015611df557600080fd5b602260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054841115611e7e57600080fd5b601860009054906101000a900460ff16158015611ee95750600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614155b8015611f3f5750601960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015611f585750601860059054906101000a900460ff16155b15611f6257600080fd5b60009150600090506000601e60009054906101000a900463ffffffff1663ffffffff1614158015611f9557506000602054115b156121a157611fa3866142b5565b915060008214801561202357506000602160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff16815260200190815260200160002054145b1561209d576001602160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff168152602001908152602001600020819055505b6120a6856142b5565b905060008114801561212657506000602160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff16815260200190815260200160002054145b156121a0576001602160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff168152602001908152602001600020819055505b5b83601a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555083601a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555083602260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550600082111561230f578573ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050151561230e57600080fd5b5b6000811115612359578473ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050151561235857600080fd5b5b8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a36001925050509392505050565b601c6020528060005260406000206000915090505481565b600860009054906101000a900460ff1681565b601860009054906101000a900460ff1681565b60125481565b80601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561245b57600080fd5b80601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550806009600082825403925050819055503373ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5826040518082815260200191505060405180910390a250565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156125b45750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b156125be57600080fd5b60008163ffffffff1611156125f45766038d7ea4c680003410156125e157600080fd5b34601f8190555034602081905550612605565b6000601f8190555060006020819055505b80601e60006101000a81548163ffffffff021916908363ffffffff16021790555050565b600f60009054906101000a900463ffffffff1681565b600d5481565b60058054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156126db5780601f106126b0576101008083540402835291602001916126db565b820191906000526020600020905b8154815290600101906020018083116126be57829003601f168201915b505050505081565b601a6020528060005260406000206000915090505481565b60105481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156127ac5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b156127b657600080fd5b8463ffffffff166012819055508363ffffffff16601381905550826015819055508160148190555085600e819055506000601860006101000a81548160ff021916908315150217905550801561280f576000600a819055505b505050505050565b60196020528060005260406000206000915054906101000a900460ff1681565b600e5481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561290d5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b1561291757600080fd5b80600c8190555050565b60078054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156129b75780601f1061298c576101008083540402835291602001916129b7565b820191906000526020600020905b81548152906001019060200180831161299a57829003601f168201915b505050505081565b601860019054906101000a900463ffffffff1681565b601d6020528060005260406000206000915090505481565b601f5481565b60175481565b60115481565b60008060008473ffffffffffffffffffffffffffffffffffffffff161415612a2657600080fd5b82601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015612a7257600080fd5b601a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483601a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054011015612aff57600080fd5b601860009054906101000a900460ff16158015612b6a5750600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b8015612b835750601860059054906101000a900460ff16155b15612b8d57600080fd5b60009150600090506000601e60009054906101000a900463ffffffff1663ffffffff1614158015612bc057506000602054115b15612dcc57612bce336142b5565b9150600082148015612c4e57506000602160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff16815260200190815260200160002054145b15612cc8576001602160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff168152602001908152602001600020819055505b612cd1846142b5565b9050600081148015612d5157506000602160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff16815260200190815260200160002054145b15612dcb576001602160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff168152602001908152602001600020819055505b5b82601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555082601a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506000821115612eb0573373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501515612eaf57600080fd5b5b6000811115612efa578373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501515612ef957600080fd5b5b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a350505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156130105750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b1561301a57600080fd5b436013819055506000600e819055506000600d81905550565b60135481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561309557600080fd5b80601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156130e157600080fd5b80601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550806009600082825403925050819055503073ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5826040518082815260200191505060405180910390a250565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561323d5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b1561324757600080fd5b43601354111561325957436013819055505b6001601860006101000a81548160ff021916908315150217905550612710600f60009054906101000a900463ffffffff1663ffffffff16600a540281151561329d57fe5b046010819055506305f5e10060175402600b541015156135b757612710620f4240600b5402029150620f4240601860019054906101000a900463ffffffff166127100363ffffffff16838115156132f057fe5b048115156132fa57fe5b049150600b548203905080601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054111561342b573073ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca582601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054036040518082815260200191505060405180910390a26000601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508160098190555061347d565b601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205481036009600082825401925050819055505b80601a60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506000601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35b6000600e819055506000600d819055505050565b6000808490506135db8585611690565b15613740578073ffffffffffffffffffffffffffffffffffffffff16638f4ffcb1338630876040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b838110156136d55780820151818401526020810190506136ba565b50505050905090810190601f1680156137025780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b151561372357600080fd5b6102c65a03f1151561373457600080fd5b50505060019150613741565b5b509392505050565b6021602052816000526040600020602052806000526040600020600091509150505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156138195750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b1561382357600080fd5b80601c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555080601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555080601a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506000821115613a355781601b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550600a8181151561396c57fe5b04601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550600a818115156139c557fe5b04601a6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8273ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b60145481565b60165481565b601b6020528060005260406000206000915090505481565b600c5481565b6022602052816000526040600020602052806000526040600020600091509150505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015613b995750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15613ba357600080fd5b80601860056101000a81548160ff02191690831515021790555050565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015613c705750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15613c7a57600080fd5b66038d7ea4c6800084029250826010543073ffffffffffffffffffffffffffffffffffffffff1631031015613cae57600080fd5b600283811515613cba57fe5b0492506000915060009050600091505b60028260ff161015613d5a5760038260ff16600281101515613ce857fe5b0160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f193505050501515613d4d5780806001019150505b8180600101925050613cca565b50505050565b600080600d541415613d7157600080fd5b81601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015613dbd57600080fd5b600d548202905081601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081601a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501515613e9e57600080fd5b3073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35050565b6000806020541415613f1857600080fd5b6000601a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541415613f6557600080fd5b6000602160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff16815260200190815260200160002054141515613fe257600080fd5b613feb336142b5565b9050655af3107a40008110151561403d573373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050151561403c57600080fd5b5b50565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561409c57600080fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600a5481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156141905750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b1561419a57600080fd5b80601960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061429f5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b156142ad57600190506142b2565b600090505b90565b6000806000601e60009054906101000a900463ffffffff1663ffffffff1614156142e25760009150614572565b600060205414156142f65760009150614572565b6000601a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414156143475760009150614572565b6000602160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff168152602001908152602001600020541415156143c85760009150614572565b60009050662386f26fc10000600954662386f26fc10000601a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020540281151561442957fe5b04601f540281151561443757fe5b049050655af3107a40008110156144c5576001602160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff1681526020019081526020016000208190555060009150614572565b6020548111156144e157602054905060006020819055506144f2565b806020600082825403925050819055505b80602160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601e60009054906101000a900463ffffffff1663ffffffff1663ffffffff168152602001908152602001600020600082825401925050819055508091505b509190505600a165627a7a72305820f044c3f2596409b90e3482bee906e10a30c39d375a8f91b76605fed729a3c2990029

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000011535465582045786368616e67652049434f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035354450000000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _tokenName (string): STeX Exchange ICO
Arg [1] : _tokenSymbol (string): STE

-----Encoded View---------------
6 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000040
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000011
Arg [3] : 535465582045786368616e67652049434f000000000000000000000000000000
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [5] : 5354450000000000000000000000000000000000000000000000000000000000


Swarm Source

bzzr://f044c3f2596409b90e3482bee906e10a30c39d375a8f91b76605fed729a3c299

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
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.