ETH Price: $3,250.80 (+4.36%)
Gas: 2 Gwei

Contract

0x9419FBEcFA0a9E38A96bE2d818DAA13dcA72396E
 

Overview

ETH Balance

0.008751 ETH

Eth Value

$28.45 (@ $3,250.80/ETH)

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Withdraw73029832019-03-04 12:39:211971 days ago1551703161IN
0x9419FBEc...dcA72396E
0 ETH0.000075582
Withdraw Token73029062019-03-04 12:21:331971 days ago1551702093IN
0x9419FBEc...dcA72396E
0 ETH0.000163565
Withdraw Token73028962019-03-04 12:18:371971 days ago1551701917IN
0x9419FBEc...dcA72396E
0 ETH0.0004345
Withdraw73028912019-03-04 12:17:251971 days ago1551701845IN
0x9419FBEc...dcA72396E
0 ETH0.000113573
Withdraw Token73028852019-03-04 12:15:151971 days ago1551701715IN
0x9419FBEc...dcA72396E
0 ETH0.00029753
Withdraw Token73028802019-03-04 12:14:061971 days ago1551701646IN
0x9419FBEc...dcA72396E
0 ETH0.000098323
Trade69732682018-12-29 9:55:512036 days ago1546077351IN
0x9419FBEc...dcA72396E
0 ETH0.000346929
Cancel Order69732682018-12-29 9:55:512036 days ago1546077351IN
0x9419FBEc...dcA72396E
0 ETH0.000061461
Trade67584512018-11-23 15:09:572072 days ago1542985797IN
0x9419FBEc...dcA72396E
0 ETH0.000153424
Cancel Order67584512018-11-23 15:09:572072 days ago1542985797IN
0x9419FBEc...dcA72396E
0 ETH0.000061531
Trade66900392018-11-12 10:01:042083 days ago1542016864IN
0x9419FBEc...dcA72396E
0 ETH0.000436815
Trade66900392018-11-12 10:01:042083 days ago1542016864IN
0x9419FBEc...dcA72396E
0 ETH0.000437455
Trade66899912018-11-12 9:51:272083 days ago1542016287IN
0x9419FBEc...dcA72396E
0 ETH0.000661167.5625
Trade66899882018-11-12 9:50:552083 days ago1542016255IN
0x9419FBEc...dcA72396E
0 ETH0.000661167.5625
Trade66899072018-11-12 9:33:492083 days ago1542015229IN
0x9419FBEc...dcA72396E
0 ETH0.0008736310
Trade66899072018-11-12 9:33:492083 days ago1542015229IN
0x9419FBEc...dcA72396E
0 ETH0.0008749110
Trade66898042018-11-12 9:05:292083 days ago1542013529IN
0x9419FBEc...dcA72396E
0 ETH0.000358714.1
Trade66897962018-11-12 9:03:072083 days ago1542013387IN
0x9419FBEc...dcA72396E
0 ETH0.000611547
Trade66896652018-11-12 8:28:442083 days ago1542011324IN
0x9419FBEc...dcA72396E
0 ETH0.000524946
Trade66896622018-11-12 8:28:012083 days ago1542011281IN
0x9419FBEc...dcA72396E
0 ETH0.000523796
Trade66896592018-11-12 8:27:022083 days ago1542011222IN
0x9419FBEc...dcA72396E
0 ETH0.000524566
Trade66896592018-11-12 8:27:022083 days ago1542011222IN
0x9419FBEc...dcA72396E
0 ETH0.000523796
Trade66895982018-11-12 8:12:402083 days ago1542010360IN
0x9419FBEc...dcA72396E
0 ETH0.000349964
Trade66895972018-11-12 8:12:322083 days ago1542010352IN
0x9419FBEc...dcA72396E
0 ETH0.000437135
Trade66895322018-11-12 7:58:202083 days ago1542009500IN
0x9419FBEc...dcA72396E
0 ETH0.000437455
View all transactions

Latest 11 internal transactions

Advanced mode:
Parent Transaction Hash Block From To
73029832019-03-04 12:39:211971 days ago1551703161
0x9419FBEc...dcA72396E
0.92 ETH
73028912019-03-04 12:17:251971 days ago1551701845
0x9419FBEc...dcA72396E
0.121139 ETH
66666562018-11-08 14:01:592087 days ago1541685719
0x9419FBEc...dcA72396E
0.500678 ETH
66666182018-11-08 13:54:082087 days ago1541685248
0x9419FBEc...dcA72396E
0.11599 ETH
66126632018-10-30 17:19:272096 days ago1540919967
0x9419FBEc...dcA72396E
0.78788 ETH
66049832018-10-29 11:21:132097 days ago1540812073
0x9419FBEc...dcA72396E
0.2 ETH
65749922018-10-24 13:34:132102 days ago1540388053
0x9419FBEc...dcA72396E
0.035 ETH
65749572018-10-24 13:25:552102 days ago1540387555
0x9419FBEc...dcA72396E
0.097 ETH
65687992018-10-23 13:13:032103 days ago1540300383
0x9419FBEc...dcA72396E
0.04 ETH
65687922018-10-23 13:10:542103 days ago1540300254
0x9419FBEc...dcA72396E
0.1 ETH
65315282018-10-17 11:14:262109 days ago1539774866
0x9419FBEc...dcA72396E
0.001 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Excalibur

