ETH Price: $3,281.65 (+1.40%)

Contract

0xA13f0743951B4f6E3e3AA039f682E17279f52bc3
 
Transaction Hash
Method
Block
From
To
Transfer215968672025-01-10 21:48:3529 hrs ago1736545715IN
SentinelChain
0 ETH0.000302155.49885423
Transfer215672442025-01-06 18:34:475 days ago1736188487IN
SentinelChain
0 ETH0.001065119.37965979
Transfer215151242024-12-30 11:54:5912 days ago1735559699IN
SentinelChain
0 ETH0.000239194.76984362
Transfer214412462024-12-20 4:08:2322 days ago1734667703IN
SentinelChain
0 ETH0.000426388.50050046
Transfer214077822024-12-15 12:00:4727 days ago1734264047IN
SentinelChain
0 ETH0.000339476.17806205
Transfer213839852024-12-12 4:18:1130 days ago1733977091IN
SentinelChain
0 ETH0.0007387213.44405756
Approve213424012024-12-06 8:56:1136 days ago1733475371IN
SentinelChain
0 ETH0.001041521.38876133
Approve213187022024-12-03 1:29:2340 days ago1733189363IN
SentinelChain
0 ETH0.0008314717.14731108
Transfer213069762024-12-01 10:11:1141 days ago1733047871IN
SentinelChain
0 ETH0.000478079.53103248
Approve212698802024-11-26 5:37:2346 days ago1732599443IN
SentinelChain
0 ETH0.00033376.88198856
Approve212117912024-11-18 3:03:5955 days ago1731899039IN
SentinelChain
0 ETH0.000482119.94252339
Transfer212067042024-11-17 10:03:2355 days ago1731837803IN
SentinelChain
0 ETH0.000521299.48493606
Transfer212063292024-11-17 8:47:5955 days ago1731833279IN
SentinelChain
0 ETH0.000454729.06552333
Approve211699672024-11-12 6:59:3560 days ago1731394775IN
SentinelChain
0 ETH0.0006418124.24697222
Approve211466932024-11-09 1:05:2364 days ago1731114323IN
SentinelChain
0 ETH0.0004951610.15639416
Transfer211466912024-11-09 1:04:5964 days ago1731114299IN
SentinelChain
0 ETH0.000516299.39610307
Approve210898772024-11-01 2:42:1172 days ago1730428931IN
SentinelChain
0 ETH0.000336146.89467917
Approve210806852024-10-30 19:57:1173 days ago1730318231IN
SentinelChain
0 ETH0.000447829.23764825
Transfer210536662024-10-27 1:26:1177 days ago1729992371IN
SentinelChain
0 ETH0.000129392.57909199
Approve210255422024-10-23 3:17:5981 days ago1729653479IN
SentinelChain
0 ETH0.000291126.00524997
Approve208930312024-10-04 15:23:1199 days ago1728055391IN
SentinelChain
0 ETH0.000461149.51013657
Transfer207495472024-09-14 14:49:23119 days ago1726325363IN
SentinelChain
0 ETH0.000089772.37111908
Transfer207495282024-09-14 14:45:35119 days ago1726325135IN
SentinelChain
0 ETH0.000097232.56734086
Transfer207421022024-09-13 13:50:35120 days ago1726235435IN
SentinelChain
0 ETH0.000114163.0145035
Transfer207420992024-09-13 13:49:59120 days ago1726235399IN
SentinelChain
0 ETH0.000111272.93816984
View all transactions

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Block
From
To
52015812018-03-05 15:45:482504 days ago1520264748  Contract Creation0 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
SencToken

Compiler Version
v0.4.21-nightly.2018.3.1+commit.cf6720ea

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2018-03-05
*/

pragma solidity ^0.4.18;

// ----------------------------------------------------------------------------
// SencTokenSale - SENC Token Sale Contract
//
// Copyright (c) 2018 InfoCorp Technologies Pte Ltd.
// http://www.sentinel-chain.org/
//
// The MIT Licence.
// ----------------------------------------------------------------------------

