Sponsored Link:   DocTailor - Legal Self Customisable Smart Contract Platform - Bridging the Gap Between Business & Cryptocurrency Holders - Join Now!
  Latest 25 txns from a total Of 21138 transactions View All

TxHash Age From To Value [TxFee]
0xdb5066baf11a3aee53556539d862df40014dd410b415e0def6bc5611d257f72520 mins ago0x51ec49876fd0f9e4bf72998fb24cd82e05802fbb  IN   PoSToken0 Ether0.00014295
0x72c0682dcfb6c39c96680a51b830cc61f4b0a1d4823406cd53b8ef7aa2697cd71 hr 59 mins ago0x96e8f90973eaa90f045fc618c98bcea8df97cc82  IN   PoSToken0 Ether0.001074045
0x3b11baf3a0b74e06dc0649dd132038c3f5412c4d0496df0099746ee45db51dca13 hrs 53 mins ago0x6570010aa3d9c456c1e5a9b3323914f902911ad8  IN   PoSToken0 Ether0.000142438
0xc1fd4a5025f7b00e215872ebf38d061c8b40038fb721e78add37cf809f1b406815 hrs 23 mins ago0x8634d0e19e6ee180b9040e4814e1066827716ecb  IN   PoSToken0 Ether0.000127772
0x642061dffe1e63696173a5847984d2466a010c3ebe10b06b8d3176287f950d2515 hrs 28 mins ago0x808c367cb8e7c6f90a05cd73567ad44aae929e53  IN   PoSToken0 Ether0.000071603
0xb22794c094c1e90a8355800261e2336beb516f9e0cb456d5cc64c7b00ddb8c7117 hrs 36 mins ago0xb0836ca0cf5d5a14c3afc280ec2ab5e12b0f8c8f  IN   PoSToken0 Ether0.00069185
0x293ca6d5dea68a7f6be24a9b6d87e87429fdd71955df63c7ae50cf6427e2ea6319 hrs 37 mins ago0x267769574fc06a9205665fe45eb8d9dc71069dd9  IN   PoSToken0 Ether0.000071219
0x87b491f746292633fc8aa4ef4eecc1ad29a5b5483b2329afa3511db0d63402b620 hrs 20 mins ago0x47045d1ee924ad6ff890ce8b52d6c1f08ad42235  IN   PoSToken0 Ether0.000432005
0xb9f7727b4cb3942bef807858dfa670121538f364c262f60b33456ec7d6f0b3811 day 51 mins ago0x0f21512a43ee5e35727284f129fba80552a2e598  IN   PoSToken0 Ether0.00072349
0xfa89aeb2f99631d91a93ee9c3e28d45c7072476481a72514295ed0d58b9082331 day 1 hr ago0x73abeb9313ecdcb3073adcf4a9d8f9eec631ebe1  IN   PoSToken0 Ether0.000818792
0xddb27fddcaf0b6eb026370bd0d0ddebe241ebc8843c926f45308c286379f3d041 day 1 hr ago0x8b5dd34ed44329a2bbc6e15257024e092c9a18e0  IN   PoSToken0 Ether0.000535941
0x6f1b5b4446358424f0192135e3aed00ee4202244dc5e8bb8add5f042d9d39f561 day 1 hr ago0x8b5dd34ed44329a2bbc6e15257024e092c9a18e0  IN   PoSToken0 Ether0.001503663
0x92faabf7871c3f1e66761356a8785589d84e065b697f807fe801d0276df889a51 day 9 hrs ago0x2a5fe836fbf102cedf93298b5c617dc72455f579  IN   PoSToken0 Ether0.00068772
0xea38628c444e4d3bb7ef2f7afd839abdffdea27de6b277ba5aa6ca0c48493bba1 day 9 hrs ago0x2a8556a7bae4644c1dcaa824ba00bc21ebd51a22  IN   PoSToken0 Ether0.000194054
0x34e33a093948152ba1a05132a098cd0ff1d8203f162e605aedc1b472f2c469fc1 day 10 hrs ago0x6e3d94fef0964b7110c69b50950860c0da26868f  IN   PoSToken0 Ether0.000142438
0x1b870fabb9df6c5c4f45600cec14fa3ed993502151350d44d494570587bab93b1 day 10 hrs ago0x2a8556a7bae4644c1dcaa824ba00bc21ebd51a22  IN   PoSToken0 Ether0.000223926
0xd68e2bfc115e61ebb198ccece3b3522481a7c7837d9395509a801099ec5c595a1 day 12 hrs agocoinexchange.io  IN   PoSToken0 Ether0.0009
0x43ce885ab59ca7c5ce83c1bc875915b3f9c8fff4064a83e2cde80e2d8ad6c1b51 day 13 hrs ago0x4b560c2be66c6206d0e10a5f8636f418613238d2  IN   PoSToken0 Ether0.000284876
0xc564d365e08431174295a487f2f698b6ed6e9db6fcd7a2b0a12239be886b58451 day 13 hrs agocoinexchange.io  IN   PoSToken0 Ether0.0012
0x65bd57647a188b8983cc9ff71404d995c3f64541a912ff4324adf080f13626781 day 13 hrs ago0x8bb0dcc74bcc82fa41478cff326bae173b329e6e  IN   PoSToken0 Ether0.00022431
0xe5c452584d1638dee1ff9c67577feb2cf548daa1366298cd2e845e06399561091 day 18 hrs ago0x0e896d3903847cf9c2f9b21388ced35253d83ac1  IN   PoSToken0 Ether0.00130524
0x5cae44bf1976d48c65c4d89bd87415b1501954afb26901e0b93b31f2218761bc1 day 18 hrs ago0xf5a5bdf579cda45810b44db0742b2ff58dc05c75  IN   PoSToken0 Ether0.00006898
0x99c1542004540746913e9d773f15ccf5e0c2ebbc23b72ac3e3ea3ca15179870e1 day 18 hrs ago0xcdc8e8314cffe41275380a32befa0b15114bd51a  IN   PoSToken0 Ether0.00072413
0x6a15abda5bde245f638a66e2b2d710d251254ac3fec16d77085b4bb0ba8d33771 day 19 hrs ago0xf5d162ae2e34be14b474e0d29cd1079fa13c9893  IN   PoSToken0 Ether0.000087413
0x92d4ace53311e2db184ad4b8b231e2f6f67ae2b76d5e654c22b7ed5b2d1976a11 day 19 hrs ago0x5c2e5324a63234035d04cc0e3e7e84b1acae5152  IN   PoSToken0 Ether0.000286412
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
View All
ParentTxHash Block Age From To Value
Warning: The compiled contract might be susceptible to ZeroFunctionSelector (very low-severity), DelegateCallReturnValue (low-severity), ECRecoverMalformedInput (medium-severity) Solidity compiler bugs.