Compiler Version
v0.4.11+commit.68ef5810

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2018-10-12
*/

pragma solidity ^0.4.9;

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

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

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

  function assert(bool assertion) internal {
    if (!assertion) throw;
  }
}


contract Token {
  /// @notice send `_value` token to `_to` from `msg.sender`
  /// @param _to The address of the recipient
  /// @param _value The amount of token to be transferred
  /// @return Whether the transfer was successful or not
  function transfer(address _to, uint256 _value) returns (bool success) {}

  /// @notice send `_value` token to `_to` from `_from` on the condition it is approved by `_from`
  /// @param _from The address of the sender
  /// @param _to The address of the recipient
  /// @param _value The amount of token to be transferred
  /// @return Whether the transfer was successful or not
  function transferFrom(address _from, address _to, uint256 _value) returns (bool success) {}
}


contract Excalibur is SafeMath {

  address public admin;
  bool public tradeState;
  string public message;

  mapping (address => mapping (address => uint)) public tokens; // mapping of token addresses to mapping of account balances (token=0 means Ether)
  mapping (address => mapping (bytes32 => bool)) public orders; // mapping of user accounts to mapping of order hashes to booleans (true = submitted by user, equivalent to offchain signature)
  mapping (address => mapping (bytes32 => uint)) public orderFills; // mapping of user accounts to mapping of order hashes to uints (amount of order that has been filled)


  event Order(address tokenGet, uint amountGet, address tokenGive, uint amountGive, uint expires, uint nonce, address user, bytes32 hash);
  event Cancel(address tokenGet, uint amountGet, address tokenGive, uint amountGive, uint expires, uint nonce, address user, uint8 v, bytes32 r, bytes32 s, bytes32 hash, string pair);
  event Trade(address tokenGet, uint amountGet, address tokenGive, uint amountGive, address get, address give, bytes32 hash, string pair);
  event Deposit(address token, address user, uint amount, uint balance);
  event Withdraw(address token, address user, uint amount, uint balance);


  function Excalibur() {
      admin = msg.sender;
      tradeState = true;
  }

  modifier onlyAdmin {
        if (msg.sender != admin) throw;
        _;
  }

  modifier tradeIsOpen {
        if (!tradeState) throw;
        _;
  }

  function checkAdmin() onlyAdmin constant returns (bool) {
    return true;
  }

  function transferOwnership(address newAdmin) onlyAdmin {
    admin = newAdmin;
  }

  function systemMessage(string msg) onlyAdmin {
    message = msg;
  }

  function changeTradeState(bool state_) onlyAdmin {
    tradeState = state_;
  }

  function deposit() payable tradeIsOpen {
    // 0x0000000000000000000000000000000000000000
    tokens[0][msg.sender] = safeAdd(tokens[0][msg.sender], msg.value);
    Deposit(0, msg.sender, msg.value, tokens[0][msg.sender]);
  }

  function withdraw(uint amount) {
    if (tokens[0][msg.sender] < amount) throw;
    tokens[0][msg.sender] = safeSub(tokens[0][msg.sender], amount);
    if (!msg.sender.call.value(amount)()) throw;
    Withdraw(0x0000000000000000000000000000000000000000, msg.sender, amount, tokens[0][msg.sender]);
  }

  function depositToken(address token, uint amount) tradeIsOpen {
    // remember to call Token(address).approve(this, amount) or this contract will not be able to do the transfer on your behalf.
    if (token==0) throw;
    if (!Token(token).transferFrom(msg.sender, this, amount)) throw;
    tokens[token][msg.sender] = safeAdd(tokens[token][msg.sender], amount);
    Deposit(token, msg.sender, amount, tokens[token][msg.sender]);
  }

  function withdrawToken(address token, uint amount) {
    if (token==0) throw;
    if (tokens[token][msg.sender] < amount) throw;
    tokens[token][msg.sender] = safeSub(tokens[token][msg.sender], amount);
    if (!Token(token).transfer(msg.sender, amount)) throw;
    Withdraw(token, msg.sender, amount, tokens[token][msg.sender]);
  }

  function balanceOf(address token, address user) constant returns (uint) {
    return tokens[token][user];
  }

  function order(address tokenGet, uint amountGet, address tokenGive, uint amountGive, uint expires, uint nonce) {
    bytes32 hash = sha3(this, tokenGet, amountGet, tokenGive, amountGive, expires, nonce);
    orders[msg.sender][hash] = true;
    Order(tokenGet, amountGet, tokenGive, amountGive, expires, nonce, msg.sender, hash);
  }

  function trade(address tokenGet, uint amountGet, address tokenGive, uint amountGive, uint expires, uint nonce, address user, uint8 v, bytes32 r, bytes32 s, uint amount, string pair) {
    // amount is in amountGet terms
    bytes32 hash = sha3(this, tokenGet, amountGet, tokenGive, amountGive, expires, nonce);
    if (!( (orders[user][hash] || ecrecover(sha3("\x19Ethereum Signed Message:\n32", hash),v,r,s) == user) && block.number <= expires && safeAdd(orderFills[user][hash], amount) <= amountGet)) throw;
    tradeBalances(tokenGet, amountGet, tokenGive, amountGive, user, amount);
    orderFills[user][hash] = safeAdd(orderFills[user][hash], amount);
    Trade(tokenGet, amount, tokenGive, amountGive * amount / amountGet, user, msg.sender, hash, pair);
  }

  function tradeBalances(address tokenGet, uint amountGet, address tokenGive, uint amountGive, address user, uint amount) private {
    tokens[tokenGet][msg.sender] = safeSub(tokens[tokenGet][msg.sender], amount);
    tokens[tokenGet][user] = safeAdd(tokens[tokenGet][user], amount);
    tokens[tokenGive][user] = safeSub(tokens[tokenGive][user], safeMul(amountGive, amount) / amountGet);
    tokens[tokenGive][msg.sender] = safeAdd(tokens[tokenGive][msg.sender], safeMul(amountGive, amount) / amountGet);
  }

  function cancelOrder(address tokenGet, uint amountGet, address tokenGive, uint amountGive, uint expires, uint nonce, uint8 v, bytes32 r, bytes32 s, string pair) {
    bytes32 hash = sha3(this, tokenGet, amountGet, tokenGive, amountGive, expires, nonce);
    if (!(orders[msg.sender][hash] || ecrecover(sha3("\x19Ethereum Signed Message:\n32", hash),v,r,s) == msg.sender)) throw;
    orderFills[msg.sender][hash] = amountGet;
    Cancel(tokenGet, amountGet, tokenGive, amountGive, expires, nonce, msg.sender, v, r, s, hash, pair);
  }
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[{"name":"tokenGet","type":"address"},{"name":"amountGet","type":"uint256"},{"name":"tokenGive","type":"address"},{"name":"amountGive","type":"uint256"},{"name":"expires","type":"uint256"},{"name":"nonce","type":"uint256"}],"name":"order","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"bytes32"}],"name":"orderFills","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"depositToken","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"tokens","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"msg","type":"string"}],"name":"systemMessage","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"tradeState","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"withdrawToken","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"checkAdmin","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"bytes32"}],"name":"orders","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"deposit","outputs":[],"payable":true,"type":"function"},{"constant":false,"inputs":[{"name":"tokenGet","type":"address"},{"name":"amountGet","type":"uint256"},{"name":"tokenGive","type":"address"},{"name":"amountGive","type":"uint256"},{"name":"expires","type":"uint256"},{"name":"nonce","type":"uint256"},{"name":"v","type":"uint8"},{"name":"r","type":"bytes32"},{"name":"s","type":"bytes32"},{"name":"pair","type":"string"}],"name":"cancelOrder","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"message","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"state_","type":"bool"}],"name":"changeTradeState","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"tokenGet","type":"address"},{"name":"amountGet","type":"uint256"},{"name":"tokenGive","type":"address"},{"name":"amountGive","type":"uint256"},{"name":"expires","type":"uint256"},{"name":"nonce","type":"uint256"},{"name":"user","type":"address"},{"name":"v","type":"uint8"},{"name":"r","type":"bytes32"},{"name":"s","type":"bytes32"},{"name":"amount","type":"uint256"},{"name":"pair","type":"string"}],"name":"trade","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"newAdmin","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"},{"name":"user","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"admin","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"inputs":[],"payable":false,"type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenGet","type":"address"},{"indexed":false,"name":"amountGet","type":"uint256"},{"indexed":false,"name":"tokenGive","type":"address"},{"indexed":false,"name":"amountGive","type":"uint256"},{"indexed":false,"name":"expires","type":"uint256"},{"indexed":false,"name":"nonce","type":"uint256"},{"indexed":false,"name":"user","type":"address"},{"indexed":false,"name":"hash","type":"bytes32"}],"name":"Order","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenGet","type":"address"},{"indexed":false,"name":"amountGet","type":"uint256"},{"indexed":false,"name":"tokenGive","type":"address"},{"indexed":false,"name":"amountGive","type":"uint256"},{"indexed":false,"name":"expires","type":"uint256"},{"indexed":false,"name":"nonce","type":"uint256"},{"indexed":false,"name":"user","type":"address"},{"indexed":false,"name":"v","type":"uint8"},{"indexed":false,"name":"r","type":"bytes32"},{"indexed":false,"name":"s","type":"bytes32"},{"indexed":false,"name":"hash","type":"bytes32"},{"indexed":false,"name":"pair","type":"string"}],"name":"Cancel","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenGet","type":"address"},{"indexed":false,"name":"amountGet","type":"uint256"},{"indexed":false,"name":"tokenGive","type":"address"},{"indexed":false,"name":"amountGive","type":"uint256"},{"indexed":false,"name":"get","type":"address"},{"indexed":false,"name":"give","type":"address"},{"indexed":false,"name":"hash","type":"bytes32"},{"indexed":false,"name":"pair","type":"string"}],"name":"Trade","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"token","type":"address"},{"indexed":false,"name":"user","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"balance","type":"uint256"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"token","type":"address"},{"indexed":false,"name":"user","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"balance","type":"uint256"}],"name":"Withdraw","type":"event"}]