// ----------------------------------------------------------------------------
// The SENC token is an ERC20 token that:
// 1. Token is paused by default and is only allowed to be unpaused once the
//    Vesting contract is activated.
// 2. Tokens are created on demand up to TOTALSUPPLY or until minting is
//    disabled.
// 3. Token can airdropped to a group of recipients as long as the contract
//    has sufficient balance.
// ----------------------------------------------------------------------------

contract Ownable {
  address public owner;


  event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

  function Ownable() public {
    owner = msg.sender;
  }

  modifier onlyOwner() {
    require(msg.sender == owner);
    _;
  }

  function transferOwnership(address newOwner) public onlyOwner {
    require(newOwner != address(0));
    OwnershipTransferred(owner, newOwner);
    owner = newOwner;
  }

}

contract Pausable is Ownable {
  event Pause();
  event Unpause();

  bool public paused = false;

  modifier whenNotPaused() {
    require(!paused);
    _;
  }

  modifier whenPaused() {
    require(paused);
    _;
  }

  function pause() onlyOwner whenNotPaused public {
    paused = true;
    Pause();
  }

  function unpause() onlyOwner whenPaused public {
    paused = false;
    Unpause();
  }
}

contract ERC20Basic {
  function totalSupply() public view returns (uint256);
  function balanceOf(address who) public view returns (uint256);
  function transfer(address to, uint256 value) public returns (bool);
  event Transfer(address indexed from, address indexed to, uint256 value);
}

contract ERC20 is ERC20Basic {
  function allowance(address owner, address spender) public view returns (uint256);
  function transferFrom(address from, address to, uint256 value) public returns (bool);
  function approve(address spender, uint256 value) public returns (bool);
  event Approval(address indexed owner, address indexed spender, uint256 value);
}

contract BasicToken is ERC20Basic {
  using SafeMath for uint256;

  mapping(address => uint256) balances;

  uint256 totalSupply_;

  function totalSupply() public view returns (uint256) {
    return totalSupply_;
  }

  function transfer(address _to, uint256 _value) public returns (bool) {
    require(_to != address(0));
    require(_value <= balances[msg.sender]);

    // SafeMath.sub will throw if there is not enough balance.
    balances[msg.sender] = balances[msg.sender].sub(_value);
    balances[_to] = balances[_to].add(_value);
    Transfer(msg.sender, _to, _value);
    return true;
  }

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

}

contract StandardToken is ERC20, BasicToken {

  mapping (address => mapping (address => uint256)) internal allowed;

  function transferFrom(address _from, address _to, uint256 _value) public returns (bool) {
    require(_to != address(0));
    require(_value <= balances[_from]);
    require(_value <= allowed[_from][msg.sender]);

    balances[_from] = balances[_from].sub(_value);
    balances[_to] = balances[_to].add(_value);
    allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);
    Transfer(_from, _to, _value);
    return true;
  }

  function approve(address _spender, uint256 _value) public returns (bool) {
    allowed[msg.sender][_spender] = _value;
    Approval(msg.sender, _spender, _value);
    return true;
  }
 
  function allowance(address _owner, address _spender) public view returns (uint256) {
    return allowed[_owner][_spender];
  }

  function increaseApproval(address _spender, uint _addedValue) public returns (bool) {
    allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_addedValue);
    Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
    return true;
  }

  function decreaseApproval(address _spender, uint _subtractedValue) public returns (bool) {
    uint oldValue = allowed[msg.sender][_spender];
    if (_subtractedValue > oldValue) {
      allowed[msg.sender][_spender] = 0;
    } else {
      allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);
    }
    Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
    return true;
  }

}