Contract Source Code Verified (Exact match)
Contract Name: PoSToken
Compiler Version: v0.4.13+commit.fb4cb1a
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts
pragma solidity ^0.4.11;


/**
 * @title SafeMath
 * @dev Math operations with safety checks that throw on error
 */
library SafeMath {
    function mul(uint256 a, uint256 b) internal constant returns (uint256) {
        uint256 c = a * b;
        assert(a == 0 || c / a == b);
        return c;
    }

    function div(uint256 a, uint256 b) internal constant returns (uint256) {
        // assert(b > 0); // Solidity automatically throws when dividing by 0
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold
        return c;
    }

    function sub(uint256 a, uint256 b) internal constant returns (uint256) {
        assert(b <= a);
        return a - b;
    }

    function add(uint256 a, uint256 b) internal constant returns (uint256) {
        uint256 c = a + b;
        assert(c >= a);
        return c;
    }
}


/**
 * @title Ownable
 * @dev The Ownable contract has an owner address, and provides basic authorization control
 * functions, this simplifies the implementation of "user permissions".
 */
contract Ownable {
    address public owner;


    /**
     * @dev The Ownable constructor sets the original `owner` of the contract to the sender
     * account.
     */
    function Ownable() {
        owner = msg.sender;
    }


    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        require(msg.sender == owner);
        _;
    }


    /**
     * @dev Allows the current owner to transfer control of the contract to a newOwner.
     * @param newOwner The address to transfer ownership to.
     */
    function transferOwnership(address newOwner) onlyOwner {
        require(newOwner != address(0));
        owner = newOwner;
    }

}