6060604052341561000c57fe5b5b6000805474010000000000000000000000000000000000000000600160a060020a031990911633600160a060020a03161760a060020a60ff0219161790555b5b61164b8061005c6000396000f300606060405236156100f95763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630b92766681146100fb57806319774d431461012c5780632e1a7d4d1461015d578063338b5dea14610172578063508493bc14610193578063780f4987146101c7578063864e18271461021f5780639e281a9814610243578063ab15022614610264578063bb5f462914610288578063d0e30db0146102bb578063d25d603c146102c5578063e21f37ce14610351578063ea769e97146103e1578063eb30db7b146103f8578063f2fde38b1461048a578063f7888aec146104a8578063f851a440146104dc575bfe5b341561010357fe5b61012a600160a060020a03600435811690602435906044351660643560843560a435610508565b005b341561013457fe5b61014b600160a060020a03600435166024356105f8565b60408051918252519081900360200190f35b341561016557fe5b61012a600435610615565b005b341561017a57fe5b61012a600160a060020a0360043516602435610735565b005b341561019b57fe5b61014b600160a060020a03600435811690602435166108a6565b60408051918252519081900360200190f35b34156101cf57fe5b61012a600480803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437509496506108c395505050505050565b005b341561022757fe5b61022f6108f8565b604080519115158252519081900360200190f35b341561024b57fe5b61012a600160a060020a0360043516602435610908565b005b341561026c57fe5b61022f610aaa565b604080519115158252519081900360200190f35b341561029057fe5b61022f600160a060020a0360043516602435610acf565b604080519115158252519081900360200190f35b61012a610aef565b005b34156102cd57fe5b60408051602060046101243581810135601f810184900484028501840190955284845261012a948235600160a060020a0390811695602480359660443590931695606435956084359560a4359560c43560ff169560e43595610104359594610144949293910191908190840183828082843750949650610bab95505050505050565b005b341561035957fe5b610361610e8c565b6040805160208082528351818301528351919283929083019185019080838382156103a7575b8051825260208311156103a757601f199092019160209182019101610387565b505050905090810190601f1680156103d35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156103e957fe5b61012a6004351515610f19565b005b341561040057fe5b604080516020601f6101643560048181013592830184900484028501840190955281845261012a94600160a060020a0381358116956024803596604435841696606435966084359660a4359660c435169560ff60e4351695610104359561012435956101443595610184949301918190840183828082843750949650610f6295505050505050565b005b341561049257fe5b61012a600160a060020a036004351661130c565b005b34156104b057fe5b61014b600160a060020a0360043581169060243516611355565b60408051918252519081900360200190f35b34156104e457fe5b6104ec611382565b60408051600160a060020a039092168252519081900360200190f35b604080516c01000000000000000000000000600160a060020a0330811682028352808a168083026014850152602884018a90528189169283026048850152605c8401889052607c8401879052609c840186905284519384900360bc01842033909216600081815260036020908152878220858352815290879020805460ff191660011790559185529084018a905283850192909252606083018790526080830186905260a0830185905260c083019190915260e0820181905291517f08b7c7403064bde78ffa9e582e006036e20bd05b350cc9873bd55ad22ad475c9918190036101000190a15b50505050505050565b600460209081526000928352604080842090915290825290205481565b33600160a060020a031660009081526000805160206116008339815191526020526040902054819010156106495760006000fd5b33600160a060020a0316600090815260008051602061160083398151915260205260409020546106799082611391565b33600160a060020a031660008181526000805160206116008339815191526020526040808220939093559151909183919081818185876187965a03f19250505015156106c55760006000fd5b600160a060020a03331660008181526000805160206116008339815191526020908152604080832054815193845291830193909352818301849052606082015290517ff341246adaac6f497bc2a656f546ab9e182111d630394f0c57c710a59a2cb5679181900360800190a15b50565b60005460a060020a900460ff16151561074e5760006000fd5b600160a060020a03821615156107645760006000fd5b604080516000602091820181905282517f23b872dd000000000000000000000000000000000000000000000000000000008152600160a060020a0333811660048301523081166024830152604482018690529351938616936323b872dd9360648084019491938390030190829087803b15156107dc57fe5b6102c65a03f115156107ea57fe5b505060405151151590506107fe5760006000fd5b600160a060020a038083166000908152600260209081526040808320339094168352929052205461082f90826113aa565b600160a060020a038381166000818152600260209081526040808320339095168084529482529182902085905581519283528201929092528082018490526060810192909252517fdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d79181900360800190a15b5b5050565b600260209081526000928352604080842090915290825290205481565b60005433600160a060020a039081169116146108df5760006000fd5b80516108a190600190602084019061155f565b505b5b50565b60005460a060020a900460ff1681565b600160a060020a038216151561091e5760006000fd5b600160a060020a0380831660009081526002602090815260408083203390941683529290522054819010156109535760006000fd5b600160a060020a03808316600090815260026020908152604080832033909416835292905220546109849082611391565b600160a060020a03808416600081815260026020908152604080832033909516808452948252808320959095558451810182905284517fa9059cbb0000000000000000000000000000000000000000000000000000000081526004810194909452602484018690529351919363a9059cbb936044808201949293918390030190829087803b1515610a1157fe5b6102c65a03f11515610a1f57fe5b50506040515115159050610a335760006000fd5b600160a060020a03808316600081815260026020908152604080832033959095168084529482529182902054825193845290830193909352818101849052606082019290925290517ff341246adaac6f497bc2a656f546ab9e182111d630394f0c57c710a59a2cb5679181900360800190a15b5050565b6000805433600160a060020a03908116911614610ac75760006000fd5b5060015b5b90565b600360209081526000928352604080842090915290825290205460ff1681565b60005460a060020a900460ff161515610b085760006000fd5b33600160a060020a031660009081526000805160206116008339815191526020526040902054610b3890346113aa565b33600160a060020a031660008181526000805160206116008339815191526020908152604080832085905580519283529082019290925234818301526060810192909252517fdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d79181900360800190a15b5b565b604080516c01000000000000000000000000600160a060020a0330811682028352808e1682026014840152602883018d9052808c169091026048830152605c82018a9052607c8201899052609c820188905282519182900360bc01909120339091166000908152600360209081528382208383529052919091205460ff1680610cdd5750604080517f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c8101839052815190819003603c018120600082815260208381018552928401819052835191825260ff891682840152818401889052606082018790529251600160a060020a033316936001936080808501949193601f1981019392819003909101918661646e5a03f11515610cc957fe5b505060206040510351600160a060020a0316145b1515610ce95760006000fd5b896004600033600160a060020a0316600160a060020a0316815260200190815260200160002060008360001916600019168152602001908152602001600020819055507f48a0ef50295081b3381c5929b1f7bf4ba631f3668fb00d0b9b8907b4f40f395f8b8b8b8b8b8b338c8c8c8b8d604051808d600160a060020a0316600160a060020a031681526020018c81526020018b600160a060020a0316600160a060020a031681526020018a815260200189815260200188815260200187600160a060020a0316600160a060020a031681526020018660ff1660ff16815260200185600019166000191681526020018460001916600019168152602001836000191660001916815260200180602001828103825283818151815260200191508051906020019080838360008314610e3a575b805182526020831115610e3a57601f199092019160209182019101610e1a565b505050905090810190601f168015610e665780820380516001836020036101000a031916815260200191505b509d505050505050505050505050505060405180910390a15b5050505050505050505050565b60018054604080516020600284861615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610f115780601f10610ee657610100808354040283529160200191610f11565b820191906000526020600020905b815481529060010190602001808311610ef457829003601f168201915b505050505081565b60005433600160a060020a03908116911614610f355760006000fd5b6000805474ff0000000000000000000000000000000000000000191660a060020a831515021790555b5b50565b6000308d8d8d8d8d8d6040518088600160a060020a0316600160a060020a03166c0100000000000000000000000002815260140187600160a060020a0316600160a060020a03166c0100000000000000000000000002815260140186815260200185600160a060020a0316600160a060020a03166c01000000000000000000000000028152601401848152602001838152602001828152602001975050505050505050604051809103902090506003600088600160a060020a0316600160a060020a031681526020019081526020016000206000826000191660001916815260200190815260200160002060009054906101000a900460ff168061110f5750604080517f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c8101839052815190819003603c018120600082815260208381018552928401819052835191825260ff8a1682840152818401899052606082018890529251600160a060020a038b16936001936080808501949193601f1981019392819003909101918661646e5a03f115156110fb57fe5b505060206040510351600160a060020a0316145b801561111b5750884311155b80156111555750600160a060020a03871660009081526004602090815260408083208484529091529020548c9061115290856113aa565b11155b15156111615760006000fd5b61116f8d8d8d8d8b886113d2565b600160a060020a038716600090815260046020908152604080832084845290915290205461119d90846113aa565b600160a060020a03881660009081526004602090815260408083208584529091529020557fd1d68e612a72065830c390ff50559490fe823b841adfa01a3d0bdf132b00ca748d848d8f8e83028115156111f257fe5b048b3387896040518089600160a060020a0316600160a060020a0316815260200188815260200187600160a060020a0316600160a060020a0316815260200186815260200185600160a060020a0316600160a060020a0316815260200184600160a060020a0316600160a060020a031681526020018360001916600019168152602001806020018281038252838181518152602001915080519060200190808383600083146112bc575b8051825260208311156112bc57601f19909201916020918201910161129c565b505050905090810190601f1680156112e85780820380516001836020036101000a031916815260200191505b50995050505050505050505060405180910390a15b50505050505050505050505050565b60005433600160a060020a039081169116146113285760006000fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b600160a060020a038083166000908152600260209081526040808320938516835292905220545b92915050565b600054600160a060020a031681565b600061139f8383111561151f565b508082035b92915050565b60008282016113c78482108015906113c25750838210155b61151f565b8091505b5092915050565b600160a060020a03808716600090815260026020908152604080832033909416835292905220546114039082611391565b600160a060020a0387811660009081526002602090815260408083203385168452909152808220939093559084168152205461143f90826113aa565b600160a060020a0380881660009081526002602081815260408084208886168086529083528185209690965593891683529081528282209382529290925290205461149e908661148f8685611530565b81151561149857fe5b04611391565b600160a060020a03858116600090815260026020908152604080832087851684529091528082209390935533909116815220546114ef90866114e08685611530565b8115156114e957fe5b046113aa565b600160a060020a03808616600090815260026020908152604080832033909416835292905220555b505050505050565b8015156107325760006000fd5b5b50565b60008282026113c78415806113c2575083858381151561154c57fe5b04145b61151f565b8091505b5092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106115a057805160ff19168380011785556115cd565b828001600101855582156115cd579182015b828111156115cd5782518255916020019190600101906115b2565b5b506115da9291506115de565b5090565b610acb91905b808211156115da57600081556001016115e4565b5090565b905600ac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077ba165627a7a7230582019f5096d59207930c492856f1b132b131a2052a5be5c254aab14abdb189985bb0029

