Sponsored:   Color - Revolutionizing the Dapp Ecosystem, Bounty & Airdrop, Get 240,000 COL NOW!
 Latest 25 txns from a total Of 1969 transactions

TxHash Age From To Value [TxFee]
0x73203dcd4eae6f7bcba5024ed57ef969a1e6ec157726f125e6eb4b2d86c96b631 day 54 mins ago0x62a8801bdc972d677402d5478389a47d01392779  IN   WolkServicesToken0 Ether0.000124007
0x9d16b363f5b78741c1cb2b5620e46601474068a7b2e73ef91220b9e47e6d75021 day 2 hrs ago0x3fdc6b969646d6d98b3d62917f2636ed4f6052bb  IN   WolkServicesToken0 Ether0.000152624
0x72abb70b0f9393fef3b555217af8b445da032f052ead6fe3373d16cafb76cbb31 day 11 hrs ago0x2c355c52d609fc25db5c5c45f78b0c149a1e62a9  IN   WolkServicesToken0 Ether0.0002350845
0x36ab5abb849f1981c20c871949d8851beaf87f2426d601ef2e0aed2acc976d6a1 day 12 hrs ago0xecccf3cb2186cdc76a2b3bd67167a56581cd6673  IN   WolkServicesToken0 Ether0.00014966028
0xa622e4075a46ccb3ed101ac17e2b5f8b89dc1726b134fcc95c4c813b9debe8d62 days 4 hrs ago0x8ee4b86da2eb9a50e8c704cd91de4b58ad4b7efe  IN   WolkServicesToken0 Ether0.000196074145
0x9ef78514fa83d74665a6ebc8628ff70a35d64032d061c4a0c6b9f4ec3efab1752 days 9 hrs ago0x1290961b577f5a5b3e226446d6e807fad19bfd1b  IN   WolkServicesToken0 Ether0.0002360637
0xe9c6c13d47b8ab81998f719349afbe9fa59322c3c3edeb6ee6254d31b17d446f2 days 9 hrs ago0x1290961b577f5a5b3e226446d6e807fad19bfd1b  IN   WolkServicesToken0 Ether0.0000776118
0xdcd3cda9c6886583189c7bed5a17bbb6ac6e899f06eb21fa287fcf2ee5578b404 days 10 hrs ago0xbadffcb79efe57e954fd79621b29b0c2dc170171  IN   WolkServicesToken0 Ether0.00184636
0xafe3a44f0757d5723b23debd9d4bd7ca57fe44cf4b7f478dcabc5390ae14b0cf4 days 10 hrs agoHitBTC_2  IN   WolkServicesToken0 Ether0.00369999
0xef3123a3eb3f41d724aade35427516e37b122a7d30a546b82b65db34d3d119a97 days 13 hrs ago0xaeec6f5aca72f3a005af1b3420ab8c8c7009bac8  IN   WolkServicesToken0 Ether0.0016649955
0x8b97a6e4868740a01382fc932b6ee5a9bb765f1f3b0c525f19527daaadbb2a3110 days 20 hrs ago0x84190554bf8d79614af8f01dab8a5e0cec65133b  IN   WolkServicesToken0 Ether0.000052989145
0xfc4dbeb41ce2b459512209ac5394162b273d1fad05d720a1f93ff145e788341911 days 2 hrs agoHitBTC_2  IN   WolkServicesToken0 Ether0.000316758
0x1e1cb1434920bd39c5c82818e8e37cf0cf46e3ef641eb6a5682e6dc5b2b7c92511 days 10 hrs ago0xa25a93f5029e14b8a26b871f353fc9d0762c04ca  IN   WolkServicesToken0 Ether0.000230475
0x2404aee3c34cd5e71f429f8f0dfc3ef653797fb92a1fe2aaa0d70eb2053e86ce11 days 10 hrs agoHitBTC_2  IN   WolkServicesToken0 Ether0.000580723
0xbb49147168aab35e384cb602742e6af63cc16ee66579c77c3367770fc5a54fa511 days 10 hrs ago0xa12431d0b9db640034b0cdfceef9cce161e62be4  IN   WolkServicesToken0 Ether0.00075714
0xdfd01133c4100984b88f02995b01a3071bfb7f2abaf0bd549833f69a18dbddab11 days 11 hrs ago0xf46577d91919b86cf9a2107968226ab0a83061cb  IN   WolkServicesToken0 Ether0.000110223145
0x181033a184d383aa2d9063d499415087e6486dde4a8007e65f3fba72d7dd4aaf11 days 11 hrs ago0xc2a586f6c72aaea76409407a18c10e30d7369aa5  IN   WolkServicesToken0 Ether0.000110223145
0xfb887d5a34a76d5f5a3b82dc1b59632079f3976c22c0e1e28bb25a54e0df58e111 days 15 hrs ago0xb092a5abafea74f2d2a91ad1e8aad0086013d79a  IN   WolkServicesToken0 Ether0.000230795
0x7c6a3d9e3c64614fe94c27d3eaa8425878b806000a574ba981954955d813f06a11 days 15 hrs ago0xb092a5abafea74f2d2a91ad1e8aad0086013d79a  IN   WolkServicesToken0 Ether0.00007609
0x79a305b230c26d8e4f0365b4756d07139e18a5f7dfe24c0641d1388bd047e31711 days 15 hrs agoHitBTC_2  IN   WolkServicesToken0 Ether0.00037857
0x31db0314784be01576a6902f8a0331edaff33500667ba973495b79a06116c78e14 days 3 mins ago0x4449fb9a03c1717885f6af23911008e164da5321  IN   WolkServicesToken0 Ether0.000113965
0xcfe877252b221ab9e51728a5eb755baaee3e788f92ad10981b5873e04f4f167014 days 14 mins ago0xf2478768f1133b8b0814fe66d837dca71c21bdbd  IN   WolkServicesToken0 Ether0.000113965
0x50b68ce69ed88b023471652608e2db92a53bb4e279c293dec824e859a9046ce514 days 39 mins ago0x11fb69843d183236a0a3650a3d05854225a54b85  IN   WolkServicesToken0 Ether0.000114285
0x1a60194fc714f01fa1a701d6600b0cebee2865faec577875f085dca0dbdca4b914 days 1 hr agoHitBTC_2  IN   WolkServicesToken0 Ether0.000188965
0x1de5489243f3a1b49148a77aa496a55fe760b2fc57f2cc4699483c7cbdce8c4315 days 2 hrs ago0x9222ba71f5f3f37de737a2347b091a75d6454a1c  IN   WolkServicesToken0 Ether0.000048219645
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
 Latest 25 Internal Txns, Click here to View More View All