/**
 * @title ERC20Basic
 * @dev Simpler version of ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/179
 */
contract ERC20Basic {
    uint256 public totalSupply;
    function balanceOf(address who) constant returns (uint256);
    function transfer(address to, uint256 value) returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
}


/**
 * @title ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/20
 */
contract ERC20 is ERC20Basic {
    function allowance(address owner, address spender) constant returns (uint256);
    function transferFrom(address from, address to, uint256 value) returns (bool);
    function approve(address spender, uint256 value) returns (bool);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}


/**
 * @title PoSTokenStandard
 * @dev the interface of PoSTokenStandard
 */
contract PoSTokenStandard {
    uint256 public stakeStartTime;
    uint256 public stakeMinAge;
    uint256 public stakeMaxAge;
    function mint() returns (bool);
    function coinAge() constant returns (uint256);
    function annualInterest() constant returns (uint256);
    event Mint(address indexed _address, uint _reward);
}


contract PoSToken is ERC20,PoSTokenStandard,Ownable {
    using SafeMath for uint256;

    string public name = "PoSToken";
    string public symbol = "POS";
    uint public decimals = 18;

    uint public chainStartTime; //chain start time
    uint public chainStartBlockNumber; //chain start block number
    uint public stakeStartTime; //stake start time
    uint public stakeMinAge = 3 days; // minimum age for coin age: 3D
    uint public stakeMaxAge = 90 days; // stake age of full weight: 90D
    uint public maxMintProofOfStake = 10**17; // default 10% annual interest

    uint public totalSupply;
    uint public maxTotalSupply;
    uint public totalInitialSupply;

    struct transferInStruct{
    uint128 amount;
    uint64 time;
    }

    mapping(address => uint256) balances;
    mapping(address => mapping (address => uint256)) allowed;
    mapping(address => transferInStruct[]) transferIns;

    event Burn(address indexed burner, uint256 value);

    /**
     * @dev Fix for the ERC20 short address attack.
     */
    modifier onlyPayloadSize(uint size) {
        require(msg.data.length >= size + 4);
        _;
    }

    modifier canPoSMint() {
        require(totalSupply < maxTotalSupply);
        _;
    }

    function PoSToken() {
        maxTotalSupply = 10**25; // 10 Mil.
        totalInitialSupply = 10**24; // 1 Mil.

        chainStartTime = now;
        chainStartBlockNumber = block.number;

        balances[msg.sender] = totalInitialSupply;
        totalSupply = totalInitialSupply;
    }

    function transfer(address _to, uint256 _value) onlyPayloadSize(2 * 32) returns (bool) {
        if(msg.sender == _to) return mint();
        balances[msg.sender] = balances[msg.sender].sub(_value);
        balances[_to] = balances[_to].add(_value);
        Transfer(msg.sender, _to, _value);
        if(transferIns[msg.sender].length > 0) delete transferIns[msg.sender];
        uint64 _now = uint64(now);
        transferIns[msg.sender].push(transferInStruct(uint128(balances[msg.sender]),_now));
        transferIns[_to].push(transferInStruct(uint128(_value),_now));
        return true;
    }

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

    function transferFrom(address _from, address _to, uint256 _value) onlyPayloadSize(3 * 32) returns (bool) {
        require(_to != address(0));

        var _allowance = allowed[_from][msg.sender];

        // Check is not needed because sub(_allowance, _value) will already throw if this condition is not met
        // require (_value <= _allowance);

        balances[_from] = balances[_from].sub(_value);
        balances[_to] = balances[_to].add(_value);
        allowed[_from][msg.sender] = _allowance.sub(_value);
        Transfer(_from, _to, _value);
        if(transferIns[_from].length > 0) delete transferIns[_from];
        uint64 _now = uint64(now);
        transferIns[_from].push(transferInStruct(uint128(balances[_from]),_now));
        transferIns[_to].push(transferInStruct(uint128(_value),_now));
        return true;
    }

    function approve(address _spender, uint256 _value) returns (bool) {
        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];
    }

    function mint() canPoSMint returns (bool) {
        if(balances[msg.sender] <= 0) return false;
        if(transferIns[msg.sender].length <= 0) return false;

        uint reward = getProofOfStakeReward(msg.sender);
        if(reward <= 0) return false;

        totalSupply = totalSupply.add(reward);
        balances[msg.sender] = balances[msg.sender].add(reward);
        delete transferIns[msg.sender];
        transferIns[msg.sender].push(transferInStruct(uint128(balances[msg.sender]),uint64(now)));

        Mint(msg.sender, reward);
        return true;
    }

    function getBlockNumber() returns (uint blockNumber) {
        blockNumber = block.number.sub(chainStartBlockNumber);
    }

    function coinAge() constant returns (uint myCoinAge) {
        myCoinAge = getCoinAge(msg.sender,now);
    }

    function annualInterest() constant returns(uint interest) {
        uint _now = now;
        interest = maxMintProofOfStake;
        if((_now.sub(stakeStartTime)).div(1 years) == 0) {
            interest = (770 * maxMintProofOfStake).div(100);
        } else if((_now.sub(stakeStartTime)).div(1 years) == 1){
            interest = (435 * maxMintProofOfStake).div(100);
        }
    }

    function getProofOfStakeReward(address _address) internal returns (uint) {
        require( (now >= stakeStartTime) && (stakeStartTime > 0) );

        uint _now = now;
        uint _coinAge = getCoinAge(_address, _now);
        if(_coinAge <= 0) return 0;

        uint interest = maxMintProofOfStake;
        // Due to the high interest rate for the first two years, compounding should be taken into account.
        // Effective annual interest rate = (1 + (nominal rate / number of compounding periods)) ^ (number of compounding periods) - 1
        if((_now.sub(stakeStartTime)).div(1 years) == 0) {
            // 1st year effective annual interest rate is 100% when we select the stakeMaxAge (90 days) as the compounding period.
            interest = (770 * maxMintProofOfStake).div(100);
        } else if((_now.sub(stakeStartTime)).div(1 years) == 1){
            // 2nd year effective annual interest rate is 50%
            interest = (435 * maxMintProofOfStake).div(100);
        }

        return (_coinAge * interest).div(365 * (10**decimals));
    }

    function getCoinAge(address _address, uint _now) internal returns (uint _coinAge) {
        if(transferIns[_address].length <= 0) return 0;

        for (uint i = 0; i < transferIns[_address].length; i++){
            if( _now < uint(transferIns[_address][i].time).add(stakeMinAge) ) continue;

            uint nCoinSeconds = _now.sub(uint(transferIns[_address][i].time));
            if( nCoinSeconds > stakeMaxAge ) nCoinSeconds = stakeMaxAge;

            _coinAge = _coinAge.add(uint(transferIns[_address][i].amount) * nCoinSeconds.div(1 days));
        }
    }

    function ownerSetStakeStartTime(uint timestamp) onlyOwner {
        require((stakeStartTime <= 0) && (timestamp >= chainStartTime));
        stakeStartTime = timestamp;
    }

    function ownerBurnToken(uint _value) onlyOwner {
        require(_value > 0);

        balances[msg.sender] = balances[msg.sender].sub(_value);
        delete transferIns[msg.sender];
        transferIns[msg.sender].push(transferInStruct(uint128(balances[msg.sender]),uint64(now)));

        totalSupply = totalSupply.sub(_value);
        totalInitialSupply = totalInitialSupply.sub(_value);
        maxTotalSupply = maxTotalSupply.sub(_value*10);

        Burn(msg.sender, _value);
    }

    /* Batch token transfer. Used by contract creator to distribute initial tokens to holders */
    function batchTransfer(address[] _recipients, uint[] _values) onlyOwner returns (bool) {
        require( _recipients.length > 0 && _recipients.length == _values.length);

        uint total = 0;
        for(uint i = 0; i < _values.length; i++){
            total = total.add(_values[i]);
        }
        require(total <= balances[msg.sender]);

        uint64 _now = uint64(now);
        for(uint j = 0; j < _recipients.length; j++){
            balances[_recipients[j]] = balances[_recipients[j]].add(_values[j]);
            transferIns[_recipients[j]].push(transferInStruct(uint128(_values[j]),_now));
            Transfer(msg.sender, _recipients[j], _values[j]);
        }

        balances[msg.sender] = balances[msg.sender].sub(total);
        if(transferIns[msg.sender].length > 0) delete transferIns[msg.sender];
        if(balances[msg.sender] > 0) transferIns[msg.sender].push(transferInStruct(uint128(balances[msg.sender]),_now));

        return true;
    }
}

    Contract ABI  
