ETH Price: $1,644.19 (+1.25%)
 
Transaction Hash
Method
Block
From
To
Transfer215154342024-12-30 12:56:59105 days ago1735563419IN
Serenity Token
0 ETH0.000204416.37085958
Transfer214117482024-12-16 1:18:47120 days ago1734311927IN
Serenity Token
0 ETH0.0008535916.40840706
Transfer199715592024-05-28 23:11:11321 days ago1716937871IN
Serenity Token
0 ETH0.0020931660
Transfer199644002024-05-27 23:10:47322 days ago1716851447IN
Serenity Token
0 ETH0.000443798.53676492
Transfer189759282024-01-10 10:23:23460 days ago1704882203IN
Serenity Token
0 ETH0.0026173575
Transfer189191172024-01-02 10:30:47468 days ago1704191447IN
Serenity Token
0 ETH0.0010693620.56553781
Approve184351982023-10-26 15:11:47536 days ago1698333107IN
Serenity Token
0 ETH0.001775637.94834318
Transfer179565712023-08-20 14:31:59603 days ago1692541919IN
Serenity Token
0 ETH0.0010086219.39738546
Transfer164696982023-01-23 13:07:11812 days ago1674479231IN
Serenity Token
0 ETH0.0008161915.70025646
Transfer162563862022-12-24 18:27:59842 days ago1671906479IN
Serenity Token
0 ETH0.0006038111.60700372
Approve156572862022-10-02 1:51:23926 days ago1664675483IN
Serenity Token
0 ETH0.00033497.20379325
Transfer156572782022-10-02 1:49:47926 days ago1664675387IN
Serenity Token
0 ETH0.005112990
Transfer152957532022-08-07 14:42:53981 days ago1659883373IN
Serenity Token
0 ETH0.000218646.81430827
Transfer148741942022-05-30 18:43:071050 days ago1653936187IN
Serenity Token
0 ETH0.0011436922
Transfer148717332022-05-30 9:15:421050 days ago1653902142IN
Serenity Token
0 ETH0.0031429890
Transfer148656472022-05-29 9:14:441051 days ago1653815684IN
Serenity Token
0 ETH0.000416178
Transfer141296872022-02-02 23:53:051167 days ago1643845985IN
Serenity Token
0 ETH0.00611901117.62354582
Transfer140229662022-01-17 12:14:461183 days ago1642421686IN
Serenity Token
0 ETH0.003474366.78536147
Transfer138672272021-12-24 9:56:441207 days ago1640339804IN
Serenity Token
0 ETH0.0033513696
Transfer138607132021-12-23 9:56:101208 days ago1640253370IN
Serenity Token
0 ETH0.0036003469.23997809
Transfer137077812021-11-29 9:24:231232 days ago1638177863IN
Serenity Token
0 ETH0.00551578158
Transfer137015672021-11-28 9:23:431233 days ago1638091423IN
Serenity Token
0 ETH0.0028775755.34004474
Transfer136581102021-11-21 12:11:491240 days ago1637496709IN
Serenity Token
0 ETH0.004068278.20161775
Transfer135910582021-11-10 22:01:411251 days ago1636581701IN
Serenity Token
0 ETH0.01425629251
Transfer135150562021-10-29 23:29:431263 days ago1635550183IN
Serenity Token
0 ETH0.01062347187
View all transactions

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer49244882018-01-17 16:25:562644 days ago1516206356  Contract Creation0 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
SerenityToken

Compiler Version
v0.4.18+commit.9cf6e910

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2018-01-17
*/

pragma solidity 0.4.18;

contract IOwned {
  function owner() public view returns (address) { owner; }
  function transferOwnership(address _newOwner) public;
}

contract Owned is IOwned {
  address public owner;

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

  modifier validAddress(address _address) {
    require(_address != 0x0);
    _;
  }
  modifier onlyOwner {
    assert(msg.sender == owner);
    _;
  }
  
  function transferOwnership(address _newOwner) public validAddress(_newOwner) onlyOwner {
    require(_newOwner != owner);
    
    owner = _newOwner;
  }
}