ParentTxHash Block Age From To Value
0xae01bc864ed228ad11b1b78fc9cfe660b56d28a0d7d35796bfad3fa4e8206d0e4932963207 days 14 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0.01 Ether
0x9b8a1b0aa3d3e41462d0ebfee51c595737a52d570ecedfacf242ed862fe2a6114931496207 days 21 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0x34c7fc051eae78f8c37b82387a50a5458b8f7018212.729619468835183702 Ether
0xe9f1883b55da0d51ba52b4db2ce6ec62b8475334527b842f3cc0ff38efdda60f4909457211 days 20 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xf6b55acbbc49f4524aa48d19281a9a77c54de10f84 Ether
0x42e4150b3f236f84965430063b59410890a52b2db4e2944a735a49b71f84c1cb4909443211 days 20 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xf6b55acbbc49f4524aa48d19281a9a77c54de10f1 Ether
0x4eaaffe304eebd4532e08b5b0da735e1907e4ef0819fb33191e7c66a2cded75c4909261211 days 21 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0x5deac9106e060e11bdc1496422afcdd8bd63e3e2100 Ether
0xdf8aeec127073f08d5b15163f81642c97d3e406202d0684dc53a8f8f067dbca14909256211 days 21 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0x5deac9106e060e11bdc1496422afcdd8bd63e3e2100 Ether
0xa662e8448b7a4ea90beda4b1811daf4ca0c0bb565956c952cfdf738fe1c0b8544909250211 days 21 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0x5deac9106e060e11bdc1496422afcdd8bd63e3e2100 Ether
0x44f10ba6c6b2e3a5da59b82a1c06095d4534d66e203bf0034a72746dec4a2a654909244211 days 21 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0x5deac9106e060e11bdc1496422afcdd8bd63e3e2100 Ether
0x2997f1fa78e9ac28119473a5ca24c3fcf11762c31da81f7494b0fc6bd7d471434905391212 days 14 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xf6b55acbbc49f4524aa48d19281a9a77c54de10f3.44552771 Ether
0x5a0267f0fef868da7c37b219ee29bb00f0eecb8a884309eec6a8230c7cad16364904884212 days 16 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xf6b55acbbc49f4524aa48d19281a9a77c54de10f3.44 Ether
0xd7eb145045edeea51ea384e29639dad1711d08c9cffda79ddf5b82860374bda14899106213 days 17 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xb56d39b5e5f14b1b2e7b4548006110d6125e75e94.757450664989115001 Ether
0x067c2f6c1dad199abfba3e8565265cc8cf146192c615a5fe568fcbcba773e6364896811214 days 3 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xb56d39b5e5f14b1b2e7b4548006110d6125e75e94.750732213875174117 Ether
0x97561db719e54dfc2008492fdb3f426d06973539d10d8257680306bb0424340d4896123214 days 6 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xf6b55acbbc49f4524aa48d19281a9a77c54de10f2.5 Ether
0xbc0a25307b6912dcbc5e747b28790226e12fc92f899299807474db38420abbfe4895357214 days 10 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xfa6a28a4e1266b46af92ac1b4a29a05be2d5fb9a2.206302623504938284 Ether
0x5d83ff046d35ffe35175d11a3f6124d619a1bb2c5a70ff2ddac1d356986d70ce4894699214 days 13 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xf6b55acbbc49f4524aa48d19281a9a77c54de10f10 Ether
0xff9fffd8f96835a022a1020e0dab120ce6aa8cbcb0f521f12a8a7c71593345794893576214 days 18 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xfa6a28a4e1266b46af92ac1b4a29a05be2d5fb9a0.998486317988743887 Ether
0x6680f25937aee012e8ef34dd2a2db12adf43d8977e4c4f12d3a83819116e713b4889343215 days 13 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xb56d39b5e5f14b1b2e7b4548006110d6125e75e93.421530961843722646 Ether
0x5b5a9629b094c6700a0c825e0c3340b15dc20e6e341c0b79f14aae5db78ae42b4888061215 days 18 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0x5b12a097af318729848a204294446e17766e2fac19.20851959577136645 Ether
0xe2e2cc3aff26c5462ddfcbe4425d91fae78ebc504f1069acd39b3e46e88990f04888030215 days 18 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0x5b12a097af318729848a204294446e17766e2fac21.68787133783759598 Ether
0x10e17e8e66cc18a195d353e15587ec36a3aad2a2533fb7f046aee089bccf0cdd4887565215 days 21 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xb56d39b5e5f14b1b2e7b4548006110d6125e75e97.964390021233105109 Ether
0x375dd309eebe08853b1f9d54cd5313c4dd9b74ae92cbb68eb656c0ee6f3f0ce24887537215 days 21 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xb56d39b5e5f14b1b2e7b4548006110d6125e75e915.664837088530414059 Ether
0xab7c620f9f8a6f5810a1a0cef11a226a45c3bba3baedc450c8e341f6e9b8f9ce4887506215 days 21 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xb56d39b5e5f14b1b2e7b4548006110d6125e75e932.419604505379696458 Ether
0x7cfcfe82b1ff6dc56dcbe793d168e943ae4d02a9f33e5add6647d228cd374bec4885363216 days 6 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0.01 Ether
0x1a0490d679358dff60e47b3465a145403e78ec95fbb1e97e04a23b020b21c9884884931216 days 8 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xe9fe93e9532f0cd307f9a69913aedb5e92acaa153.333023228923659891 Ether
0x3b0e5a6d1903121f0efc36ff77d7eb4fb4d366af84c31d90ca30ebd05c1cd8aa4880971217 days 2 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0.01154 Ether
[ Download CSV Export  ] 
Warning: The compiled contract might be susceptible to ZeroFunctionSelector (very low-severity) Solidity compiler bugs.