contract PausableToken is StandardToken, Pausable {

  function transfer(address _to, uint256 _value) public whenNotPaused returns (bool) {
    return super.transfer(_to, _value);
  }

  function transferFrom(address _from, address _to, uint256 _value) public whenNotPaused returns (bool) {
    return super.transferFrom(_from, _to, _value);
  }

  function approve(address _spender, uint256 _value) public whenNotPaused returns (bool) {
    return super.approve(_spender, _value);
  }

  function increaseApproval(address _spender, uint _addedValue) public whenNotPaused returns (bool success) {
    return super.increaseApproval(_spender, _addedValue);
  }

  function decreaseApproval(address _spender, uint _subtractedValue) public whenNotPaused returns (bool success) {
    return super.decreaseApproval(_spender, _subtractedValue);
  }
}

contract OperatableBasic {
    function setPrimaryOperator (address addr) public;
    function setSecondaryOperator (address addr) public;
    function isPrimaryOperator(address addr) public view returns (bool);
    function isSecondaryOperator(address addr) public view returns (bool);
}

contract Operatable is Ownable, OperatableBasic {
    address public primaryOperator;
    address public secondaryOperator;

    modifier canOperate() {
        require(msg.sender == primaryOperator || msg.sender == secondaryOperator || msg.sender == owner);
        _;
    }

    function Operatable() public {
        primaryOperator = owner;
        secondaryOperator = owner;
    }

    function setPrimaryOperator (address addr) public onlyOwner {
        primaryOperator = addr;
    }

    function setSecondaryOperator (address addr) public onlyOwner {
        secondaryOperator = addr;
    }

    function isPrimaryOperator(address addr) public view returns (bool) {
        return (addr == primaryOperator);
    }

    function isSecondaryOperator(address addr) public view returns (bool) {
        return (addr == secondaryOperator);
    }
}

contract Salvageable is Operatable {
    // Salvage other tokens that are accidentally sent into this token
    function emergencyERC20Drain(ERC20 oddToken, uint amount) public canOperate {
        if (address(oddToken) == address(0)) {
            owner.transfer(amount);
            return;
        }
        oddToken.transfer(owner, amount);
    }
}

library SafeMath {

  /**
  * @dev Multiplies two numbers, throws on overflow.
  */
  function mul(uint256 a, uint256 b) internal pure returns (uint256) {
    if (a == 0) {
      return 0;
    }
    uint256 c = a * b;
    assert(c / a == b);
    return c;
  }

  /**
  * @dev Integer division of two numbers, truncating the quotient.
  */
  function div(uint256 a, uint256 b) internal pure 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;
  }

  /**
  * @dev Substracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
  */
  function sub(uint256 a, uint256 b) internal pure returns (uint256) {
    assert(b <= a);
    return a - b;
  }

  /**
  * @dev Adds two numbers, throws on overflow.
  */
  function add(uint256 a, uint256 b) internal pure returns (uint256) {
    uint256 c = a + b;
    assert(c >= a);
    return c;
  }
}


contract SencTokenConfig {
    string public constant NAME = "Sentinel Chain Token";
    string public constant SYMBOL = "SENC";
    uint8 public constant DECIMALS = 18;
    uint public constant DECIMALSFACTOR = 10 ** uint(DECIMALS);
    uint public constant TOTALSUPPLY = 500000000 * DECIMALSFACTOR;
}

