Sponsored Link:   $30 Mn 5 star ICO - TrakInvest building crypto AI engine. Buy TRAK token now here.
 Latest 25 txns from a total Of 1806 transactions
View All

TxHash Age From To Value [TxFee]
0xf174237c2ad60303c8597ee5c34f3f31a8d368be99fa439913d63671b13a014a1 day 9 hrs ago0xca74c473a201e5dddfb2fa2b9c4f84808cc3b992  IN   WolkServicesToken0 Ether0.000599235
0x0632e400899ef978e4ec80b05108aa78965bbac7cf52c0f1cf804d7141f10fca1 day 13 hrs ago0xecc576bc071f11ebb81aee11b5c50c8412f658fa  IN   WolkServicesToken0 Ether0.00053179
0x773f608944f630e2c289dc0926688d5e1da1137588e3679b0f1d2383e8de414d3 days 22 hrs ago0x410cc3e93160e9c0c15d98c0200bdf70a967913b  IN   WolkServicesToken0 Ether0.00030388
0xcdd4e7345d81e4241f048e4d2cebcf3eba0c8ee519aa96e15e2a7a189726878b5 days 15 hrs ago0xce62fb3a3947d85beeb03aac3b079d8865dcb9a9  IN   WolkServicesToken0 Ether0.000378492313
0xc6979ccd8c68df5f0043a3d501f443c37d8686f30051c5b8e61f2c25505ca6325 days 21 hrs ago0x60739ec82729c3cae0f4ad0e0511ca231e64200c  IN   WolkServicesToken0 Ether0.001005499
0xf75d006381b3c9834b605b2d3e802d4e16841b4f8261249aca07800e57a068df6 days 32 mins ago0x65e47cd21acb32de2fb7209836e54d015eb90bff  IN   WolkServicesToken0 Ether0.0003444987
0x12d594482f940478c8c6eccea5221eaa9206a72799ba8409f12136fdf419db476 days 20 hrs ago0x2ecfa2bc25c3001fd4f32c67b30543b51b92efee  IN   WolkServicesToken0 Ether0.000582131
0x6a7290e08c90230e5c27e2e3af9b1889d4d8df71aca090d3fc08717c2baf41c16 days 23 hrs ago0xecc576bc071f11ebb81aee11b5c50c8412f658fa  IN   WolkServicesToken0 Ether0.000569775
0x2a03a92d61ea50ff5c2751a38f0f3f3cef88472869a7025b437203677b66aba97 days 22 hrs ago0xbadffcb79efe57e954fd79621b29b0c2dc170171  IN   WolkServicesToken0 Ether0.00055314
0x1f14acba3a6e853b46ac1d990b73ff3a864aad92a7a6297d642831b4d26237887 days 22 hrs agoHitBTC_2  IN   WolkServicesToken0 Ether0.000580723
0xf5c3469578ac172af561d999d9b73a2481f96ebbdaf4c1e2d8c645bd0ce555398 days 19 hrs ago0xecc576bc071f11ebb81aee11b5c50c8412f658fa  IN   WolkServicesToken0 Ether0.00052921
0xf29c58312b5d98a32a3442a3730fc9624493af997a44952029fe780e28e6cd068 days 20 hrs ago0xb092a5abafea74f2d2a91ad1e8aad0086013d79a  IN   WolkServicesToken0 Ether0.000340137
0xea3c2969eee6c19b5477dac45cc1e4464d690ac6293edaaab4a8d7510063213f8 days 20 hrs ago0xb092a5abafea74f2d2a91ad1e8aad0086013d79a  IN   WolkServicesToken0 Ether0.000475137
0xa0fb6ffda7eec2537ec87bcb9925e8eaaaac795563f988c391f962a842fda7ee9 days 3 hrs ago0xd3a109b12e6df7d892b753e05b9ebe64f1c98204  IN   WolkServicesToken0.00001 Ether0.000164192
0x80d33b4064c4e81071d92583c07d2a7227b70bdf7b64c78214dcc020e70e3a0810 days 18 hrs ago0xdc5984a2673c46b68036076026810ffdffb695b8  IN   WolkServicesToken0 Ether0.001549513
0xaa1060b3c223074100263c1d7dfdca4ce4304462dc0940e7466efbc470f71bb512 days 4 hrs ago0x44efef137b90893a3f268b4788acb5541f62f089  IN   WolkServicesToken0 Ether0.001552137
0xf1fbe45ddb55128f6b13be8ebef3f9b78d461456fe37fd485987e989a1a249bf12 days 5 hrs ago0x44efef137b90893a3f268b4788acb5541f62f089  IN   WolkServicesToken0 Ether0.001549513
0x8ef77d2e1d76272939ec5634b1be8f5e6072ae4389c528c616bef58c216c103212 days 5 hrs ago0x44efef137b90893a3f268b4788acb5541f62f089  IN   WolkServicesToken0 Ether0.001552137
0x5f43cb6aa2de4eb487aac8ee1d6be1f0eff65ff19b6eba0a083922c7ad34e55d12 days 5 hrs ago0x44efef137b90893a3f268b4788acb5541f62f089  IN   WolkServicesToken0 Ether0.001552137
0xad668b2e24ed020513302e7e705e70bf87dfb762a782e52f68790eb926f7ae2512 days 5 hrs ago0x44efef137b90893a3f268b4788acb5541f62f089  IN   WolkServicesToken0 Ether0.001552137
0x865696def0085729fa90d778166d68dba8f27007a5052a9e8751803094c53e7012 days 5 hrs ago0x44efef137b90893a3f268b4788acb5541f62f089  IN   WolkServicesToken0 Ether0.001552137
0x6647ae0183892b08c99d6eef4bd34378ca02288d126544ae38f470fb9fd1552712 days 5 hrs ago0x44efef137b90893a3f268b4788acb5541f62f089  IN   WolkServicesToken0 Ether0.001552137
0xac124bfac68b460b6a8de831a7cf88ff8c78c29798b900901ff57a56f78f37e512 days 5 hrs ago0x44efef137b90893a3f268b4788acb5541f62f089  IN   WolkServicesToken0 Ether0.001552137
0xee6c6562bb4a9bd1eaefadf250a810e9f3f66cd7315e2bc4f6d7909694da1fa712 days 5 hrs ago0x34c7fc051eae78f8c37b82387a50a5458b8f7018  IN   WolkServicesToken0 Ether0.001552137
0xa640b90bf54130c54e7eb76909c20d0400fbd37f0dc03a26e43c016b83bbba9b12 days 5 hrs ago0x34c7fc051eae78f8c37b82387a50a5458b8f7018  IN   WolkServicesToken0 Ether0.001552137
[ 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
0xae01bc864ed228ad11b1b78fc9cfe660b56d28a0d7d35796bfad3fa4e8206d0e4932963125 days 20 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0.01 Ether
0x9b8a1b0aa3d3e41462d0ebfee51c595737a52d570ecedfacf242ed862fe2a6114931496126 days 2 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0x34c7fc051eae78f8c37b82387a50a5458b8f7018212.729619468835183702 Ether
0xe9f1883b55da0d51ba52b4db2ce6ec62b8475334527b842f3cc0ff38efdda60f4909457130 days 2 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xf6b55acbbc49f4524aa48d19281a9a77c54de10f84 Ether
0x42e4150b3f236f84965430063b59410890a52b2db4e2944a735a49b71f84c1cb4909443130 days 2 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xf6b55acbbc49f4524aa48d19281a9a77c54de10f1 Ether
0x4eaaffe304eebd4532e08b5b0da735e1907e4ef0819fb33191e7c66a2cded75c4909261130 days 3 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0x5deac9106e060e11bdc1496422afcdd8bd63e3e2100 Ether
0xdf8aeec127073f08d5b15163f81642c97d3e406202d0684dc53a8f8f067dbca14909256130 days 3 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0x5deac9106e060e11bdc1496422afcdd8bd63e3e2100 Ether
0xa662e8448b7a4ea90beda4b1811daf4ca0c0bb565956c952cfdf738fe1c0b8544909250130 days 3 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0x5deac9106e060e11bdc1496422afcdd8bd63e3e2100 Ether
0x44f10ba6c6b2e3a5da59b82a1c06095d4534d66e203bf0034a72746dec4a2a654909244130 days 3 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0x5deac9106e060e11bdc1496422afcdd8bd63e3e2100 Ether
0x2997f1fa78e9ac28119473a5ca24c3fcf11762c31da81f7494b0fc6bd7d471434905391130 days 19 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xf6b55acbbc49f4524aa48d19281a9a77c54de10f3.44552771 Ether
0x5a0267f0fef868da7c37b219ee29bb00f0eecb8a884309eec6a8230c7cad16364904884130 days 22 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xf6b55acbbc49f4524aa48d19281a9a77c54de10f3.44 Ether
0xd7eb145045edeea51ea384e29639dad1711d08c9cffda79ddf5b82860374bda14899106131 days 23 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xb56d39b5e5f14b1b2e7b4548006110d6125e75e94.757450664989115001 Ether
0x067c2f6c1dad199abfba3e8565265cc8cf146192c615a5fe568fcbcba773e6364896811132 days 9 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xb56d39b5e5f14b1b2e7b4548006110d6125e75e94.750732213875174117 Ether
0x97561db719e54dfc2008492fdb3f426d06973539d10d8257680306bb0424340d4896123132 days 12 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xf6b55acbbc49f4524aa48d19281a9a77c54de10f2.5 Ether
0xbc0a25307b6912dcbc5e747b28790226e12fc92f899299807474db38420abbfe4895357132 days 16 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xfa6a28a4e1266b46af92ac1b4a29a05be2d5fb9a2.206302623504938284 Ether
0x5d83ff046d35ffe35175d11a3f6124d619a1bb2c5a70ff2ddac1d356986d70ce4894699132 days 19 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xf6b55acbbc49f4524aa48d19281a9a77c54de10f10 Ether
0xff9fffd8f96835a022a1020e0dab120ce6aa8cbcb0f521f12a8a7c71593345794893576133 days 10 mins ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xfa6a28a4e1266b46af92ac1b4a29a05be2d5fb9a0.998486317988743887 Ether
0x6680f25937aee012e8ef34dd2a2db12adf43d8977e4c4f12d3a83819116e713b4889343133 days 18 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xb56d39b5e5f14b1b2e7b4548006110d6125e75e93.421530961843722646 Ether
0x5b5a9629b094c6700a0c825e0c3340b15dc20e6e341c0b79f14aae5db78ae42b4888061134 days 35 mins ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0x5b12a097af318729848a204294446e17766e2fac19.20851959577136645 Ether
0xe2e2cc3aff26c5462ddfcbe4425d91fae78ebc504f1069acd39b3e46e88990f04888030134 days 40 mins ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0x5b12a097af318729848a204294446e17766e2fac21.68787133783759598 Ether
0x10e17e8e66cc18a195d353e15587ec36a3aad2a2533fb7f046aee089bccf0cdd4887565134 days 2 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xb56d39b5e5f14b1b2e7b4548006110d6125e75e97.964390021233105109 Ether
0x375dd309eebe08853b1f9d54cd5313c4dd9b74ae92cbb68eb656c0ee6f3f0ce24887537134 days 2 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xb56d39b5e5f14b1b2e7b4548006110d6125e75e915.664837088530414059 Ether
0xab7c620f9f8a6f5810a1a0cef11a226a45c3bba3baedc450c8e341f6e9b8f9ce4887506134 days 3 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xb56d39b5e5f14b1b2e7b4548006110d6125e75e932.419604505379696458 Ether
0x7cfcfe82b1ff6dc56dcbe793d168e943ae4d02a9f33e5add6647d228cd374bec4885363134 days 12 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0.01 Ether
0x1a0490d679358dff60e47b3465a145403e78ec95fbb1e97e04a23b020b21c9884884931134 days 14 hrs ago0xf6b55acbbc49f4524aa48d19281a9a77c54de10f0xe9fe93e9532f0cd307f9a69913aedb5e92acaa153.333023228923659891 Ether
0x3b0e5a6d1903121f0efc36ff77d7eb4fb4d366af84c31d90ca30ebd05c1cd8aa4880971135 days 8 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.