Contract Source Code Verified (Exact match)
Contract Name: WolkExchange
Compiler Version: v0.4.17+commit.bdeb9e52
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

pragma solidity ^0.4.16;

// SafeMath Taken From FirstBlood
contract SafeMath {
    function safeMul(uint a, uint b) internal returns (uint) {
        uint c = a * b;
        assert(a == 0 || c / a == b);
        return c;
    }

    function safeDiv(uint a, uint b) internal returns (uint) {
        assert(b > 0);
        uint c = a / b;
        assert(a == b * c + a % b);
        return c;
    }

    function safeSub(uint a, uint b) internal returns (uint) {
        assert(b <= a);
        return a - b;
    }

    function safeAdd(uint a, uint b) internal returns (uint) {
        uint c = a + b;
        assert(c>=a && c>=b);
        return c;
    }
}

// Ownership
contract Owned {

    address public owner;
    address public newOwner;
    modifier onlyOwner { assert(msg.sender == owner); _; }

    event OwnerUpdate(address _prevOwner, address _newOwner);

    function Owned() {
        owner = msg.sender;
    }

    function transferOwnership(address _newOwner) public onlyOwner {
        require(_newOwner != owner);
        newOwner = _newOwner;
    }

    function acceptOwnership() public {
        require(msg.sender == newOwner);
        OwnerUpdate(owner, newOwner);
        owner = newOwner;
        newOwner = 0x0;
    }
}

// ERC20 Interface
contract ERC20 {
    function totalSupply() constant returns (uint _totalSupply);
    function balanceOf(address _owner) constant returns (uint balance);
    function transfer(address _to, uint _value) returns (bool success);
    function transferFrom(address _from, address _to, uint _value) returns (bool success);
    function approve(address _spender, uint _value) returns (bool success);
    function allowance(address _owner, address _spender) constant returns (uint remaining);
    event Transfer(address indexed _from, address indexed _to, uint _value);
    event Approval(address indexed _owner, address indexed _spender, uint _value);
}

// ERC20Token
contract ERC20Token is ERC20, SafeMath {

    mapping(address => uint256) balances;
    mapping (address => mapping (address => uint256)) allowed;
    uint256 public totalTokens; 
    uint256 public contributorTokens; 

    function transfer(address _to, uint256 _value) returns (bool success) {
        if (balances[msg.sender] >= _value && _value > 0) {
            balances[msg.sender] = safeSub(balances[msg.sender], _value);
            balances[_to] = safeAdd(balances[_to], _value);
            Transfer(msg.sender, _to, _value);
            return true;
        } else {
            return false;
        }
    }

    function transferFrom(address _from, address _to, uint256 _value) returns (bool success) {
        var _allowance = allowed[_from][msg.sender];
        if (balances[_from] >= _value && allowed[_from][msg.sender] >= _value && _value > 0) {
            balances[_to] = safeAdd(balances[_to], _value);
            balances[_from] = safeSub(balances[_from], _value);
            allowed[_from][msg.sender] = safeSub(_allowance, _value);
            Transfer(_from, _to, _value);
            return true;
        } else {
            return false;
        }
    }

    function totalSupply() constant returns (uint256) {
        return totalTokens;
    }

    function balanceOf(address _owner) constant returns (uint256 balance) {
        return balances[_owner];
    }

    function approve(address _spender, uint256 _value) returns (bool success) {
        require((_value == 0) || (allowed[msg.sender][_spender] == 0));
        allowed[msg.sender][_spender] = _value;
        Approval(msg.sender, _spender, _value);
        return true;
    }

    function allowance(address _owner, address _spender) constant returns (uint256 remaining) {
        return allowed[_owner][_spender];
    }

}

contract Wolk is ERC20Token, Owned {

    // TOKEN INFO
    string  public constant name = "WOLK TOKEN";
    string  public constant symbol = "WLK";
    uint256 public constant decimals = 18;

    // RESERVE
    uint256 public reserveBalance = 0; 
    uint8   public percentageETHReserve = 5;

    // CONTRACT OWNER
    address public wolkInc;

    // TOKEN GENERATION CONTROL
    bool    public allSaleCompleted = false;

    modifier isTransferable { require(allSaleCompleted); _; }

    // TOKEN GENERATION EVENTLOG
    event WolkCreated(address indexed _to, uint256 _tokenCreated);
    event WolkDestroyed(address indexed _from, uint256 _tokenDestroyed);
    event LogRefund(address indexed _to, uint256 _value);
}