contract SencToken is PausableToken, SencTokenConfig, Salvageable {
    using SafeMath for uint;

    string public name = NAME;
    string public symbol = SYMBOL;
    uint8 public decimals = DECIMALS;
    bool public mintingFinished = false;

    event Mint(address indexed to, uint amount);
    event MintFinished();

    modifier canMint() {
        require(!mintingFinished);
        _;
    }

    function SencToken() public {
        paused = true;
    }

    function pause() onlyOwner public {
        revert();
    }

    function unpause() onlyOwner public {
        super.unpause();
    }

    function mint(address _to, uint _amount) onlyOwner canMint public returns (bool) {
        require(totalSupply_.add(_amount) <= TOTALSUPPLY);
        totalSupply_ = totalSupply_.add(_amount);
        balances[_to] = balances[_to].add(_amount);
        Mint(_to, _amount);
        Transfer(address(0), _to, _amount);
        return true;
    }

    function finishMinting() onlyOwner canMint public returns (bool) {
        mintingFinished = true;
        MintFinished();
        return true;
    }

    // Airdrop tokens from bounty wallet to contributors as long as there are enough balance
    function airdrop(address bountyWallet, address[] dests, uint[] values) public onlyOwner returns (uint) {
        require(dests.length == values.length);
        uint i = 0;
        while (i < dests.length && balances[bountyWallet] >= values[i]) {
            this.transferFrom(bountyWallet, dests[i], values[i]);
            i += 1;
        }
        return(i);
    }
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[{"name":"bountyWallet","type":"address"},{"name":"dests","type":"address[]"},{"name":"values","type":"uint256[]"}],"name":"airdrop","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"mintingFinished","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","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":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"isSecondaryOperator","outputs":[{"name":"","type":"bool"}],"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":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"isPrimaryOperator","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"DECIMALS","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"mint","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"setSecondaryOperator","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","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":"finishMinting","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"DECIMALSFACTOR","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"TOTALSUPPLY","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":"NAME","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"setPrimaryOperator","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"primaryOperator","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"oddToken","type":"address"},{"name":"amount","type":"uint256"}],"name":"emergencyERC20Drain","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"SYMBOL","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"secondaryOperator","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[],"name":"MintFinished","type":"event"},{"anonymous":false,"inputs":[],"name":"Pause","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpause","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","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"}]