library SafeMath {
  function mul(uint256 a, uint256 b) internal view returns (uint256) {
    uint256 c = a * b;
    assert(a == 0 || c / a == b);
    return c;
  }

  function div(uint256 a, uint256 b) internal view 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 view returns (uint256) {
    assert(b <= a);
    return a - b;
  }

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


contract IERC20Token {
  function name() public view returns (string) { name; }
  function symbol() public view returns (string) { symbol; }
  function decimals() public view returns (uint8) { decimals; }
  function totalSupply() public view returns (uint256) { totalSupply; }
  function balanceOf(address _owner) public view returns (uint256 balance) { _owner; balance; }
  function allowance(address _owner, address _spender) public view returns (uint256 remaining) { _owner; _spender; remaining; }

  function transfer(address _to, uint256 _value) public returns (bool);
  function transferFrom(address _from, address _to, uint256 _value) public returns (bool);
  function approve(address _spender, uint256 _value) public returns (bool);
}

contract ERC20Token is IERC20Token {
  using SafeMath for uint256;

  string public standard = 'Token 0.1';
  string public name = '';
  string public symbol = '';
  uint8 public decimals = 0;
  uint256 public totalSupply = 0;
  mapping (address => uint256) public balanceOf;
  mapping (address => mapping (address => uint256)) public allowance;

  event Transfer(address indexed _from, address indexed _to, uint256 _value);
  event Approval(address indexed _owner, address indexed _spender, uint256 _value);

  function ERC20Token(string _name, string _symbol, uint8 _decimals) public {
    require(bytes(_name).length > 0 && bytes(_symbol).length > 0);
    name = _name;
    symbol = _symbol;
    decimals = _decimals;
  }

  modifier validAddress(address _address) {
    require(_address != 0x0);
    _;
  }

  function transfer(address _to, uint256 _value) public validAddress(_to) returns (bool) {
    require(_value <= balanceOf[msg.sender]);
    balanceOf[msg.sender] = balanceOf[msg.sender].sub(_value);
    balanceOf[_to] = balanceOf[_to].add(_value);
    Transfer(msg.sender, _to, _value);
    
    return true;
  }

  function transferFrom(address _from, address _to, uint256 _value) public validAddress(_to) returns (bool) {
    require(_value <= allowance[_from][msg.sender]);
    require(_value <= balanceOf[_from]);
    allowance[_from][msg.sender] = allowance[_from][msg.sender].sub(_value);
    balanceOf[_from] = balanceOf[_from].sub(_value);
    balanceOf[_to] = balanceOf[_to].add(_value);
    Transfer(_from, _to, _value);
    return true;
  }

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

contract ISerenityToken {
  function initialSupply () public view returns (uint256) { initialSupply; }

  function totalSoldTokens () public view returns (uint256) { totalSoldTokens; }
  function totalProjectToken() public view returns (uint256) { totalProjectToken; }

  function fundingEnabled() public view returns (bool) { fundingEnabled; }
  function transfersEnabled() public view returns (bool) { transfersEnabled; }
}

contract SerenityToken is ISerenityToken, ERC20Token, Owned {
  using SafeMath for uint256;
 
  address public fundingWallet;
  bool public fundingEnabled = true;
  uint256 public maxSaleToken = 400000000 ether;
  uint256 public initialSupply = 400000000 ether;
  uint256 public totalSoldTokens = 0;
  uint256 public totalProjectToken;
  bool public transfersEnabled = false;

  mapping (address => bool) internal fundingWallets;

  event Finalize(address indexed _from, uint256 _value);
  event DisableTransfers(address indexed _from);

  function SerenityToken() ERC20Token("Serenity", "SRNT", 18) public {
    fundingWallet = msg.sender; 

    balanceOf[fundingWallet] = maxSaleToken;
    balanceOf[0x47c8F28e6056374aBA3DF0854306c2556B104601] = maxSaleToken;
    balanceOf[0xCAD0AfB8Ec657D0DB9518B930855534f6433360f] = maxSaleToken;
    balanceOf[0x041375343c3Bd1Bb28b40b5Ce7b4665A9a6e21D0] = maxSaleToken;

    fundingWallets[fundingWallet] = true;
    fundingWallets[0x47c8F28e6056374aBA3DF0854306c2556B104601] = true;
    fundingWallets[0xCAD0AfB8Ec657D0DB9518B930855534f6433360f] = true;
    fundingWallets[0x041375343c3Bd1Bb28b40b5Ce7b4665A9a6e21D0] = true;
  }

  modifier validAddress(address _address) {
    require(_address != 0x0);
    _;
  }

  modifier transfersAllowed(address _address) {
    if (fundingEnabled) {
      require(fundingWallets[_address]);
    }
    else {
      require(transfersEnabled);
    }
    _;
  }

  function transfer(address _to, uint256 _value) public validAddress(_to) transfersAllowed(msg.sender) returns (bool) {
    return super.transfer(_to, _value);
  }

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

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

  function getTotalSoldTokens() public view returns (uint256) {
    uint256 result = 0;
    result = result.add(maxSaleToken.sub(balanceOf[fundingWallet]));
    result = result.add(maxSaleToken.sub(balanceOf[0x47c8F28e6056374aBA3DF0854306c2556B104601]));
    result = result.add(maxSaleToken.sub(balanceOf[0xCAD0AfB8Ec657D0DB9518B930855534f6433360f]));
    result = result.add(maxSaleToken.sub(balanceOf[0x041375343c3Bd1Bb28b40b5Ce7b4665A9a6e21D0]));
    return result;
  }

  function finalize() external onlyOwner {
    require(fundingEnabled);
    
    totalSoldTokens = getTotalSoldTokens();

    totalProjectToken = totalSoldTokens.mul(15).div(100);

    // Zeroing a cold wallet.
    balanceOf[fundingWallet] = 0;
    balanceOf[0xCAD0AfB8Ec657D0DB9518B930855534f6433360f] = 0;
    balanceOf[0x041375343c3Bd1Bb28b40b5Ce7b4665A9a6e21D0] = 0;

    // Shareholders/bounties
    balanceOf[0x47c8F28e6056374aBA3DF0854306c2556B104601] = totalProjectToken;

    // End of crowdfunding.
    fundingEnabled = false;
    transfersEnabled = true;

    // End of crowdfunding.
    Transfer(this, fundingWallet, 0);
    Finalize(msg.sender, totalSupply);
  }

  function disableTransfers() external onlyOwner {
    require(transfersEnabled);

    transfersEnabled = false;

    DisableTransfers(msg.sender);
  }

  function disableFundingWallets(address _address) external onlyOwner {
    require(fundingEnabled);
    require(fundingWallet != _address);
    require(fundingWallets[_address]);

    fundingWallets[_address] = false;
  }

  function enableFundingWallets(address _address) external onlyOwner {
    require(fundingEnabled);
    require(fundingWallet != _address);

    fundingWallets[_address] = true;
  }
}


contract Crowdsale {
  using SafeMath for uint256;

  SerenityToken public token;

  mapping(uint256 => uint8) internal icoWeeksDiscounts;

  bool public isICOStarted = false; 
  uint256 public icoStartTime; 
  uint256 public icoEndTime; 

  address public wallet = 0x47c8F28e6056374aBA3DF0854306c2556B104601;

  event TokenPurchase(address indexed purchaser, address indexed beneficiary, uint256 value, uint256 amount);

  modifier validAddress(address _address) {
    require(_address != 0x0);
    _;
  }

  function Crowdsale() public {
    token = createTokenContract();
    initDiscounts();
  }

  function initDiscounts() internal {
    icoWeeksDiscounts[0] = 40;
    icoWeeksDiscounts[1] = 35;
    icoWeeksDiscounts[2] = 30;
    icoWeeksDiscounts[3] = 25;
    icoWeeksDiscounts[4] = 20;
    icoWeeksDiscounts[5] = 10;
  }

  function createTokenContract() internal returns (SerenityToken) {
    return new SerenityToken();
  }

  function () public payable {
    buyTokens(msg.sender);
  }

  function getDiscount() internal view returns (uint8) {
    require(isICOStarted == true);
    require(icoStartTime < now);
    require(icoEndTime > now);

    uint256 weeksPassed = now.sub(icoStartTime).div(7 days);
    return icoWeeksDiscounts[weeksPassed];
  } 

  function buyTokens(address beneficiary) public validAddress(beneficiary) payable {
    require(isICOStarted);
    require(validPurchase());

    uint8 discountPercents = getDiscount();
    uint256 tokens = msg.value.mul(100).div(100 - discountPercents).mul(10000);

    require(tokens >= 100 ether);

    token.autoTransfer(beneficiary, tokens);
    TokenPurchase(msg.sender, beneficiary, msg.value, tokens);

    forwardFunds();
  }

  function activateICO(uint256 _icoEndTime) public {
    require(msg.sender == wallet);
    require(_icoEndTime >= now);
    require(isICOStarted == false);
      
    isICOStarted = true;
    icoEndTime = _icoEndTime;
    icoStartTime = now;
  }

  function forwardFunds() internal {
    wallet.transfer(msg.value);
  }

  function finalize() public {
    require(msg.sender == wallet);
    token.finalize();
  }

  function validPurchase() internal view returns (bool) {
    bool withinICOPeriod = isICOStarted && now >= icoStartTime && now <= icoEndTime;

    bool nonZeroPurchase = msg.value != 0;
    
    return withinICOPeriod && nonZeroPurchase;
  }
}

Contract Security Audit

Contract ABI

API
[{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"enableFundingWallets","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"autoTransfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","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":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"initialSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"disableTransfers","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"fundingWallet","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"finalize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalProjectToken","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxSaleToken","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getTotalSoldTokens","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"standard","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","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":"_address","type":"address"}],"name":"disableFundingWallets","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"transfersEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSoldTokens","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"fundingEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Finalize","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"}],"name":"DisableTransfers","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"}]

606060405260408051908101604052600981527f546f6b656e20302e310000000000000000000000000000000000000000000000602082015260009080516200004d92916020019062000331565b5060206040519081016040526000815260019080516200007292916020019062000331565b5060206040519081016040526000815260029080516200009792916020019062000331565b506003805460ff19908116909155600060048190556008805460a060020a60ff021916740100000000000000000000000000000000000000001790556b014adf4b7320334b900000006009819055600a55600b55600d8054909116905534156200010057600080fd5b604080519081016040908152600882527f536572656e69747900000000000000000000000000000000000000000000000060208301528051908101604052600481527f53524e540000000000000000000000000000000000000000000000000000000060208201526012600083511180156200017d575060008251115b15156200018957600080fd5b60018380516200019e92916020019062000331565b506002828051620001b492916020019062000331565b506003805460ff90921660ff1992831617905560078054600160a060020a03338116600160a060020a031992831681179093556008805490921690921780825560095490831660009081526005602090815260408083208490557f3592c6fab48b47b7ae1ef83e7ebd8ad89b35c20a1c13212d035e5cd1279161c08490557f833bc96081b5b4f539ad5a03b241cdb0bbb5cfab3f275ded908aa458e3d866f58490557f5d6e044aeb2ab0715e0ddbe0dba972f40fd782bbd1dc0c563ca0c19c2f385cdd9390935592549093168352600e90915281208054831660019081179091557f88a70ed86e3a980c5357808226ae2f7f87303c74486aecdae79f17de41f9cf0080548416821790557fe38096d56a41577b8871d6f2197653c18c8c6e26967a7d2a522015e3318ab7d8805484168217905573041375343c3bd1bb28b40b5ce7b4665a9a6e21d09091527fdaca80441da638a1c4cfe6664cf1f72f2dd7b0d6d328233f50f8e99ff1cd43e0805490921617905550620003d69050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200037457805160ff1916838001178555620003a4565b82800160010185558215620003a4579182015b82811115620003a457825182559160200191906001019062000387565b50620003b2929150620003b6565b5090565b620003d391905b80821115620003b25760008155600101620003bd565b90565b61106c80620003e66000396000f3006060604052600436106101485763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166305b95822811461014d57806306fdde031461016e578063095ea7b3146101f857806318160ddd1461022e5780631d73fb931461025357806323b872dd14610275578063313ce5671461029d578063378dc3dc146102c65780633a67a0f6146102d95780633c4b40b8146102ec5780634bb278f31461031b57806354d188641461032e5780635923c7f91461034157806359be5e45146103545780635a3b7e421461036757806370a082311461037a5780638da5cb5b1461039957806395d89b41146103ac578063a9059cbb146103bf578063b9d2fa35146103e1578063bef97c8714610400578063d7ca994914610413578063dd62ed3e14610426578063e10e95c91461044b578063f2fde38b1461045e575b600080fd5b341561015857600080fd5b61016c600160a060020a036004351661047d565b005b341561017957600080fd5b6101816104ec565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101bd5780820151838201526020016101a5565b50505050905090810190601f1680156101ea5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561020357600080fd5b61021a600160a060020a036004351660243561058a565b604051901515815260200160405180910390f35b341561023957600080fd5b610241610647565b60405190815260200160405180910390f35b341561025e57600080fd5b61021a600160a060020a036004351660243561064d565b341561028057600080fd5b61021a600160a060020a036004358116906024351660443561068f565b34156102a857600080fd5b6102b061070d565b60405160ff909116815260200160405180910390f35b34156102d157600080fd5b610241610716565b34156102e457600080fd5b61016c61071c565b34156102f757600080fd5b6102ff610787565b604051600160a060020a03909116815260200160405180910390f35b341561032657600080fd5b61016c610796565b341561033957600080fd5b610241610946565b341561034c57600080fd5b61024161094c565b341561035f57600080fd5b610241610952565b341561037257600080fd5b610181610aa0565b341561038557600080fd5b610241600160a060020a0360043516610b0b565b34156103a457600080fd5b6102ff610b1d565b34156103b757600080fd5b610181610b2c565b34156103ca57600080fd5b61021a600160a060020a0360043516602435610b97565b34156103ec57600080fd5b61016c600160a060020a0360043516610c13565b341561040b57600080fd5b61021a610ca6565b341561041e57600080fd5b610241610caf565b341561043157600080fd5b610241600160a060020a0360043581169060243516610cb5565b341561045657600080fd5b61021a610cd2565b341561046957600080fd5b61016c600160a060020a0360043516610ce2565b60075433600160a060020a0390811691161461049557fe5b60085460a060020a900460ff1615156104ad57600080fd5b600854600160a060020a03828116911614156104c857600080fd5b600160a060020a03166000908152600e60205260409020805460ff19166001179055565b60018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105825780601f1061055757610100808354040283529160200191610582565b820191906000526020600020905b81548152906001019060200180831161056557829003601f168201915b505050505081565b600082600160a060020a03811615156105a257600080fd5b8215806105d25750600160a060020a03338116600090815260066020908152604080832093881683529290522054155b15156105dd57600080fd5b600160a060020a03338116600081815260066020908152604080832094891680845294909152908190208690557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259086905190815260200160405180910390a35060019392505050565b60045481565b600082600160a060020a038116151561066557600080fd5b60075433600160a060020a0390811691161461067d57fe5b6106878484610d5b565b949350505050565b600082600160a060020a03811615156106a757600080fd5b600854859060a060020a900460ff16156106e757600160a060020a0381166000908152600e602052604090205460ff1615156106e257600080fd5b6106f8565b600d5460ff1615156106f857600080fd5b610703868686610e58565b9695505050505050565b60035460ff1681565b600a5481565b60075433600160a060020a0390811691161461073457fe5b600d5460ff16151561074557600080fd5b600d805460ff19169055600160a060020a0333167fe4e1bd53368c1f6ab96631b284b855345d15dfbdc71054b5796ba0a42153584060405160405180910390a2565b600854600160a060020a031681565b60075433600160a060020a039081169116146107ae57fe5b60085460a060020a900460ff1615156107c657600080fd5b6107ce610952565b600b8190556107f7906064906107eb90600f63ffffffff610fdd16565b9063ffffffff61100816565b600c90815560088054600160a060020a039081166000908152600560205260408082208290557f833bc96081b5b4f539ad5a03b241cdb0bbb5cfab3f275ded908aa458e3d866f58290557f5d6e044aeb2ab0715e0ddbe0dba972f40fd782bbd1dc0c563ca0c19c2f385cdd82905593547347c8f28e6056374aba3df0854306c2556b10460182527f3592c6fab48b47b7ae1ef83e7ebd8ad89b35c20a1c13212d035e5cd1279161c055825474ff0000000000000000000000000000000000000000198116909355600d805460ff191660011790559181169230909116917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef915190815260200160405180910390a333600160a060020a03167fd0e5eaaad928655181d43ca1fb4d47483e60e23e9c17f165728d9979d2d9b93a60045460405190815260200160405180910390a2565b600c5481565b60095481565b600854600160a060020a03166000908152600560205260408120546009548291610992916109859163ffffffff61101f16565b829063ffffffff61103116565b7347c8f28e6056374aba3df0854306c2556b10460160005260056020527f3592c6fab48b47b7ae1ef83e7ebd8ad89b35c20a1c13212d035e5cd1279161c0546009549192506109ea916109859163ffffffff61101f16565b73cad0afb8ec657d0db9518b930855534f6433360f60005260056020527f833bc96081b5b4f539ad5a03b241cdb0bbb5cfab3f275ded908aa458e3d866f554600954919250610a42916109859163ffffffff61101f16565b73041375343c3bd1bb28b40b5ce7b4665a9a6e21d060005260056020527f5d6e044aeb2ab0715e0ddbe0dba972f40fd782bbd1dc0c563ca0c19c2f385cdd54600954919250610a9a916109859163ffffffff61101f16565b92915050565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105825780601f1061055757610100808354040283529160200191610582565b60056020526000908152604090205481565b600754600160a060020a031681565b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105825780601f1061055757610100808354040283529160200191610582565b600082600160a060020a0381161515610baf57600080fd5b600854339060a060020a900460ff1615610bef57600160a060020a0381166000908152600e602052604090205460ff161515610bea57600080fd5b610c00565b600d5460ff161515610c0057600080fd5b610c0a8585610d5b565b95945050505050565b60075433600160a060020a03908116911614610c2b57fe5b60085460a060020a900460ff161515610c4357600080fd5b600854600160a060020a0382811691161415610c5e57600080fd5b600160a060020a0381166000908152600e602052604090205460ff161515610c8557600080fd5b600160a060020a03166000908152600e60205260409020805460ff19169055565b600d5460ff1681565b600b5481565b600660209081526000928352604080842090915290825290205481565b60085460a060020a900460ff1681565b80600160a060020a0381161515610cf857600080fd5b60075433600160a060020a03908116911614610d1057fe5b600754600160a060020a0383811691161415610d2b57600080fd5b506007805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600082600160a060020a0381161515610d7357600080fd5b600160a060020a033316600090815260056020526040902054831115610d9857600080fd5b600160a060020a033316600090815260056020526040902054610dc1908463ffffffff61101f16565b600160a060020a033381166000908152600560205260408082209390935590861681522054610df6908463ffffffff61103116565b600160a060020a0380861660008181526005602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9086905190815260200160405180910390a35060019392505050565b600082600160a060020a0381161515610e7057600080fd5b600160a060020a0380861660009081526006602090815260408083203390941683529290522054831115610ea357600080fd5b600160a060020a038516600090815260056020526040902054831115610ec857600080fd5b600160a060020a0380861660009081526006602090815260408083203390941683529290522054610eff908463ffffffff61101f16565b600160a060020a038087166000818152600660209081526040808320339095168352938152838220949094559081526005909252902054610f46908463ffffffff61101f16565b600160a060020a038087166000908152600560205260408082209390935590861681522054610f7b908463ffffffff61103116565b600160a060020a03808616600081815260056020526040908190209390935591908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9086905190815260200160405180910390a3506001949350505050565b6000828202831580610ff95750828482811515610ff657fe5b04145b151561100157fe5b9392505050565b600080828481151561101657fe5b04949350505050565b60008282111561102b57fe5b50900390565b60008282018381101561100157fe00a165627a7a72305820644dea3ffa2c83bae658f41296ea6b7893ac2a677dab878d922f5a70c0f77a330029

Deployed Bytecode

0x6060604052600436106101485763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166305b95822811461014d57806306fdde031461016e578063095ea7b3146101f857806318160ddd1461022e5780631d73fb931461025357806323b872dd14610275578063313ce5671461029d578063378dc3dc146102c65780633a67a0f6146102d95780633c4b40b8146102ec5780634bb278f31461031b57806354d188641461032e5780635923c7f91461034157806359be5e45146103545780635a3b7e421461036757806370a082311461037a5780638da5cb5b1461039957806395d89b41146103ac578063a9059cbb146103bf578063b9d2fa35146103e1578063bef97c8714610400578063d7ca994914610413578063dd62ed3e14610426578063e10e95c91461044b578063f2fde38b1461045e575b600080fd5b341561015857600080fd5b61016c600160a060020a036004351661047d565b005b341561017957600080fd5b6101816104ec565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101bd5780820151838201526020016101a5565b50505050905090810190601f1680156101ea5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561020357600080fd5b61021a600160a060020a036004351660243561058a565b604051901515815260200160405180910390f35b341561023957600080fd5b610241610647565b60405190815260200160405180910390f35b341561025e57600080fd5b61021a600160a060020a036004351660243561064d565b341561028057600080fd5b61021a600160a060020a036004358116906024351660443561068f565b34156102a857600080fd5b6102b061070d565b60405160ff909116815260200160405180910390f35b34156102d157600080fd5b610241610716565b34156102e457600080fd5b61016c61071c565b34156102f757600080fd5b6102ff610787565b604051600160a060020a03909116815260200160405180910390f35b341561032657600080fd5b61016c610796565b341561033957600080fd5b610241610946565b341561034c57600080fd5b61024161094c565b341561035f57600080fd5b610241610952565b341561037257600080fd5b610181610aa0565b341561038557600080fd5b610241600160a060020a0360043516610b0b565b34156103a457600080fd5b6102ff610b1d565b34156103b757600080fd5b610181610b2c565b34156103ca57600080fd5b61021a600160a060020a0360043516602435610b97565b34156103ec57600080fd5b61016c600160a060020a0360043516610c13565b341561040b57600080fd5b61021a610ca6565b341561041e57600080fd5b610241610caf565b341561043157600080fd5b610241600160a060020a0360043581169060243516610cb5565b341561045657600080fd5b61021a610cd2565b341561046957600080fd5b61016c600160a060020a0360043516610ce2565b60075433600160a060020a0390811691161461049557fe5b60085460a060020a900460ff1615156104ad57600080fd5b600854600160a060020a03828116911614156104c857600080fd5b600160a060020a03166000908152600e60205260409020805460ff19166001179055565b60018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105825780601f1061055757610100808354040283529160200191610582565b820191906000526020600020905b81548152906001019060200180831161056557829003601f168201915b505050505081565b600082600160a060020a03811615156105a257600080fd5b8215806105d25750600160a060020a03338116600090815260066020908152604080832093881683529290522054155b15156105dd57600080fd5b600160a060020a03338116600081815260066020908152604080832094891680845294909152908190208690557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259086905190815260200160405180910390a35060019392505050565b60045481565b600082600160a060020a038116151561066557600080fd5b60075433600160a060020a0390811691161461067d57fe5b6106878484610d5b565b949350505050565b600082600160a060020a03811615156106a757600080fd5b600854859060a060020a900460ff16156106e757600160a060020a0381166000908152600e602052604090205460ff1615156106e257600080fd5b6106f8565b600d5460ff1615156106f857600080fd5b610703868686610e58565b9695505050505050565b60035460ff1681565b600a5481565b60075433600160a060020a0390811691161461073457fe5b600d5460ff16151561074557600080fd5b600d805460ff19169055600160a060020a0333167fe4e1bd53368c1f6ab96631b284b855345d15dfbdc71054b5796ba0a42153584060405160405180910390a2565b600854600160a060020a031681565b60075433600160a060020a039081169116146107ae57fe5b60085460a060020a900460ff1615156107c657600080fd5b6107ce610952565b600b8190556107f7906064906107eb90600f63ffffffff610fdd16565b9063ffffffff61100816565b600c90815560088054600160a060020a039081166000908152600560205260408082208290557f833bc96081b5b4f539ad5a03b241cdb0bbb5cfab3f275ded908aa458e3d866f58290557f5d6e044aeb2ab0715e0ddbe0dba972f40fd782bbd1dc0c563ca0c19c2f385cdd82905593547347c8f28e6056374aba3df0854306c2556b10460182527f3592c6fab48b47b7ae1ef83e7ebd8ad89b35c20a1c13212d035e5cd1279161c055825474ff0000000000000000000000000000000000000000198116909355600d805460ff191660011790559181169230909116917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef915190815260200160405180910390a333600160a060020a03167fd0e5eaaad928655181d43ca1fb4d47483e60e23e9c17f165728d9979d2d9b93a60045460405190815260200160405180910390a2565b600c5481565b60095481565b600854600160a060020a03166000908152600560205260408120546009548291610992916109859163ffffffff61101f16565b829063ffffffff61103116565b7347c8f28e6056374aba3df0854306c2556b10460160005260056020527f3592c6fab48b47b7ae1ef83e7ebd8ad89b35c20a1c13212d035e5cd1279161c0546009549192506109ea916109859163ffffffff61101f16565b73cad0afb8ec657d0db9518b930855534f6433360f60005260056020527f833bc96081b5b4f539ad5a03b241cdb0bbb5cfab3f275ded908aa458e3d866f554600954919250610a42916109859163ffffffff61101f16565b73041375343c3bd1bb28b40b5ce7b4665a9a6e21d060005260056020527f5d6e044aeb2ab0715e0ddbe0dba972f40fd782bbd1dc0c563ca0c19c2f385cdd54600954919250610a9a916109859163ffffffff61101f16565b92915050565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105825780601f1061055757610100808354040283529160200191610582565b60056020526000908152604090205481565b600754600160a060020a031681565b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105825780601f1061055757610100808354040283529160200191610582565b600082600160a060020a0381161515610baf57600080fd5b600854339060a060020a900460ff1615610bef57600160a060020a0381166000908152600e602052604090205460ff161515610bea57600080fd5b610c00565b600d5460ff161515610c0057600080fd5b610c0a8585610d5b565b95945050505050565b60075433600160a060020a03908116911614610c2b57fe5b60085460a060020a900460ff161515610c4357600080fd5b600854600160a060020a0382811691161415610c5e57600080fd5b600160a060020a0381166000908152600e602052604090205460ff161515610c8557600080fd5b600160a060020a03166000908152600e60205260409020805460ff19169055565b600d5460ff1681565b600b5481565b600660209081526000928352604080842090915290825290205481565b60085460a060020a900460ff1681565b80600160a060020a0381161515610cf857600080fd5b60075433600160a060020a03908116911614610d1057fe5b600754600160a060020a0383811691161415610d2b57600080fd5b506007805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600082600160a060020a0381161515610d7357600080fd5b600160a060020a033316600090815260056020526040902054831115610d9857600080fd5b600160a060020a033316600090815260056020526040902054610dc1908463ffffffff61101f16565b600160a060020a033381166000908152600560205260408082209390935590861681522054610df6908463ffffffff61103116565b600160a060020a0380861660008181526005602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9086905190815260200160405180910390a35060019392505050565b600082600160a060020a0381161515610e7057600080fd5b600160a060020a0380861660009081526006602090815260408083203390941683529290522054831115610ea357600080fd5b600160a060020a038516600090815260056020526040902054831115610ec857600080fd5b600160a060020a0380861660009081526006602090815260408083203390941683529290522054610eff908463ffffffff61101f16565b600160a060020a038087166000818152600660209081526040808320339095168352938152838220949094559081526005909252902054610f46908463ffffffff61101f16565b600160a060020a038087166000908152600560205260408082209390935590861681522054610f7b908463ffffffff61103116565b600160a060020a03808616600081815260056020526040908190209390935591908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9086905190815260200160405180910390a3506001949350505050565b6000828202831580610ff95750828482811515610ff657fe5b04145b151561100157fe5b9392505050565b600080828481151561101657fe5b04949350505050565b60008282111561102b57fe5b50900390565b60008282018381101561100157fe00a165627a7a72305820644dea3ffa2c83bae658f41296ea6b7893ac2a677dab878d922f5a70c0f77a330029

Swarm Source

bzzr://644dea3ffa2c83bae658f41296ea6b7893ac2a677dab878d922f5a70c0f77a33

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.