contract WolkTGE is Wolk {

    // TOKEN GENERATION EVENT
    mapping (address => uint256) contribution;
    mapping (address => bool) whitelistContributor;
    
    uint256 public constant tokenGenerationMin =   1 * 10**4 * 10**decimals;
    uint256 public constant tokenGenerationMax = 175 * 10**5 * 10**decimals;
    uint256 public start_block;
    uint256 public end_time;
    bool    kycRequirement = true;

    // @param _startBlock
    // @param _endTime
    // @param _wolkinc - wolk inc tokens sent here
    // @return success
    // @dev Wolk Genesis Event [only accessible by Contract Owner]
    function wolkGenesis(uint256 _startBlock, uint256 _endTime, address _wolkinc) onlyOwner returns (bool success){
        require((totalTokens < 1) && (block.number <= _startBlock)); 
        start_block = _startBlock;
        end_time = _endTime;
        wolkInc = _wolkinc;
        return true;
    }
    
    // @param _participants
    // @return success
    function updateRequireKYC(bool _kycRequirement) onlyOwner returns (bool success) {
        kycRequirement = _kycRequirement;
        return true;
    } 
    
    // @param _participants
    // @return success
    function addParticipant(address[] _participants) onlyOwner returns (bool success) {
        for (uint cnt = 0; cnt < _participants.length; cnt++){           
            whitelistContributor[_participants[cnt]] = true;
        }
        return true;
    } 

    // @param _participants
    // @return success
    // @dev Revoke designated contributors [only accessible by current Contract Owner]
    function removeParticipant(address[] _participants) onlyOwner returns (bool success){         
        for (uint cnt = 0; cnt < _participants.length; cnt++){           
            whitelistContributor[_participants[cnt]] = false;
        }
        return true;
    }

    // @param _participant
    // @return status
    // @dev return status of given address
    function participantStatus(address _participant) constant returns (bool status) {
        return(whitelistContributor[_participant]);
    }    

    // @param _participant
    // @dev use tokenGenerationEvent to handle sale of WOLK
    function tokenGenerationEvent(address _participant) payable external {
        require( ( whitelistContributor[_participant] || whitelistContributor[msg.sender] || balances[_participant] > 0 || kycRequirement )  && !allSaleCompleted && ( block.timestamp <= end_time ) && msg.value > 0);
    
        uint256 rate = 1000;  // Default Rate
        rate = safeDiv( 175 * 10**5 * 10**decimals, safeAdd( 875 * 10**1 * 10**decimals, safeDiv( totalTokens, 2 * 10**3)) );
        if ( rate > 2000 ) rate = 2000;
        if ( rate < 500 ) rate = 500;
        require(block.number >= start_block) ;

        uint256 tokens = safeMul(msg.value, rate);
        uint256 checkedSupply = safeAdd(totalTokens, tokens);
        require(checkedSupply <= tokenGenerationMax);

        totalTokens = checkedSupply;
        contributorTokens = safeAdd(contributorTokens, tokens);
        
        Transfer(address(this), _participant, tokens);
        balances[_participant] = safeAdd(balances[_participant], tokens);
        contribution[_participant] = safeAdd(contribution[_participant], msg.value);
        WolkCreated(_participant, tokens); // logs token creation
    }

    function finalize() onlyOwner external {
        require(!allSaleCompleted);
        end_time = block.timestamp;

        // 50MM Wolk allocated to Wolk Inc for development
        uint256 wolkincTokens =  50 * 10**6 * 10**decimals;
        balances[wolkInc] = wolkincTokens;
        totalTokens = safeAdd(totalTokens, wolkincTokens);                 

        WolkCreated(wolkInc, wolkincTokens); // logs token creation 
        allSaleCompleted = true;
        reserveBalance = safeDiv(safeMul(contributorTokens, percentageETHReserve), 100000);
        var withdrawalBalance = safeSub(this.balance, reserveBalance);
        msg.sender.transfer(withdrawalBalance);
    }

    function refund() external {
        require((contribution[msg.sender] > 0) && (!allSaleCompleted) && (block.timestamp > end_time)  && (totalTokens < tokenGenerationMin));
        uint256 tokenBalance = balances[msg.sender];
        uint256 refundBalance = contribution[msg.sender];
        balances[msg.sender] = 0;
        contribution[msg.sender] = 0;
        totalTokens = safeSub(totalTokens, tokenBalance);
        WolkDestroyed(msg.sender, tokenBalance);
        LogRefund(msg.sender, refundBalance);
        msg.sender.transfer(refundBalance); 
    }

    function transferAnyERC20Token(address _tokenAddress, uint256 _amount) onlyOwner returns (bool success) {
        return ERC20(_tokenAddress).transfer(owner, _amount);
    }
}

// Taken from https://github.com/bancorprotocol/contracts/blob/master/solidity/contracts/BancorFormula.sol
contract IBancorFormula {
    function calculatePurchaseReturn(uint256 _supply, uint256 _reserveBalance, uint8 _reserveRatio, uint256 _depositAmount) public constant returns (uint256);
    function calculateSaleReturn(uint256 _supply, uint256 _reserveBalance, uint8 _reserveRatio, uint256 _sellAmount) public constant returns (uint256);
}