606060409081526003805460a060020a60ff02191690558051908101604052601481527f53656e74696e656c20436861696e20546f6b656e000000000000000000000000602082015260069080516200005d9291602001906200012c565b5060408051908101604052600481527f53454e430000000000000000000000000000000000000000000000000000000060208201526007908051620000a79291602001906200012c565b506008805461ff001960ff199091166012171690553415620000c857600080fd5b6003805460048054600160a060020a0319908116600160a060020a033381169483169490941793841690811790925560058054909116909117905560a060020a60ff02191674010000000000000000000000000000000000000000179055620001d1565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200016f57805160ff19168380011785556200019f565b828001600101855582156200019f579182015b828111156200019f57825182559160200191906001019062000182565b50620001ad929150620001b1565b5090565b620001ce91905b80821115620001ad5760008155600101620001b8565b90565b6113f180620001e16000396000f30060606040526004361061017c5763ffffffff60e060020a600035041663025ff12f811461018157806305d2035b1461023057806306fdde0314610257578063095ea7b3146102e1578063124cf8301461030357806318160ddd1461032257806323b872dd14610335578063281027b91461035d5780632e0f26251461037c578063313ce567146103a55780633f4ba83a146103b857806340c10f19146103cd5780635c975abb146103ef5780635f94e3de14610402578063661884631461042157806370a08231146104435780637d64bcb4146104625780638456cb59146104755780638bc04eb7146104885780638da5cb5b1461049b57806394a08c69146104ca57806395d89b41146104dd578063a3f4df7e146104f0578063a9059cbb14610503578063b2ccda0e14610525578063d33656e014610544578063d73dd62314610557578063db0e16f114610579578063dd62ed3e1461059b578063f2fde38b146105c0578063f76f8d78146105df578063fd0c78c2146105f2575b600080fd5b341561018c57600080fd5b61021e60048035600160a060020a03169060446024803590810190830135806020808202016040519081016040528093929190818152602001838360200280828437820191505050505050919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284375094965061060595505050505050565b60405190815260200160405180910390f35b341561023b57600080fd5b610243610738565b604051901515815260200160405180910390f35b341561026257600080fd5b61026a610746565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156102a657808201518382015260200161028e565b50505050905090810190601f1680156102d35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156102ec57600080fd5b610243600160a060020a03600435166024356107e4565b341561030e57600080fd5b610243600160a060020a036004351661080f565b341561032d57600080fd5b61021e610823565b341561034057600080fd5b610243600160a060020a0360043581169060243516604435610829565b341561036857600080fd5b610243600160a060020a036004351661084e565b341561038757600080fd5b61038f610862565b60405160ff909116815260200160405180910390f35b34156103b057600080fd5b61038f610867565b34156103c357600080fd5b6103cb610870565b005b34156103d857600080fd5b610243600160a060020a0360043516602435610895565b34156103fa57600080fd5b6102436109cd565b341561040d57600080fd5b6103cb600160a060020a03600435166109dd565b341561042c57600080fd5b610243600160a060020a0360043516602435610a27565b341561044e57600080fd5b61021e600160a060020a0360043516610a4b565b341561046d57600080fd5b610243610a66565b341561048057600080fd5b6103cb610ada565b341561049357600080fd5b61021e610af5565b34156104a657600080fd5b6104ae610b01565b604051600160a060020a03909116815260200160405180910390f35b34156104d557600080fd5b61021e610b10565b34156104e857600080fd5b61026a610b20565b34156104fb57600080fd5b61026a610b8b565b341561050e57600080fd5b610243600160a060020a0360043516602435610bc2565b341561053057600080fd5b6103cb600160a060020a0360043516610be6565b341561054f57600080fd5b6104ae610c30565b341561056257600080fd5b610243600160a060020a0360043516602435610c3f565b341561058457600080fd5b6103cb600160a060020a0360043516602435610c63565b34156105a657600080fd5b61021e600160a060020a0360043581169060243516610d7d565b34156105cb57600080fd5b6103cb600160a060020a0360043516610da8565b34156105ea57600080fd5b61026a610e43565b34156105fd57600080fd5b6104ae610e7a565b600354600090819033600160a060020a0390811691161461062557600080fd5b825184511461063357600080fd5b5060005b835181108015610674575082818151811061064e57fe5b90602001906020020151600160a060020a03861660009081526020819052604090205410155b156107305730600160a060020a03166323b872dd8686848151811061069557fe5b906020019060200201518685815181106106ab57fe5b9060200190602002015160006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b151561070d57600080fd5b6102c65a03f1151561071e57600080fd5b50505060405180515050600101610637565b949350505050565b600854610100900460ff1681565b60068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107dc5780601f106107b1576101008083540402835291602001916107dc565b820191906000526020600020905b8154815290600101906020018083116107bf57829003601f168201915b505050505081565b60035460009060a060020a900460ff16156107fe57600080fd5b6108088383610e89565b9392505050565b600554600160a060020a0390811691161490565b60015490565b60035460009060a060020a900460ff161561084357600080fd5b610730848484610ef5565b600454600160a060020a0390811691161490565b601281565b60085460ff1681565b60035433600160a060020a0390811691161461088b57600080fd5b610893611075565b565b60035460009033600160a060020a039081169116146108b357600080fd5b600854610100900460ff16156108c857600080fd5b6001546b019d971e4fe8401e74000000906108e9908463ffffffff6110f416565b11156108f457600080fd5b600154610907908363ffffffff6110f416565b600155600160a060020a038316600090815260208190526040902054610933908363ffffffff6110f416565b600160a060020a0384166000818152602081905260409081902092909255907f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968859084905190815260200160405180910390a2600160a060020a03831660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a350600192915050565b60035460a060020a900460ff1681565b60035433600160a060020a039081169116146109f857600080fd5b6005805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60035460009060a060020a900460ff1615610a4157600080fd5b6108088383611103565b600160a060020a031660009081526020819052604090205490565b60035460009033600160a060020a03908116911614610a8457600080fd5b600854610100900460ff1615610a9957600080fd5b6008805461ff0019166101001790557fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0860405160405180910390a150600190565b60035433600160a060020a0390811691161461017c57600080fd5b670de0b6b3a764000081565b600354600160a060020a031681565b6b019d971e4fe8401e7400000081565b60078054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107dc5780601f106107b1576101008083540402835291602001916107dc565b60408051908101604052601481527f53656e74696e656c20436861696e20546f6b656e000000000000000000000000602082015281565b60035460009060a060020a900460ff1615610bdc57600080fd5b61080883836111fd565b60035433600160a060020a03908116911614610c0157600080fd5b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600454600160a060020a031681565b60035460009060a060020a900460ff1615610c5957600080fd5b610808838361130f565b60045433600160a060020a0390811691161480610c8e575060055433600160a060020a039081169116145b80610ca7575060035433600160a060020a039081169116145b1515610cb257600080fd5b600160a060020a0382161515610cfa57600354600160a060020a031681156108fc0282604051600060405180830381858888f193505050501515610cf557600080fd5b610d79565b600354600160a060020a038084169163a9059cbb91168360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610d5d57600080fd5b6102c65a03f11515610d6e57600080fd5b505050604051805150505b5050565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b60035433600160a060020a03908116911614610dc357600080fd5b600160a060020a0381161515610dd857600080fd5b600354600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60408051908101604052600481527f53454e4300000000000000000000000000000000000000000000000000000000602082015281565b600554600160a060020a031681565b600160a060020a03338116600081815260026020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b6000600160a060020a0383161515610f0c57600080fd5b600160a060020a038416600090815260208190526040902054821115610f3157600080fd5b600160a060020a0380851660009081526002602090815260408083203390941683529290522054821115610f6457600080fd5b600160a060020a038416600090815260208190526040902054610f8d908363ffffffff6113b316565b600160a060020a038086166000908152602081905260408082209390935590851681522054610fc2908363ffffffff6110f416565b600160a060020a0380851660009081526020818152604080832094909455878316825260028152838220339093168252919091522054611008908363ffffffff6113b316565b600160a060020a03808616600081815260026020908152604080832033861684529091529081902093909355908516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461109057600080fd5b60035460a060020a900460ff1615156110a857600080fd5b6003805474ff0000000000000000000000000000000000000000191690557f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b60008282018381101561080857fe5b600160a060020a0333811660009081526002602090815260408083209386168352929052908120548083111561116057600160a060020a033381166000908152600260209081526040808320938816835292905290812055611197565b611170818463ffffffff6113b316565b600160a060020a033381166000908152600260209081526040808320938916835292905220555b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b6000600160a060020a038316151561121457600080fd5b600160a060020a03331660009081526020819052604090205482111561123957600080fd5b600160a060020a033316600090815260208190526040902054611262908363ffffffff6113b316565b600160a060020a033381166000908152602081905260408082209390935590851681522054611297908363ffffffff6110f416565b60008085600160a060020a0316600160a060020a031681526020019081526020016000208190555082600160a060020a031633600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a350600192915050565b600160a060020a033381166000908152600260209081526040808320938616835292905290812054611347908363ffffffff6110f416565b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020849055919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591905190815260200160405180910390a350600192915050565b6000828211156113bf57fe5b509003905600a165627a7a723058202d13c6499ad03473cef8878cad8f33382c417d3e0726215c995b362f16e01aab0029