Deployed Bytecode

0x606060405236156100f95763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630b92766681146100fb57806319774d431461012c5780632e1a7d4d1461015d578063338b5dea14610172578063508493bc14610193578063780f4987146101c7578063864e18271461021f5780639e281a9814610243578063ab15022614610264578063bb5f462914610288578063d0e30db0146102bb578063d25d603c146102c5578063e21f37ce14610351578063ea769e97146103e1578063eb30db7b146103f8578063f2fde38b1461048a578063f7888aec146104a8578063f851a440146104dc575bfe5b341561010357fe5b61012a600160a060020a03600435811690602435906044351660643560843560a435610508565b005b341561013457fe5b61014b600160a060020a03600435166024356105f8565b60408051918252519081900360200190f35b341561016557fe5b61012a600435610615565b005b341561017a57fe5b61012a600160a060020a0360043516602435610735565b005b341561019b57fe5b61014b600160a060020a03600435811690602435166108a6565b60408051918252519081900360200190f35b34156101cf57fe5b61012a600480803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437509496506108c395505050505050565b005b341561022757fe5b61022f6108f8565b604080519115158252519081900360200190f35b341561024b57fe5b61012a600160a060020a0360043516602435610908565b005b341561026c57fe5b61022f610aaa565b604080519115158252519081900360200190f35b341561029057fe5b61022f600160a060020a0360043516602435610acf565b604080519115158252519081900360200190f35b61012a610aef565b005b34156102cd57fe5b60408051602060046101243581810135601f810184900484028501840190955284845261012a948235600160a060020a0390811695602480359660443590931695606435956084359560a4359560c43560ff169560e43595610104359594610144949293910191908190840183828082843750949650610bab95505050505050565b005b341561035957fe5b610361610e8c565b6040805160208082528351818301528351919283929083019185019080838382156103a7575b8051825260208311156103a757601f199092019160209182019101610387565b505050905090810190601f1680156103d35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156103e957fe5b61012a6004351515610f19565b005b341561040057fe5b604080516020601f6101643560048181013592830184900484028501840190955281845261012a94600160a060020a0381358116956024803596604435841696606435966084359660a4359660c435169560ff60e4351695610104359561012435956101443595610184949301918190840183828082843750949650610f6295505050505050565b005b341561049257fe5b61012a600160a060020a036004351661130c565b005b34156104b057fe5b61014b600160a060020a0360043581169060243516611355565b60408051918252519081900360200190f35b34156104e457fe5b6104ec611382565b60408051600160a060020a039092168252519081900360200190f35b604080516c01000000000000000000000000600160a060020a0330811682028352808a168083026014850152602884018a90528189169283026048850152605c8401889052607c8401879052609c840186905284519384900360bc01842033909216600081815260036020908152878220858352815290879020805460ff191660011790559185529084018a905283850192909252606083018790526080830186905260a0830185905260c083019190915260e0820181905291517f08b7c7403064bde78ffa9e582e006036e20bd05b350cc9873bd55ad22ad475c9918190036101000190a15b50505050505050565b600460209081526000928352604080842090915290825290205481565b33600160a060020a031660009081526000805160206116008339815191526020526040902054819010156106495760006000fd5b33600160a060020a0316600090815260008051602061160083398151915260205260409020546106799082611391565b33600160a060020a031660008181526000805160206116008339815191526020526040808220939093559151909183919081818185876187965a03f19250505015156106c55760006000fd5b600160a060020a03331660008181526000805160206116008339815191526020908152604080832054815193845291830193909352818301849052606082015290517ff341246adaac6f497bc2a656f546ab9e182111d630394f0c57c710a59a2cb5679181900360800190a15b50565b60005460a060020a900460ff16151561074e5760006000fd5b600160a060020a03821615156107645760006000fd5b604080516000602091820181905282517f23b872dd000000000000000000000000000000000000000000000000000000008152600160a060020a0333811660048301523081166024830152604482018690529351938616936323b872dd9360648084019491938390030190829087803b15156107dc57fe5b6102c65a03f115156107ea57fe5b505060405151151590506107fe5760006000fd5b600160a060020a038083166000908152600260209081526040808320339094168352929052205461082f90826113aa565b600160a060020a038381166000818152600260209081526040808320339095168084529482529182902085905581519283528201929092528082018490526060810192909252517fdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d79181900360800190a15b5b5050565b600260209081526000928352604080842090915290825290205481565b60005433600160a060020a039081169116146108df5760006000fd5b80516108a190600190602084019061155f565b505b5b50565b60005460a060020a900460ff1681565b600160a060020a038216151561091e5760006000fd5b600160a060020a0380831660009081526002602090815260408083203390941683529290522054819010156109535760006000fd5b600160a060020a03808316600090815260026020908152604080832033909416835292905220546109849082611391565b600160a060020a03808416600081815260026020908152604080832033909516808452948252808320959095558451810182905284517fa9059cbb0000000000000000000000000000000000000000000000000000000081526004810194909452602484018690529351919363a9059cbb936044808201949293918390030190829087803b1515610a1157fe5b6102c65a03f11515610a1f57fe5b50506040515115159050610a335760006000fd5b600160a060020a03808316600081815260026020908152604080832033959095168084529482529182902054825193845290830193909352818101849052606082019290925290517ff341246adaac6f497bc2a656f546ab9e182111d630394f0c57c710a59a2cb5679181900360800190a15b5050565b6000805433600160a060020a03908116911614610ac75760006000fd5b5060015b5b90565b600360209081526000928352604080842090915290825290205460ff1681565b60005460a060020a900460ff161515610b085760006000fd5b33600160a060020a031660009081526000805160206116008339815191526020526040902054610b3890346113aa565b33600160a060020a031660008181526000805160206116008339815191526020908152604080832085905580519283529082019290925234818301526060810192909252517fdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d79181900360800190a15b5b565b604080516c01000000000000000000000000600160a060020a0330811682028352808e1682026014840152602883018d9052808c169091026048830152605c82018a9052607c8201899052609c820188905282519182900360bc01909120339091166000908152600360209081528382208383529052919091205460ff1680610cdd5750604080517f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c8101839052815190819003603c018120600082815260208381018552928401819052835191825260ff891682840152818401889052606082018790529251600160a060020a033316936001936080808501949193601f1981019392819003909101918661646e5a03f11515610cc957fe5b505060206040510351600160a060020a0316145b1515610ce95760006000fd5b896004600033600160a060020a0316600160a060020a0316815260200190815260200160002060008360001916600019168152602001908152602001600020819055507f48a0ef50295081b3381c5929b1f7bf4ba631f3668fb00d0b9b8907b4f40f395f8b8b8b8b8b8b338c8c8c8b8d604051808d600160a060020a0316600160a060020a031681526020018c81526020018b600160a060020a0316600160a060020a031681526020018a815260200189815260200188815260200187600160a060020a0316600160a060020a031681526020018660ff1660ff16815260200185600019166000191681526020018460001916600019168152602001836000191660001916815260200180602001828103825283818151815260200191508051906020019080838360008314610e3a575b805182526020831115610e3a57601f199092019160209182019101610e1a565b505050905090810190601f168015610e665780820380516001836020036101000a031916815260200191505b509d505050505050505050505050505060405180910390a15b5050505050505050505050565b60018054604080516020600284861615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610f115780601f10610ee657610100808354040283529160200191610f11565b820191906000526020600020905b815481529060010190602001808311610ef457829003601f168201915b505050505081565b60005433600160a060020a03908116911614610f355760006000fd5b6000805474ff0000000000000000000000000000000000000000191660a060020a831515021790555b5b50565b6000308d8d8d8d8d8d6040518088600160a060020a0316600160a060020a03166c0100000000000000000000000002815260140187600160a060020a0316600160a060020a03166c0100000000000000000000000002815260140186815260200185600160a060020a0316600160a060020a03166c01000000000000000000000000028152601401848152602001838152602001828152602001975050505050505050604051809103902090506003600088600160a060020a0316600160a060020a031681526020019081526020016000206000826000191660001916815260200190815260200160002060009054906101000a900460ff168061110f5750604080517f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c8101839052815190819003603c018120600082815260208381018552928401819052835191825260ff8a1682840152818401899052606082018890529251600160a060020a038b16936001936080808501949193601f1981019392819003909101918661646e5a03f115156110fb57fe5b505060206040510351600160a060020a0316145b801561111b5750884311155b80156111555750600160a060020a03871660009081526004602090815260408083208484529091529020548c9061115290856113aa565b11155b15156111615760006000fd5b61116f8d8d8d8d8b886113d2565b600160a060020a038716600090815260046020908152604080832084845290915290205461119d90846113aa565b600160a060020a03881660009081526004602090815260408083208584529091529020557fd1d68e612a72065830c390ff50559490fe823b841adfa01a3d0bdf132b00ca748d848d8f8e83028115156111f257fe5b048b3387896040518089600160a060020a0316600160a060020a0316815260200188815260200187600160a060020a0316600160a060020a0316815260200186815260200185600160a060020a0316600160a060020a0316815260200184600160a060020a0316600160a060020a031681526020018360001916600019168152602001806020018281038252838181518152602001915080519060200190808383600083146112bc575b8051825260208311156112bc57601f19909201916020918201910161129c565b505050905090810190601f1680156112e85780820380516001836020036101000a031916815260200191505b50995050505050505050505060405180910390a15b50505050505050505050505050565b60005433600160a060020a039081169116146113285760006000fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b600160a060020a038083166000908152600260209081526040808320938516835292905220545b92915050565b600054600160a060020a031681565b600061139f8383111561151f565b508082035b92915050565b60008282016113c78482108015906113c25750838210155b61151f565b8091505b5092915050565b600160a060020a03808716600090815260026020908152604080832033909416835292905220546114039082611391565b600160a060020a0387811660009081526002602090815260408083203385168452909152808220939093559084168152205461143f90826113aa565b600160a060020a0380881660009081526002602081815260408084208886168086529083528185209690965593891683529081528282209382529290925290205461149e908661148f8685611530565b81151561149857fe5b04611391565b600160a060020a03858116600090815260026020908152604080832087851684529091528082209390935533909116815220546114ef90866114e08685611530565b8115156114e957fe5b046113aa565b600160a060020a03808616600090815260026020908152604080832033909416835292905220555b505050505050565b8015156107325760006000fd5b5b50565b60008282026113c78415806113c2575083858381151561154c57fe5b04145b61151f565b8091505b5092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106115a057805160ff19168380011785556115cd565b828001600101855582156115cd579182015b828111156115cd5782518255916020019190600101906115b2565b5b506115da9291506115de565b5090565b610acb91905b808211156115da57600081556001016115e4565b5090565b905600ac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077ba165627a7a7230582019f5096d59207930c492856f1b132b131a2052a5be5c254aab14abdb189985bb0029

Swarm Source

bzzr://19f5096d59207930c492856f1b132b131a2052a5be5c254aab14abdb189985bb

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.