contract WolkExchange is  WolkTGE {
    address public exchangeFormula;
    bool    public isPurchasePossible = false;
    bool    public isSellPossible = false;

    modifier isPurchasable { require(isPurchasePossible && allSaleCompleted); _; }
    modifier isSellable { require(isSellPossible && allSaleCompleted); _; }
    
    // @param  _newExchangeformula
    // @return success
    // @dev Set the bancor formula to use -- only Wolk Inc can set this
    function setExchangeFormula(address _newExchangeformula) onlyOwner returns (bool success){
        require(sellWolkEstimate(10**decimals, _newExchangeformula) > 0);
        require(purchaseWolkEstimate(10**decimals, _newExchangeformula) > 0);
        isPurchasePossible = false;
        isSellPossible = false;
        exchangeFormula = _newExchangeformula;
        return true;
    }

    // @param  _newReserveRatio
    // @return success
    // @dev Set the reserve ratio in case of emergency -- only Wolk Inc can set this
    function updateReserveRatio(uint8 _newReserveRatio) onlyOwner returns (bool success) {
        require(allSaleCompleted && ( _newReserveRatio > 1 ) && ( _newReserveRatio < 20 ) );
        percentageETHReserve = _newReserveRatio;
        return true;
    }

    // @param  _isRunning
    // @return success
    // @dev updating isPurchasePossible -- only Wolk Inc can set this
    function updatePurchasePossible(bool _isRunning) onlyOwner returns (bool success){
        if (_isRunning){
            require(sellWolkEstimate(10**decimals, exchangeFormula) > 0);
            require(purchaseWolkEstimate(10**decimals, exchangeFormula) > 0);   
        }
        isPurchasePossible = _isRunning;
        return true;
    }

    // @param  _isRunning
    // @return success
    // @dev updating isSellPossible -- only Wolk Inc can set this
    function updateSellPossible(bool _isRunning) onlyOwner returns (bool success){
        if (_isRunning){
            require(sellWolkEstimate(10**decimals, exchangeFormula) > 0);
            require(purchaseWolkEstimate(10**decimals, exchangeFormula) > 0);   
        }
        isSellPossible = _isRunning;
        return true;
    }

    function sellWolkEstimate(uint256 _wolkAmountest, address _formula) internal returns(uint256) {
        uint256 ethReceivable =  IBancorFormula(_formula).calculateSaleReturn(contributorTokens, reserveBalance, percentageETHReserve, _wolkAmountest);
        return ethReceivable;
    }
    
    function purchaseWolkEstimate(uint256 _ethAmountest, address _formula) internal returns(uint256) {
        uint256 wolkReceivable = IBancorFormula(_formula).calculatePurchaseReturn(contributorTokens, reserveBalance, percentageETHReserve, _ethAmountest);
        return wolkReceivable;
    }
    
    // @param _wolkAmount
    // @return ethReceivable
    // @dev send Wolk into contract in exchange for eth, at an exchange rate based on the Bancor Protocol derivation and decrease totalSupply accordingly
    function sellWolk(uint256 _wolkAmount) isSellable() returns(uint256) {
        require((balances[msg.sender] >= _wolkAmount));
        uint256 ethReceivable = sellWolkEstimate(_wolkAmount,exchangeFormula);
        require(this.balance > ethReceivable);
        balances[msg.sender] = safeSub(balances[msg.sender], _wolkAmount);
        contributorTokens = safeSub(contributorTokens, _wolkAmount);
        totalTokens = safeSub(totalTokens, _wolkAmount);
        reserveBalance = safeSub(this.balance, ethReceivable);
        WolkDestroyed(msg.sender, _wolkAmount);
        Transfer(msg.sender, 0x00000000000000000000, _wolkAmount);
        msg.sender.transfer(ethReceivable);
        return ethReceivable;     
    }

    // @return wolkReceivable    
    // @dev send eth into contract in exchange for Wolk tokens, at an exchange rate based on the Bancor Protocol derivation and increase totalSupply accordingly
    function purchaseWolk(address _buyer) isPurchasable() payable returns(uint256){
        require(msg.value > 0);
        uint256 wolkReceivable = purchaseWolkEstimate(msg.value, exchangeFormula);
        require(wolkReceivable > 0);

        contributorTokens = safeAdd(contributorTokens, wolkReceivable);
        totalTokens = safeAdd(totalTokens, wolkReceivable);
        balances[_buyer] = safeAdd(balances[_buyer], wolkReceivable);
        reserveBalance = safeAdd(reserveBalance, msg.value);
        WolkCreated(_buyer, wolkReceivable);
        Transfer(address(this),_buyer,wolkReceivable);
        return wolkReceivable;
    }

    // @dev  fallback function for purchase
    // @note Automatically fallback to tokenGenerationEvent before sale is completed. After the token generation event, fallback to purchaseWolk. Liquidity exchange will be enabled through updateExchangeStatus  
    function () payable {
        require(msg.value > 0);
        if(!allSaleCompleted){
            this.tokenGenerationEvent.value(msg.value)(msg.sender);
        } else if ( block.timestamp >= end_time ){
            this.purchaseWolk.value(msg.value)(msg.sender);
        } else {
            revert();
        }
    }
}

    Contract ABI  