Deployed Bytecode

0x60606040526004361061017c5763ffffffff60e060020a600035041663025ff12f811461018157806305d2035b1461023057806306fdde0314610257578063095ea7b3146102e1578063124cf8301461030357806318160ddd1461032257806323b872dd14610335578063281027b91461035d5780632e0f26251461037c578063313ce567146103a55780633f4ba83a146103b857806340c10f19146103cd5780635c975abb146103ef5780635f94e3de14610402578063661884631461042157806370a08231146104435780637d64bcb4146104625780638456cb59146104755780638bc04eb7146104885780638da5cb5b1461049b57806394a08c69146104ca57806395d89b41146104dd578063a3f4df7e146104f0578063a9059cbb14610503578063b2ccda0e14610525578063d33656e014610544578063d73dd62314610557578063db0e16f114610579578063dd62ed3e1461059b578063f2fde38b146105c0578063f76f8d78146105df578063fd0c78c2146105f2575b600080fd5b341561018c57600080fd5b61021e60048035600160a060020a03169060446024803590810190830135806020808202016040519081016040528093929190818152602001838360200280828437820191505050505050919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284375094965061060595505050505050565b60405190815260200160405180910390f35b341561023b57600080fd5b610243610738565b604051901515815260200160405180910390f35b341561026257600080fd5b61026a610746565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156102a657808201518382015260200161028e565b50505050905090810190601f1680156102d35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156102ec57600080fd5b610243600160a060020a03600435166024356107e4565b341561030e57600080fd5b610243600160a060020a036004351661080f565b341561032d57600080fd5b61021e610823565b341561034057600080fd5b610243600160a060020a0360043581169060243516604435610829565b341561036857600080fd5b610243600160a060020a036004351661084e565b341561038757600080fd5b61038f610862565b60405160ff909116815260200160405180910390f35b34156103b057600080fd5b61038f610867565b34156103c357600080fd5b6103cb610870565b005b34156103d857600080fd5b610243600160a060020a0360043516602435610895565b34156103fa57600080fd5b6102436109cd565b341561040d57600080fd5b6103cb600160a060020a03600435166109dd565b341561042c57600080fd5b610243600160a060020a0360043516602435610a27565b341561044e57600080fd5b61021e600160a060020a0360043516610a4b565b341561046d57600080fd5b610243610a66565b341561048057600080fd5b6103cb610ada565b341561049357600080fd5b61021e610af5565b34156104a657600080fd5b6104ae610b01565b604051600160a060020a03909116815260200160405180910390f35b34156104d557600080fd5b61021e610b10565b34156104e857600080fd5b61026a610b20565b34156104fb57600080fd5b61026a610b8b565b341561050e57600080fd5b610243600160a060020a0360043516602435610bc2565b341561053057600080fd5b6103cb600160a060020a0360043516610be6565b341561054f57600080fd5b6104ae610c30565b341561056257600080fd5b610243600160a060020a0360043516602435610c3f565b341561058457600080fd5b6103cb600160a060020a0360043516602435610c63565b34156105a657600080fd5b61021e600160a060020a0360043581169060243516610d7d565b34156105cb57600080fd5b6103cb600160a060020a0360043516610da8565b34156105ea57600080fd5b61026a610e43565b34156105fd57600080fd5b6104ae610e7a565b600354600090819033600160a060020a0390811691161461062557600080fd5b825184511461063357600080fd5b5060005b835181108015610674575082818151811061064e57fe5b90602001906020020151600160a060020a03861660009081526020819052604090205410155b156107305730600160a060020a03166323b872dd8686848151811061069557fe5b906020019060200201518685815181106106ab57fe5b9060200190602002015160006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b151561070d57600080fd5b6102c65a03f1151561071e57600080fd5b50505060405180515050600101610637565b949350505050565b600854610100900460ff1681565b60068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107dc5780601f106107b1576101008083540402835291602001916107dc565b820191906000526020600020905b8154815290600101906020018083116107bf57829003601f168201915b505050505081565b60035460009060a060020a900460ff16156107fe57600080fd5b6108088383610e89565b9392505050565b600554600160a060020a0390811691161490565b60015490565b60035460009060a060020a900460ff161561084357600080fd5b610730848484610ef5565b600454600160a060020a0390811691161490565b601281565b60085460ff1681565b60035433600160a060020a0390811691161461088b57600080fd5b610893611075565b565b60035460009033600160a060020a039081169116146108b357600080fd5b600854610100900460ff16156108c857600080fd5b6001546b019d971e4fe8401e74000000906108e9908463ffffffff6110f416565b11156108f457600080fd5b600154610907908363ffffffff6110f416565b600155600160a060020a038316600090815260208190526040902054610933908363ffffffff6110f416565b600160a060020a0384166000818152602081905260409081902092909255907f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968859084905190815260200160405180910390a2600160a060020a03831660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a350600192915050565b60035460a060020a900460ff1681565b60035433600160a060020a039081169116146109f857600080fd5b6005805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60035460009060a060020a900460ff1615610a4157600080fd5b6108088383611103565b600160a060020a031660009081526020819052604090205490565b60035460009033600160a060020a03908116911614610a8457600080fd5b600854610100900460ff1615610a9957600080fd5b6008805461ff0019166101001790557fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0860405160405180910390a150600190565b60035433600160a060020a0390811691161461017c57600080fd5b670de0b6b3a764000081565b600354600160a060020a031681565b6b019d971e4fe8401e7400000081565b60078054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107dc5780601f106107b1576101008083540402835291602001916107dc565b60408051908101604052601481527f53656e74696e656c20436861696e20546f6b656e000000000000000000000000602082015281565b60035460009060a060020a900460ff1615610bdc57600080fd5b61080883836111fd565b60035433600160a060020a03908116911614610c0157600080fd5b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600454600160a060020a031681565b60035460009060a060020a900460ff1615610c5957600080fd5b610808838361130f565b60045433600160a060020a0390811691161480610c8e575060055433600160a060020a039081169116145b80610ca7575060035433600160a060020a039081169116145b1515610cb257600080fd5b600160a060020a0382161515610cfa57600354600160a060020a031681156108fc0282604051600060405180830381858888f193505050501515610cf557600080fd5b610d79565b600354600160a060020a038084169163a9059cbb91168360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610d5d57600080fd5b6102c65a03f11515610d6e57600080fd5b505050604051805150505b5050565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b60035433600160a060020a03908116911614610dc357600080fd5b600160a060020a0381161515610dd857600080fd5b600354600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60408051908101604052600481527f53454e4300000000000000000000000000000000000000000000000000000000602082015281565b600554600160a060020a031681565b600160a060020a03338116600081815260026020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b6000600160a060020a0383161515610f0c57600080fd5b600160a060020a038416600090815260208190526040902054821115610f3157600080fd5b600160a060020a0380851660009081526002602090815260408083203390941683529290522054821115610f6457600080fd5b600160a060020a038416600090815260208190526040902054610f8d908363ffffffff6113b316565b600160a060020a038086166000908152602081905260408082209390935590851681522054610fc2908363ffffffff6110f416565b600160a060020a0380851660009081526020818152604080832094909455878316825260028152838220339093168252919091522054611008908363ffffffff6113b316565b600160a060020a03808616600081815260026020908152604080832033861684529091529081902093909355908516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60035433600160a060020a0390811691161461109057600080fd5b60035460a060020a900460ff1615156110a857600080fd5b6003805474ff0000000000000000000000000000000000000000191690557f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b60008282018381101561080857fe5b600160a060020a0333811660009081526002602090815260408083209386168352929052908120548083111561116057600160a060020a033381166000908152600260209081526040808320938816835292905290812055611197565b611170818463ffffffff6113b316565b600160a060020a033381166000908152600260209081526040808320938916835292905220555b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b6000600160a060020a038316151561121457600080fd5b600160a060020a03331660009081526020819052604090205482111561123957600080fd5b600160a060020a033316600090815260208190526040902054611262908363ffffffff6113b316565b600160a060020a033381166000908152602081905260408082209390935590851681522054611297908363ffffffff6110f416565b60008085600160a060020a0316600160a060020a031681526020019081526020016000208190555082600160a060020a031633600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a350600192915050565b600160a060020a033381166000908152600260209081526040808320938616835292905290812054611347908363ffffffff6110f416565b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020849055919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591905190815260200160405180910390a350600192915050565b6000828211156113bf57fe5b509003905600a165627a7a723058202d13c6499ad03473cef8878cad8f33382c417d3e0726215c995b362f16e01aab0029

Swarm Source

bzzr://2d13c6499ad03473cef8878cad8f33382c417d3e0726215c995b362f16e01aab

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.