[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"mint","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"coinAge","outputs":[{"name":"myCoinAge","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"timestamp","type":"uint256"}],"name":"ownerSetStakeStartTime","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"maxTotalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"getBlockNumber","outputs":[{"name":"blockNumber","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"chainStartTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"stakeStartTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_recipients","type":"address[]"},{"name":"_values","type":"uint256[]"}],"name":"batchTransfer","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"ownerBurnToken","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalInitialSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"annualInterest","outputs":[{"name":"interest","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"stakeMinAge","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"chainStartBlockNumber","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"stakeMaxAge","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"maxMintProofOfStake","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"type":"function"},{"inputs":[],"payable":false,"type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"burner","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_address","type":"address"},{"indexed":false,"name":"_reward","type":"uint256"}],"name":"Mint","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"},{"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"}]

  Contract Creation Code Switch To Opcodes View
606060405260408051908101604052600881527f506f53546f6b656e000000000000000000000000000000000000000000000000602082015260059080516200004d9291602001906200012d565b5060408051908101604052600381527f504f53000000000000000000000000000000000000000000000000000000000060208201526006908051620000979291602001906200012d565b5060126007556203f480600b556276a700600c5567016345785d8a0000600d553415620000c357600080fd5b5b5b60048054600160a060020a03191633600160a060020a03161790555b6a084595161401484a000000600f5569d3c21bcecceda100000060108190554260085543600955600160a060020a0333166000908152601160205260409020819055600e555b620001d7565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200017057805160ff1916838001178555620001a0565b82800160010185558215620001a0579182015b82811115620001a057825182559160200191906001019062000183565b5b50620001af929150620001b3565b5090565b620001d491905b80821115620001af5760008155600101620001ba565b5090565b90565b611bee80620001e76000396000f300606060405236156101515763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610156578063095ea7b3146101e15780631249c58b1461021757806318160ddd1461023e5780631e1b13c01461026357806323b872dd146102885780632a9edf6f146102c45780632ab4d052146102dc578063313ce5671461030157806342cbb15c146103265780635b054f9b1461034b57806370a08231146103705780637419f190146103a157806388d695b2146103c65780638da5cb5b1461046957806390762a8b1461049857806395d89b41146104b05780639fd4da401461053b578063a9059cbb14610560578063b2552fc414610596578063cbd8877e146105bb578063cd474b04146105e0578063dd62ed3e14610605578063e1c3bac61461063c578063f2bb5ce114610661578063f2fde38b14610686575b600080fd5b341561016157600080fd5b6101696106a7565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101a65780820151818401525b60200161018d565b50505050905090810190601f1680156101d35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101ec57600080fd5b610203600160a060020a0360043516602435610745565b604051901515815260200160405180910390f35b341561022257600080fd5b6102036107ec565b604051901515815260200160405180910390f35b341561024957600080fd5b6102516109e7565b60405190815260200160405180910390f35b341561026e57600080fd5b6102516109ed565b60405190815260200160405180910390f35b341561029357600080fd5b610203600160a060020a03600435811690602435166044356109ff565b604051901515815260200160405180910390f35b34156102cf57600080fd5b6102da600435610cf9565b005b34156102e757600080fd5b610251610d3e565b60405190815260200160405180910390f35b341561030c57600080fd5b610251610d44565b60405190815260200160405180910390f35b341561033157600080fd5b610251610d4a565b60405190815260200160405180910390f35b341561035657600080fd5b610251610d67565b60405190815260200160405180910390f35b341561037b57600080fd5b610251600160a060020a0360043516610d6d565b60405190815260200160405180910390f35b34156103ac57600080fd5b610251610d8c565b60405190815260200160405180910390f35b34156103d157600080fd5b610203600460248135818101908301358060208181020160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843750949650610d9295505050505050565b604051901515815260200160405180910390f35b341561047457600080fd5b61047c6111b0565b604051600160a060020a03909116815260200160405180910390f35b34156104a357600080fd5b6102da6004356111bf565b005b34156104bb57600080fd5b61016961138d565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101a65780820151818401525b60200161018d565b50505050905090810190601f1680156101d35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561054657600080fd5b61025161142b565b60405190815260200160405180910390f35b341561056b57600080fd5b610203600160a060020a0360043516602435611431565b604051901515815260200160405180910390f35b34156105a157600080fd5b6102516116e9565b60405190815260200160405180910390f35b34156105c657600080fd5b61025161178f565b60405190815260200160405180910390f35b34156105eb57600080fd5b610251611795565b60405190815260200160405180910390f35b341561061057600080fd5b610251600160a060020a036004358116906024351661179b565b60405190815260200160405180910390f35b341561064757600080fd5b6102516117c8565b60405190815260200160405180910390f35b341561066c57600080fd5b6102516117ce565b60405190815260200160405180910390f35b341561069157600080fd5b6102da600160a060020a03600435166117d4565b005b60058054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561073d5780601f106107125761010080835404028352916020019161073d565b820191906000526020600020905b81548152906001019060200180831161072057829003601f168201915b505050505081565b60008115806107775750600160a060020a03338116600090815260126020908152604080832093871683529290522054155b151561078257600080fd5b600160a060020a03338116600081815260126020908152604080832094881680845294909152908190208590557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a35060015b92915050565b600080600f54600e5410151561080157600080fd5b600160a060020a0333166000908152601160205260408120541161082857600091506109e2565b600160a060020a0333166000908152601360205260408120541161084f57600091506109e2565b61085833611831565b90506000811161086b57600091506109e2565b600e5461087e908263ffffffff61193f16565b600e55600160a060020a0333166000908152601160205260409020546108aa908263ffffffff61193f16565b600160a060020a033316600090815260116020908152604080832093909355601390529081206108d991611b1a565b600160a060020a03331660009081526013602052604090208054600181016109018382611b3c565b916000526020600020900160005b604080519081016040908152600160a060020a033316600090815260116020908152919020546001608060020a0316825267ffffffffffffffff421690820152919050815181546001608060020a0319166001608060020a03919091161781556020820151815467ffffffffffffffff91909116608060020a02600080516020611ba38339815191529091161790555050600160a060020a0333167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968858260405190815260200160405180910390a2600191505b5b5090565b600e5481565b60006109f93342611959565b90505b90565b6000808060606064361015610a1357600080fd5b600160a060020a0386161515610a2857600080fd5b600160a060020a03808816600081815260126020908152604080832033909516835293815283822054928252601190529190912054909350610a70908663ffffffff611ae716565b600160a060020a038089166000908152601160205260408082209390935590881681522054610aa5908663ffffffff61193f16565b600160a060020a038716600090815260116020526040902055610ace838663ffffffff611ae716565b600160a060020a03808916600081815260126020908152604080832033861684529091529081902093909355908816917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9088905190815260200160405180910390a3600160a060020a0387166000908152601360205260408120541115610b7157600160a060020a0387166000908152601360205260408120610b7191611b1a565b5b600160a060020a0387166000908152601360205260409020805442935060018101610b9d8382611b3c565b916000526020600020900160005b604080519081016040908152600160a060020a038c16600090815260116020908152919020546001608060020a0316825267ffffffffffffffff871690820152919050815181546001608060020a0319166001608060020a03919091161781556020820151815467ffffffffffffffff91909116608060020a02600080516020611ba38339815191529091161790555050600160a060020a0386166000908152601360205260409020805460018101610c648382611b3c565b916000526020600020900160005b604080519081016040526001608060020a038916815267ffffffffffffffff86166020820152919050815181546001608060020a0319166001608060020a03919091161781556020820151815467ffffffffffffffff91909116608060020a02600080516020611ba38339815191529091161790555060019450505b5b5050509392505050565b60045433600160a060020a03908116911614610d1457600080fd5b6000600a5411158015610d2957506008548110155b1515610d3457600080fd5b600a8190555b5b50565b600f5481565b60075481565b60006109f960095443611ae790919063ffffffff16565b90505b90565b60085481565b600160a060020a0381166000908152601160205260409020545b919050565b600a5481565b600454600090819081908190819033600160a060020a03908116911614610db857600080fd5b60008751118015610dca575085518751145b1515610dd557600080fd5b60009350600092505b8551831015610e1b57610e0d868481518110610df657fe5b90602001906020020151859063ffffffff61193f16565b93505b600190920191610dde565b600160a060020a033316600090815260116020526040902054841115610e4057600080fd5b5042905060005b865181101561104157610ea9868281518110610e5f57fe5b90602001906020020151601160008a8581518110610e7957fe5b90602001906020020151600160a060020a031681526020810191909152604001600020549063ffffffff61193f16565b60116000898481518110610eb957fe5b90602001906020020151600160a060020a0316600160a060020a031681526020019081526020016000208190555060136000888381518110610ef757fe5b90602001906020020151600160a060020a031681526020810191909152604001600020805460018101610f2a8382611b3c565b916000526020600020900160005b60408051908101604052808a8681518110610f4f57fe5b906020019060200201516001608060020a0316815267ffffffffffffffff8716602090910152919050815181546001608060020a0319166001608060020a03919091161781556020820151815467ffffffffffffffff91909116608060020a02600080516020611ba3833981519152909116179055508790508181518110610fd357fe5b90602001906020020151600160a060020a031633600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef88848151811061101d57fe5b9060200190602002015160405190815260200160405180910390a35b600101610e47565b600160a060020a03331660009081526011602052604090205461106a908563ffffffff611ae716565b600160a060020a033316600090815260116020908152604080832093909355601390529081205411156110b857600160a060020a03331660009081526013602052604081206110b891611b1a565b5b600160a060020a03331660009081526011602052604081205411156111a057600160a060020a03331660009081526013602052604090208054600181016111008382611b3c565b916000526020600020900160005b604080519081016040908152600160a060020a033316600090815260116020908152919020546001608060020a0316825267ffffffffffffffff871690820152919050815181546001608060020a0319166001608060020a03919091161781556020820151815467ffffffffffffffff91909116608060020a02600080516020611ba383398151915290911617905550505b600194505b5b5050505092915050565b600454600160a060020a031681565b60045433600160a060020a039081169116146111da57600080fd5b600081116111e757600080fd5b600160a060020a033316600090815260116020526040902054611210908263ffffffff611ae716565b600160a060020a0333166000908152601160209081526040808320939093556013905290812061123f91611b1a565b600160a060020a03331660009081526013602052604090208054600181016112678382611b3c565b916000526020600020900160005b604080519081016040908152600160a060020a033316600090815260116020908152919020546001608060020a0316825267ffffffffffffffff421690820152919050815181546001608060020a0319166001608060020a03919091161781556020820151815467ffffffffffffffff91909116608060020a02600080516020611ba38339815191529091161790555050600e54611319908263ffffffff611ae716565b600e5560105461132f908263ffffffff611ae716565b601055600f5461134890600a830263ffffffff611ae716565b600f55600160a060020a0333167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca58260405190815260200160405180910390a25b5b50565b60068054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561073d5780601f106107125761010080835404028352916020019161073d565b820191906000526020600020905b81548152906001019060200180831161072057829003601f168201915b505050505081565b60105481565b6000806040604436101561144457600080fd5b84600160a060020a031633600160a060020a0316141561146d576114666107ec565b92506116e0565b600160a060020a033316600090815260116020526040902054611496908563ffffffff611ae716565b600160a060020a0333811660009081526011602052604080822093909355908716815220546114cb908563ffffffff61193f16565b600160a060020a0380871660008181526011602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9087905190815260200160405180910390a3600160a060020a033316600090815260136020526040812054111561156357600160a060020a033316600090815260136020526040812061156391611b1a565b5b600160a060020a033316600090815260136020526040902080544293506001810161158f8382611b3c565b916000526020600020900160005b604080519081016040908152600160a060020a033316600090815260116020908152919020546001608060020a0316825267ffffffffffffffff871690820152919050815181546001608060020a0319166001608060020a03919091161781556020820151815467ffffffffffffffff91909116608060020a02600080516020611ba38339815191529091161790555050600160a060020a03851660009081526013602052604090208054600181016116568382611b3c565b916000526020600020900160005b604080519081016040526001608060020a038816815267ffffffffffffffff86166020820152919050815181546001608060020a0319166001608060020a03919091161781556020820151815467ffffffffffffffff91909116608060020a02600080516020611ba38339815191529091161790555060019350505b5b505092915050565b600d54600a544290611718906301e133809061170c90849063ffffffff611ae716565b9063ffffffff611afe16565b151561173d57600d546117369061030202606463ffffffff611afe16565b91506109e2565b6117666301e1338061170c600a5484611ae790919063ffffffff16565b9063ffffffff611afe16565b600114156109e257600d54611786906101b302606463ffffffff611afe16565b91505b5b5b5090565b600b5481565b60095481565b600160a060020a038083166000908152601260209081526040808320938516835292905220545b92915050565b600c5481565b600d5481565b60045433600160a060020a039081169116146117ef57600080fd5b600160a060020a038116151561180457600080fd5b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b600080600080600a54421015801561184b57506000600a54115b151561185657600080fd5b4292506118638584611959565b9150600082116118765760009350611937565b600d5490506118a46301e1338061170c600a5486611ae790919063ffffffff16565b9063ffffffff611afe16565b15156118c957600d546118c29061030202606463ffffffff611afe16565b9050611915565b6118f26301e1338061170c600a5486611ae790919063ffffffff16565b9063ffffffff611afe16565b6001141561191557600d54611912906101b302606463ffffffff611afe16565b90505b5b611934600754600a0a61016d02828402611afe90919063ffffffff16565b93505b505050919050565b60008282018381101561194e57fe5b8091505b5092915050565b600160a060020a0382166000908152601360205260408120548190819081901161198657600092506116e0565b600091505b600160a060020a0385166000908152601360205260409020548210156116e057600b54600160a060020a038616600090815260136020526040902080546119ff929190859081106119d857fe5b906000526020600020900160005b5054608060020a900467ffffffffffffffff169061193f565b841015611a0b57611ad3565b600160a060020a03851660009081526013602052604090208054611a5c919084908110611a3457fe5b906000526020600020900160005b50548590608060020a900467ffffffffffffffff16611ae7565b9050600c54811115611a6d5750600c545b611ad0611a83826201518063ffffffff611afe16565b600160a060020a0387166000908152601360205260409020805485908110611aa757fe5b906000526020600020900160005b505485916001608060020a039091160263ffffffff61193f16565b92505b60019091019061198b565b5b505092915050565b600082821115611af357fe5b508082035b92915050565b6000808284811515611b0c57fe5b0490508091505b5092915050565b5080546000825590600052602060002090810190610d3a9190611b66565b5b50565b815481835581811511611b6057600083815260209020611b60918101908301611b66565b5b505050565b6109fc91905b808211156109e257805477ffffffffffffffffffffffffffffffffffffffffffffffff19168155600101611b6c565b5090565b905600ffffffffffffffff0000000000000000ffffffffffffffffffffffffffffffffa165627a7a72305820589444c858e657735d12b990cfe876a4ff9b7b9a2c69dc3e266ece871238dbcc0029

   Swarm Source:
bzzr://589444c858e657735d12b990cfe876a4ff9b7b9a2c69dc3e266ece871238dbcc

 

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.