[{"constant":false,"inputs":[{"name":"_wolkAmount","type":"uint256"}],"name":"sellWolk","outputs":[{"name":"","type":"uint256"}],"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":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"end_time","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":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":false,"inputs":[{"name":"_newExchangeformula","type":"address"}],"name":"setExchangeFormula","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"exchangeFormula","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_buyer","type":"address"}],"name":"purchaseWolk","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"isSellPossible","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"finalize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"refund","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_kycRequirement","type":"bool"}],"name":"updateRequireKYC","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"tokenGenerationMin","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalTokens","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isPurchasePossible","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"percentageETHReserve","outputs":[{"name":"","type":"uint8"}],"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":"_startBlock","type":"uint256"},{"name":"_endTime","type":"uint256"},{"name":"_wolkinc","type":"address"}],"name":"wolkGenesis","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"contributorTokens","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_participant","type":"address"}],"name":"participantStatus","outputs":[{"name":"status","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reserveBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_participants","type":"address[]"}],"name":"addParticipant","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_isRunning","type":"bool"}],"name":"updateSellPossible","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"tokenGenerationMax","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"start_block","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_tokenAddress","type":"address"},{"name":"_amount","type":"uint256"}],"name":"transferAnyERC20Token","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"allSaleCompleted","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"wolkInc","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_isRunning","type":"bool"}],"name":"updatePurchasePossible","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newReserveRatio","type":"uint8"}],"name":"updateReserveRatio","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_participants","type":"address[]"}],"name":"removeParticipant","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_participant","type":"address"}],"name":"tokenGenerationEvent","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_tokenCreated","type":"uint256"}],"name":"WolkCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":false,"name":"_tokenDestroyed","type":"uint256"}],"name":"WolkDestroyed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"LogRefund","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_prevOwner","type":"address"},{"indexed":false,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"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":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"}]

  Contract Creation Code Switch To Opcodes View
606060405260006006556007805460a860020a60ff021960ff1991821660051716909155600c805460a860020a61ffff0219921660011791909116905560048054600160a060020a033316600160a060020a0319909116179055611c0f806100686000396000f300606060405236156101dc5763ffffffff60e060020a600035041662310e1681146102ed57806306fdde0314610315578063095ea7b31461039f57806316243356146103d557806318160ddd146103e857806323b872dd146103fb5780632659d8ef146104235780632f7a407b14610442578063313ce567146104715780633d8c9b8c14610484578063442d0927146104985780634bb278f3146104ab578063590e1ae3146104be57806362ac6115146104d15780636712e0be146104e957806370a08231146104fc57806379ba50971461051b5780637e1c0c091461052e578063835c638614610541578063847dc0a7146105545780638da5cb5b1461057d578063917d2be214610590578063936b603d146105b557806395d89b41146105c85780639c912a62146105db578063a10954fe146105fa578063a166b4b11461060d578063a9059cbb1461065c578063aad935af1461067e578063b57e6ea114610696578063b87fb3db146106a9578063d4ee1d90146106bc578063dc39d06d146106cf578063dd62ed3e146106f1578063de17910814610716578063e1d3097914610729578063e2542f031461073c578063e469185a14610754578063e814c9411461076d578063f2fde38b146107bc578063fa6b129d146107db575b600034116101e957600080fd5b60075460a860020a900460ff1615156102645730600160a060020a031663fa6b129d343360405160e060020a63ffffffff8516028152600160a060020a0390911660048201526024016000604051808303818588803b151561024a57600080fd5b6125ee5a03f1151561025b57600080fd5b505050506102eb565b600b5442106102e65730600160a060020a0316633d8c9b8c343360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390911660048201526024016020604051808303818588803b15156102c457600080fd5b6125ee5a03f115156102d557600080fd5b5050505060405180519050506102eb565b600080fd5b005b34156102f857600080fd5b6103036004356107ef565b60405190815260200160405180910390f35b341561032057600080fd5b6103286109a3565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561036457808201518382015260200161034c565b50505050905090810190601f1680156103915780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156103aa57600080fd5b6103c1600160a060020a03600435166024356109da565b604051901515815260200160405180910390f35b34156103e057600080fd5b610303610a80565b34156103f357600080fd5b610303610a86565b341561040657600080fd5b6103c1600160a060020a0360043581169060243516604435610a8c565b341561042e57600080fd5b6103c1600160a060020a0360043516610be3565b341561044d57600080fd5b610455610c73565b604051600160a060020a03909116815260200160405180910390f35b341561047c57600080fd5b610303610c87565b610303600160a060020a0360043516610c8c565b34156104a357600080fd5b6103c1610dd9565b34156104b657600080fd5b6102eb610dfc565b34156104c957600080fd5b6102eb610f4f565b34156104dc57600080fd5b6103c160043515156110a0565b34156104f457600080fd5b6103036110d2565b341561050757600080fd5b610303600160a060020a03600435166110e0565b341561052657600080fd5b6102eb6110fb565b341561053957600080fd5b6103036111a2565b341561054c57600080fd5b6103c16111a8565b341561055f57600080fd5b6105676111b8565b60405160ff909116815260200160405180910390f35b341561058857600080fd5b6104556111c1565b341561059b57600080fd5b6103c1600435602435600160a060020a03604435166111d0565b34156105c057600080fd5b61030361124b565b34156105d357600080fd5b610328611251565b34156105e657600080fd5b6103c1600160a060020a0360043516611288565b341561060557600080fd5b6103036112a6565b341561061857600080fd5b6103c160046024813581810190830135806020818102016040519081016040528093929190818152602001838360200280828437509496506112ac95505050505050565b341561066757600080fd5b6103c1600160a060020a036004351660243561132b565b341561068957600080fd5b6103c16004351515611418565b34156106a157600080fd5b6103036114e2565b34156106b457600080fd5b6103036114f1565b34156106c757600080fd5b6104556114f7565b34156106da57600080fd5b6103c1600160a060020a0360043516602435611506565b34156106fc57600080fd5b610303600160a060020a03600435811690602435166115a5565b341561072157600080fd5b6103c16115d0565b341561073457600080fd5b6104556115e0565b341561074757600080fd5b6103c160043515156115f4565b341561075f57600080fd5b6103c160ff600435166116aa565b341561077857600080fd5b6103c1600460248135818101908301358060208181020160405190810160405280939291908181526020018383602002808284375094965061171495505050505050565b34156107c757600080fd5b6102eb600160a060020a036004351661178a565b6102eb600160a060020a03600435166117ec565b600c546000908190760100000000000000000000000000000000000000000000900460ff168015610829575060075460a860020a900460ff165b151561083457600080fd5b600160a060020a0333166000908152602081905260409020548390101561085a57600080fd5b600c546108769084906101009004600160a060020a0316611a26565b9050600160a060020a0330163181901161088f57600080fd5b600160a060020a0333166000908152602081905260409020546108b29084611ac0565b600160a060020a0333166000908152602081905260409020556003546108d89084611ac0565b6003556002546108e89084611ac0565b6002556108ff600160a060020a0330163182611ac0565b600655600160a060020a0333167ff505eb6e610340eed3eea0048f8ec258cda0927f73be2d293288fde9a546f1ab8460405190815260200160405180910390a2600033600160a060020a0316600080516020611bc48339815191528560405190815260200160405180910390a3600160a060020a03331681156108fc0282604051600060405180830381858888f19350505050151561099d57600080fd5b92915050565b60408051908101604052600a81527f574f4c4b20544f4b454e00000000000000000000000000000000000000000000602082015281565b6000811580610a0c5750600160a060020a03338116600090815260016020908152604080832093871683529290522054155b1515610a1757600080fd5b600160a060020a03338116600081815260016020908152604080832094881680845294909152908190208590557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b600b5481565b60025490565b600160a060020a0380841660008181526001602090815260408083203390951683529381528382205492825281905291822054839010801590610af65750600160a060020a0380861660009081526001602090815260408083203390941683529290522054839010155b8015610b025750600083115b15610bd657600160a060020a038416600090815260208190526040902054610b2a9084611ad2565b600160a060020a038086166000908152602081905260408082209390935590871681522054610b599084611ac0565b600160a060020a038616600090815260208190526040902055610b7c8184611ac0565b600160a060020a0380871660008181526001602090815260408083203386168452909152908190209390935590861691600080516020611bc48339815191529086905190815260200160405180910390a360019150610bdb565b600091505b509392505050565b60045460009033600160a060020a03908116911614610bfe57fe5b6000610c12670de0b6b3a764000084611a26565b11610c1c57600080fd5b6000610c30670de0b6b3a764000084611af6565b11610c3a57600080fd5b50600c8054600160a060020a0383166101000276ffffffffffffffffffffffffffffffffffffffffffff00199091161790556001919050565b600c546101009004600160a060020a031681565b601281565b600c54600090819060a860020a900460ff168015610cb3575060075460a860020a900460ff165b1515610cbe57600080fd5b60003411610ccb57600080fd5b600c54610ce79034906101009004600160a060020a0316611af6565b905060008111610cf657600080fd5b610d0260035482611ad2565b600355600254610d129082611ad2565b600255600160a060020a038316600090815260208190526040902054610d389082611ad2565b600160a060020a038416600090815260208190526040902055600654610d5e9034611ad2565b600655600160a060020a0383167f7ff6ea1c893a974b2f363e8f8e474a1b52958080d1fffe0d085c286de30035d28260405190815260200160405180910390a282600160a060020a031630600160a060020a0316600080516020611bc48339815191528360405190815260200160405180910390a392915050565b600c54760100000000000000000000000000000000000000000000900460ff1681565b600454600090819033600160a060020a03908116911614610e1957fe5b60075460a860020a900460ff1615610e3057600080fd5b42600b556007546101009004600160a060020a031660009081526020819052604090206a295be96e6406697200000090819055600254909250610e739083611ad2565b6002556007546101009004600160a060020a03167f7ff6ea1c893a974b2f363e8f8e474a1b52958080d1fffe0d085c286de30035d28360405190815260200160405180910390a26007805475ff000000000000000000000000000000000000000000191660a860020a1790819055600354610efe91610ef5919060ff16611b6e565b620186a0611b8f565b6006819055610f1890600160a060020a0330163190611ac0565b9050600160a060020a03331681156108fc0282604051600060405180830381858888f193505050501515610f4b57600080fd5b5050565b600160a060020a03331660009081526008602052604081205481908190118015610f83575060075460a860020a900460ff16155b8015610f905750600b5442115b8015610fa8575060025469021e19e0c9bab240000090105b1515610fb357600080fd5b505033600160a060020a03166000908152602081815260408083208054600890935290832080549184905592909255600254909190610ff29083611ac0565b600255600160a060020a0333167ff505eb6e610340eed3eea0048f8ec258cda0927f73be2d293288fde9a546f1ab8360405190815260200160405180910390a233600160a060020a03167fb6c0eca8138e097d71e2dd31e19a1266487f0553f170b7260ffe68bcbe9ff8a78260405190815260200160405180910390a2600160a060020a03331681156108fc0282604051600060405180830381858888f193505050501515610f4b57600080fd5b60045460009033600160a060020a039081169116146110bb57fe5b50600c805460ff1916911515919091179055600190565b69021e19e0c9bab240000081565b600160a060020a031660009081526020819052604090205490565b60055433600160a060020a0390811691161461111657600080fd5b6004546005547f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91600160a060020a039081169116604051600160a060020a039283168152911660208201526040908101905180910390a1600580546004805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b60025481565b600c5460a860020a900460ff1681565b60075460ff1681565b600454600160a060020a031681565b60045460009033600160a060020a039081169116146111eb57fe5b60016002541080156111fd5750834311155b151561120857600080fd5b50600a839055600b82905560078054600160a060020a0383166101000274ffffffffffffffffffffffffffffffffffffffff001990911617905560019392505050565b60035481565b60408051908101604052600381527f574c4b0000000000000000000000000000000000000000000000000000000000602082015281565b600160a060020a031660009081526009602052604090205460ff1690565b60065481565b600454600090819033600160a060020a039081169116146112c957fe5b5060005b8251811015611322576001600960008584815181106112e857fe5b90602001906020020151600160a060020a031681526020810191909152604001600020805460ff19169115159190911790556001016112cd565b50600192915050565b600160a060020a0333166000908152602081905260408120548290108015906113545750600082115b1561141057600160a060020a03331660009081526020819052604090205461137c9083611ac0565b600160a060020a0333811660009081526020819052604080822093909355908516815220546113ab9083611ad2565b60008085600160a060020a0316600160a060020a031681526020019081526020016000208190555082600160a060020a031633600160a060020a0316600080516020611bc48339815191528460405190815260200160405180910390a350600161099d565b50600061099d565b60045460009033600160a060020a0390811691161461143357fe5b811561149b57600c5460009061146090670de0b6b3a7640000906101009004600160a060020a0316611a26565b1161146a57600080fd5b600c5460009061149190670de0b6b3a7640000906101009004600160a060020a0316611af6565b1161149b57600080fd5b50600c80548215157601000000000000000000000000000000000000000000000276ff00000000000000000000000000000000000000000000199091161790556001919050565b6a0e79c4e6a3023e8180000081565b600a5481565b600554600160a060020a031681565b60045460009033600160a060020a0390811691161461152157fe5b600454600160a060020a038085169163a9059cbb91168460006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561158457600080fd5b6102c65a03f1151561159557600080fd5b5050506040518051949350505050565b600160a060020a03918216600090815260016020908152604080832093909416825291909152205490565b60075460a860020a900460ff1681565b6007546101009004600160a060020a031681565b60045460009033600160a060020a0390811691161461160f57fe5b811561167757600c5460009061163c90670de0b6b3a7640000906101009004600160a060020a0316611a26565b1161164657600080fd5b600c5460009061166d90670de0b6b3a7640000906101009004600160a060020a0316611af6565b1161167757600080fd5b50600c805482151560a860020a0275ff000000000000000000000000000000000000000000199091161790556001919050565b60045460009033600160a060020a039081169116146116c557fe5b60075460a860020a900460ff1680156116e1575060018260ff16115b80156116f0575060148260ff16105b15156116fb57600080fd5b506007805460ff831660ff199091161790556001919050565b600454600090819033600160a060020a0390811691161461173157fe5b5060005b82518110156113225760006009600085848151811061175057fe5b90602001906020020151600160a060020a031681526020810191909152604001600020805460ff1916911515919091179055600101611735565b60045433600160a060020a039081169116146117a257fe5b600454600160a060020a03828116911614156117bd57600080fd5b6005805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a0381166000908152600960205260408120548190819060ff168061182f5750600160a060020a03331660009081526009602052604090205460ff165b806118505750600160a060020a038416600090815260208190526040812054115b8061185d5750600c5460ff165b8015611873575060075460a860020a900460ff16155b80156118815750600b544211155b801561188d5750600034115b151561189857600080fd5b6002546103e893506118d7906a0e79c4e6a3023e81800000906118d2906901da56a4b0835bf80000906118cd906107d0611b8f565b611ad2565b611b8f565b92506107d08311156118e9576107d092505b6101f48310156118f9576101f492505b600a5443101561190857600080fd5b6119123484611b6e565b915061192060025483611ad2565b90506a0e79c4e6a3023e8180000081111561193a57600080fd5b600281905560035461194c9083611ad2565b600355600160a060020a03808516903016600080516020611bc48339815191528460405190815260200160405180910390a3600160a060020a0384166000908152602081905260409020546119a19083611ad2565b600160a060020a038516600090815260208181526040808320939093556008905220546119ce9034611ad2565b600160a060020a0385166000818152600860205260409081902092909255907f7ff6ea1c893a974b2f363e8f8e474a1b52958080d1fffe0d085c286de30035d29084905190815260200160405180910390a250505050565b6003546006546007546000928392600160a060020a0386169263f7a4c45c92919060ff1688866040516020015260405160e060020a63ffffffff87160281526004810194909452602484019290925260ff1660448301526064820152608401602060405180830381600087803b1515611a9e57600080fd5b6102c65a03f11515611aaf57600080fd5b505050604051805195945050505050565b600082821115611acc57fe5b50900390565b6000828201838110801590611ae75750828110155b1515611aef57fe5b9392505050565b6003546006546007546000928392600160a060020a0386169263949dfa6392919060ff1688866040516020015260405160e060020a63ffffffff87160281526004810194909452602484019290925260ff1660448301526064820152608401602060405180830381600087803b1515611a9e57600080fd5b6000828202831580611ae75750828482811515611b8757fe5b0414611aef57fe5b600080808311611b9b57fe5b8284811515611ba657fe5b0490508284811515611bb457fe5b068184020184141515611aef57fe00ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a723058209aaada50c1671511e7d4a6f65fcfba9395b602433a033c0d707bfb0dbd61a6500029

   Swarm Source:
bzzr://9aaada50c1671511e7d4a6f65fcfba9395b602433a033c0d707bfb0dbd61a650

 

View All
Block Age txn Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward
Make sure to use the "downvote" button for any spammy posts, and the "upvote" for interesting conversations.