ETH Price: $2,640.14 (-0.86%)

Contract

0x8AD5B423096548ff65F4FC3C8BcA404DEa8C66Eb
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Purchase58193292018-06-19 23:14:382427 days ago1529450078IN
0x8AD5B423...DEa8C66Eb
0.4356 ETH0.004261918
Purchase57885612018-06-14 17:16:392432 days ago1528996599IN
0x8AD5B423...DEa8C66Eb
0.1 ETH0.0106516620
Purchase57813962018-06-13 11:32:242433 days ago1528889544IN
0x8AD5B423...DEa8C66Eb
1.9 ETH0.0097688620
Purchase57722932018-06-11 21:09:492435 days ago1528751389IN
0x8AD5B423...DEa8C66Eb
0.2051 ETH0.0097606220
Purchase57528292018-06-08 10:31:462438 days ago1528453906IN
0x8AD5B423...DEa8C66Eb
7.656 ETH0.0106805220
Purchase57499942018-06-07 22:23:202439 days ago1528410200IN
0x8AD5B423...DEa8C66Eb
7.83556788 ETH0.009764820
Purchase57386562018-06-05 22:11:512441 days ago1528236711IN
0x8AD5B423...DEa8C66Eb
7.76804635 ETH0.0097644620
Purchase57194662018-06-02 12:16:482444 days ago1527941808IN
0x8AD5B423...DEa8C66Eb
8.16704483 ETH0.0097660820
Purchase57048072018-05-30 21:51:032447 days ago1527717063IN
0x8AD5B423...DEa8C66Eb
0.59 ETH0.0107002420
Purchase57007202018-05-30 4:19:352448 days ago1527653975IN
0x8AD5B423...DEa8C66Eb
0.79265501 ETH0.0063992813
Purchase57006972018-05-30 4:12:262448 days ago1527653546IN
0x8AD5B423...DEa8C66Eb
2.95399674 ETH0.0073449915
Purchase56972632018-05-29 13:36:052448 days ago1527600965IN
0x8AD5B423...DEa8C66Eb
0.16575 ETH0.0106503820
Purchase56619972018-05-23 7:59:532454 days ago1527062393IN
0x8AD5B423...DEa8C66Eb
7.56045095 ETH0.0097644620
Purchase56503572018-05-21 6:14:382457 days ago1526883278IN
0x8AD5B423...DEa8C66Eb
6.54665234 ETH0.009764820
Purchase56424742018-05-19 21:00:102458 days ago1526763610IN
0x8AD5B423...DEa8C66Eb
6.92541547 ETH0.0097660820
Purchase56340102018-05-18 8:46:462459 days ago1526633206IN
0x8AD5B423...DEa8C66Eb
6.85 ETH0.0097704820
Purchase56256992018-05-16 21:35:522461 days ago1526506552IN
0x8AD5B423...DEa8C66Eb
6.74154194 ETH0.0097889220
Purchase56228232018-05-16 9:25:032461 days ago1526462703IN
0x8AD5B423...DEa8C66Eb
1 ETH0.0117154122
Purchase56144292018-05-14 22:00:552463 days ago1526335255IN
0x8AD5B423...DEa8C66Eb
6.54755932 ETH0.009790220
Purchase56127492018-05-14 14:53:262463 days ago1526309606IN
0x8AD5B423...DEa8C66Eb
0.4 ETH0.009790220
Purchase56074232018-05-13 16:29:502464 days ago1526228990IN
0x8AD5B423...DEa8C66Eb
6.52178614 ETH0.009787320
Purchase56061932018-05-13 11:20:142464 days ago1526210414IN
0x8AD5B423...DEa8C66Eb
0.23 ETH0.010656420
Purchase55918632018-05-10 23:26:162467 days ago1525994776IN
0x8AD5B423...DEa8C66Eb
6.56331734 ETH0.003443977
Purchase55915442018-05-10 22:01:042467 days ago1525989664IN
0x8AD5B423...DEa8C66Eb
6.5136516 ETH0.0098371620
Purchase55881182018-05-10 7:37:202467 days ago1525937840IN
0x8AD5B423...DEa8C66Eb
6 ETH0.0107512620
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
58193292018-06-19 23:14:382427 days ago1529450078
0x8AD5B423...DEa8C66Eb
0.4356 ETH
57885612018-06-14 17:16:392432 days ago1528996599
0x8AD5B423...DEa8C66Eb
0.1 ETH
57813962018-06-13 11:32:242433 days ago1528889544
0x8AD5B423...DEa8C66Eb
1.9 ETH
57722932018-06-11 21:09:492435 days ago1528751389
0x8AD5B423...DEa8C66Eb
0.2051 ETH
57528292018-06-08 10:31:462438 days ago1528453906
0x8AD5B423...DEa8C66Eb
7.656 ETH
57499942018-06-07 22:23:202439 days ago1528410200
0x8AD5B423...DEa8C66Eb
7.83556788 ETH
57386562018-06-05 22:11:512441 days ago1528236711
0x8AD5B423...DEa8C66Eb
7.76804635 ETH
57194662018-06-02 12:16:482444 days ago1527941808
0x8AD5B423...DEa8C66Eb
8.16704483 ETH
57048072018-05-30 21:51:032447 days ago1527717063
0x8AD5B423...DEa8C66Eb
0.59 ETH
57007202018-05-30 4:19:352448 days ago1527653975
0x8AD5B423...DEa8C66Eb
0.79265501 ETH
57006972018-05-30 4:12:262448 days ago1527653546
0x8AD5B423...DEa8C66Eb
2.95399674 ETH
56972632018-05-29 13:36:052448 days ago1527600965
0x8AD5B423...DEa8C66Eb
0.16575 ETH
56619972018-05-23 7:59:532454 days ago1527062393
0x8AD5B423...DEa8C66Eb
7.56045095 ETH
56503572018-05-21 6:14:382457 days ago1526883278
0x8AD5B423...DEa8C66Eb
6.54665234 ETH
56424742018-05-19 21:00:102458 days ago1526763610
0x8AD5B423...DEa8C66Eb
6.92541547 ETH
56340102018-05-18 8:46:462459 days ago1526633206
0x8AD5B423...DEa8C66Eb
6.85 ETH
56256992018-05-16 21:35:522461 days ago1526506552
0x8AD5B423...DEa8C66Eb
6.74154194 ETH
56228232018-05-16 9:25:032461 days ago1526462703
0x8AD5B423...DEa8C66Eb
1 ETH
56144292018-05-14 22:00:552463 days ago1526335255
0x8AD5B423...DEa8C66Eb
6.54755932 ETH
56127492018-05-14 14:53:262463 days ago1526309606
0x8AD5B423...DEa8C66Eb
0.4 ETH
56074232018-05-13 16:29:502464 days ago1526228990
0x8AD5B423...DEa8C66Eb
6.52178614 ETH
56061932018-05-13 11:20:142464 days ago1526210414
0x8AD5B423...DEa8C66Eb
0.23 ETH
55918632018-05-10 23:26:162467 days ago1525994776
0x8AD5B423...DEa8C66Eb
6.56331734 ETH
55915442018-05-10 22:01:042467 days ago1525989664
0x8AD5B423...DEa8C66Eb
6.5136516 ETH
55881182018-05-10 7:37:202467 days ago1525937840
0x8AD5B423...DEa8C66Eb
6 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Marketplace

Compiler Version
v0.4.19+commit.c4cbbb05

Optimization Enabled:
No with 200 runs

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

pragma solidity ^0.4.19;

contract DigixConstants {
  /// general constants
  uint256 constant SECONDS_IN_A_DAY = 24 * 60 * 60;

  /// asset events
  uint256 constant ASSET_EVENT_CREATED_VENDOR_ORDER = 1;
  uint256 constant ASSET_EVENT_CREATED_TRANSFER_ORDER = 2;
  uint256 constant ASSET_EVENT_CREATED_REPLACEMENT_ORDER = 3;
  uint256 constant ASSET_EVENT_FULFILLED_VENDOR_ORDER = 4;
  uint256 constant ASSET_EVENT_FULFILLED_TRANSFER_ORDER = 5;
  uint256 constant ASSET_EVENT_FULFILLED_REPLACEMENT_ORDER = 6;
  uint256 constant ASSET_EVENT_MINTED = 7;
  uint256 constant ASSET_EVENT_MINTED_REPLACEMENT = 8;
  uint256 constant ASSET_EVENT_RECASTED = 9;
  uint256 constant ASSET_EVENT_REDEEMED = 10;
  uint256 constant ASSET_EVENT_FAILED_AUDIT = 11;
  uint256 constant ASSET_EVENT_ADMIN_FAILED = 12;
  uint256 constant ASSET_EVENT_REMINTED = 13;

  /// roles
  uint256 constant ROLE_ZERO_ANYONE = 0;
  uint256 constant ROLE_ROOT = 1;
  uint256 constant ROLE_VENDOR = 2;
  uint256 constant ROLE_XFERAUTH = 3;
  uint256 constant ROLE_POPADMIN = 4;
  uint256 constant ROLE_CUSTODIAN = 5;
  uint256 constant ROLE_AUDITOR = 6;
  uint256 constant ROLE_MARKETPLACE_ADMIN = 7;
  uint256 constant ROLE_KYC_ADMIN = 8;
  uint256 constant ROLE_FEES_ADMIN = 9;
  uint256 constant ROLE_DOCS_UPLOADER = 10;
  uint256 constant ROLE_KYC_RECASTER = 11;
  uint256 constant ROLE_FEES_DISTRIBUTION_ADMIN = 12;

  /// states
  uint256 constant STATE_ZERO_UNDEFINED = 0;
  uint256 constant STATE_CREATED = 1;
  uint256 constant STATE_VENDOR_ORDER = 2;
  uint256 constant STATE_TRANSFER = 3;
  uint256 constant STATE_CUSTODIAN_DELIVERY = 4;
  uint256 constant STATE_MINTED = 5;
  uint256 constant STATE_AUDIT_FAILURE = 6;
  uint256 constant STATE_REPLACEMENT_ORDER = 7;
  uint256 constant STATE_REPLACEMENT_DELIVERY = 8;
  uint256 constant STATE_RECASTED = 9;
  uint256 constant STATE_REDEEMED = 10;
  uint256 constant STATE_ADMIN_FAILURE = 11;

  /// interactive contracts
  bytes32 constant CONTRACT_INTERACTIVE_ASSETS_EXPLORER = "i:asset:explorer";
  bytes32 constant CONTRACT_INTERACTIVE_DIGIX_DIRECTORY = "i:directory";
  bytes32 constant CONTRACT_INTERACTIVE_MARKETPLACE = "i:mp";
  bytes32 constant CONTRACT_INTERACTIVE_MARKETPLACE_ADMIN = "i:mpadmin";
  bytes32 constant CONTRACT_INTERACTIVE_POPADMIN = "i:popadmin";
  bytes32 constant CONTRACT_INTERACTIVE_PRODUCTS_LIST = "i:products";
  bytes32 constant CONTRACT_INTERACTIVE_TOKEN = "i:token";
  bytes32 constant CONTRACT_INTERACTIVE_BULK_WRAPPER = "i:bulk-wrapper";
  bytes32 constant CONTRACT_INTERACTIVE_TOKEN_CONFIG = "i:token:config";
  bytes32 constant CONTRACT_INTERACTIVE_TOKEN_INFORMATION = "i:token:information";
  bytes32 constant CONTRACT_INTERACTIVE_MARKETPLACE_INFORMATION = "i:mp:information";
  bytes32 constant CONTRACT_INTERACTIVE_IDENTITY = "i:identity";

  /// controller contracts
  bytes32 constant CONTRACT_CONTROLLER_ASSETS = "c:asset";
  bytes32 constant CONTRACT_CONTROLLER_ASSETS_RECAST = "c:asset:recast";
  bytes32 constant CONTRACT_CONTROLLER_ASSETS_EXPLORER = "c:explorer";
  bytes32 constant CONTRACT_CONTROLLER_DIGIX_DIRECTORY = "c:directory";
  bytes32 constant CONTRACT_CONTROLLER_MARKETPLACE = "c:mp";
  bytes32 constant CONTRACT_CONTROLLER_MARKETPLACE_ADMIN = "c:mpadmin";
  bytes32 constant CONTRACT_CONTROLLER_PRODUCTS_LIST = "c:products";

  bytes32 constant CONTRACT_CONTROLLER_TOKEN_APPROVAL = "c:token:approval";
  bytes32 constant CONTRACT_CONTROLLER_TOKEN_CONFIG = "c:token:config";
  bytes32 constant CONTRACT_CONTROLLER_TOKEN_INFO = "c:token:info";
  bytes32 constant CONTRACT_CONTROLLER_TOKEN_TRANSFER = "c:token:transfer";

  bytes32 constant CONTRACT_CONTROLLER_JOB_ID = "c:jobid";
  bytes32 constant CONTRACT_CONTROLLER_IDENTITY = "c:identity";

  /// storage contracts
  bytes32 constant CONTRACT_STORAGE_ASSETS = "s:asset";
  bytes32 constant CONTRACT_STORAGE_ASSET_EVENTS = "s:asset:events";
  bytes32 constant CONTRACT_STORAGE_DIGIX_DIRECTORY = "s:directory";
  bytes32 constant CONTRACT_STORAGE_MARKETPLACE = "s:mp";
  bytes32 constant CONTRACT_STORAGE_PRODUCTS_LIST = "s:products";
  bytes32 constant CONTRACT_STORAGE_GOLD_TOKEN = "s:goldtoken";
  bytes32 constant CONTRACT_STORAGE_JOB_ID = "s:jobid";
  bytes32 constant CONTRACT_STORAGE_IDENTITY = "s:identity";

  /// service contracts
  bytes32 constant CONTRACT_SERVICE_TOKEN_DEMURRAGE = "sv:tdemurrage";
  bytes32 constant CONTRACT_SERVICE_MARKETPLACE = "sv:mp";
  bytes32 constant CONTRACT_SERVICE_DIRECTORY = "sv:directory";

  /// fees distributors
  bytes32 constant CONTRACT_DEMURRAGE_FEES_DISTRIBUTOR = "fees:distributor:demurrage";
  bytes32 constant CONTRACT_RECAST_FEES_DISTRIBUTOR = "fees:distributor:recast";
  bytes32 constant CONTRACT_TRANSFER_FEES_DISTRIBUTOR = "fees:distributor:transfer";
}

contract ContractResolver {
  address public owner;
  bool public locked;
  function init_register_contract(bytes32 _key, address _contract_address) public returns (bool _success);
  function unregister_contract(bytes32 _key) public returns (bool _success);
  function get_contract(bytes32 _key) public constant returns (address _contract);
}

contract ResolverClient {

  /// The address of the resolver contract for this project
  address public resolver;
  /// The key to identify this contract
  bytes32 public key;

  /// Make our own address available to us as a constant
  address public CONTRACT_ADDRESS;

  /// Function modifier to check if msg.sender corresponds to the resolved address of a given key
  /// @param _contract The resolver key
  modifier if_sender_is(bytes32 _contract) {
    require(msg.sender == ContractResolver(resolver).get_contract(_contract));
    _;
  }

  /// Function modifier to check resolver's locking status.
  modifier unless_resolver_is_locked() {
    require(is_locked() == false);
    _;
  }

  /// @dev Initialize new contract
  /// @param _key the resolver key for this contract
  /// @return _success if the initialization is successful
  function init(bytes32 _key, address _resolver)
           internal
           returns (bool _success)
  {
    bool _is_locked = ContractResolver(_resolver).locked();
    if (_is_locked == false) {
      CONTRACT_ADDRESS = address(this);
      resolver = _resolver;
      key = _key;
      require(ContractResolver(resolver).init_register_contract(key, CONTRACT_ADDRESS));
      _success = true;
    }  else {
      _success = false;
    }
  }

  /// @dev Destroy the contract and unregister self from the ContractResolver
  /// @dev Can only be called by the owner of ContractResolver
  function destroy()
           public
           returns (bool _success)
  {
    bool _is_locked = ContractResolver(resolver).locked();
    require(!_is_locked);

    address _owner_of_contract_resolver = ContractResolver(resolver).owner();
    require(msg.sender == _owner_of_contract_resolver);

    _success = ContractResolver(resolver).unregister_contract(key);
    require(_success);

    selfdestruct(_owner_of_contract_resolver);
  }

  /// @dev Check if resolver is locked
  /// @return _locked if the resolver is currently locked
  function is_locked()
           private
           constant
           returns (bool _locked)
  {
    _locked = ContractResolver(resolver).locked();
  }

  /// @dev Get the address of a contract
  /// @param _key the resolver key to look up
  /// @return _contract the address of the contract
  function get_contract(bytes32 _key)
           public
           constant
           returns (address _contract)
  {
    _contract = ContractResolver(resolver).get_contract(_key);
  }
}

/// @title Some useful constants
/// @author Digix Holdings Pte Ltd
contract Constants {
  address constant NULL_ADDRESS = address(0x0);
  uint256 constant ZERO = uint256(0);
  bytes32 constant EMPTY = bytes32(0x0);
}

/// @title Condition based access control
/// @author Digix Holdings Pte Ltd
contract ACConditions is Constants {

  modifier not_null_address(address _item) {
    require(_item != NULL_ADDRESS);
    _;
  }

  modifier if_null_address(address _item) {
    require(_item == NULL_ADDRESS);
    _;
  }

  modifier not_null_uint(uint256 _item) {
    require(_item != ZERO);
    _;
  }

  modifier if_null_uint(uint256 _item) {
    require(_item == ZERO);
    _;
  }

  modifier not_empty_bytes(bytes32 _item) {
    require(_item != EMPTY);
    _;
  }

  modifier if_empty_bytes(bytes32 _item) {
    require(_item == EMPTY);
    _;
  }

  modifier not_null_string(string _item) {
    bytes memory _i = bytes(_item);
    require(_i.length > 0);
    _;
  }

  modifier if_null_string(string _item) {
    bytes memory _i = bytes(_item);
    require(_i.length == 0);
    _;
  }

  modifier require_gas(uint256 _requiredgas) {
    require(msg.gas  >= (_requiredgas - 22000));
    _;
  }

  function is_contract(address _contract)
           public
           constant
           returns (bool _is_contract)
  {
    uint32 _code_length;

    assembly {
      _code_length := extcodesize(_contract)
    }

    if(_code_length > 1) {
      _is_contract = true;
    } else {
      _is_contract = false;
    }
  }

  modifier if_contract(address _contract) {
    require(is_contract(_contract) == true);
    _;
  }

  modifier unless_contract(address _contract) {
    require(is_contract(_contract) == false);
    _;
  }
}

contract MarketplaceAdminController {
}

contract MarketplaceStorage {
}

contract MarketplaceController {
  function put_purchase_for(uint256 _wei_sent, address _buyer, address _recipient, uint256 _block_number, uint256 _nonce, uint256 _wei_per_dgx_mg, address _signer, bytes _signature) payable public returns (bool _success, uint256 _purchased_amount);
}

contract MarketplaceCommon is ResolverClient, ACConditions, DigixConstants {

  function marketplace_admin_controller()
           internal
           constant
           returns (MarketplaceAdminController _contract)
  {
    _contract = MarketplaceAdminController(get_contract(CONTRACT_CONTROLLER_MARKETPLACE_ADMIN));
  }

  function marketplace_storage()
           internal
           constant
           returns (MarketplaceStorage _contract)
  {
    _contract = MarketplaceStorage(get_contract(CONTRACT_STORAGE_MARKETPLACE));
  }

  function marketplace_controller()
           internal
           constant
           returns (MarketplaceController _contract)
  {
    _contract = MarketplaceController(get_contract(CONTRACT_CONTROLLER_MARKETPLACE));
  }
}

/// @title Digix's Marketplace
/// @author Digix Holdings Pte Ltd
/// @notice This contract is for KYC-approved users to purchase DGX using ETH
contract Marketplace is MarketplaceCommon {

  function Marketplace(address _resolver) public
  {
    require(init(CONTRACT_INTERACTIVE_MARKETPLACE, _resolver));
  }

  /// @dev purchase DGX gold
  /// @param _block_number Block number from DTPO (Digix Trusted Price Oracle)
  /// @param _nonce Nonce from DTPO
  /// @param _wei_per_dgx_mg Price in wei for one milligram of DGX
  /// @param _signer Address of the DTPO signer
  /// @param _signature Signature of the payload
  /// @return {
  ///   "_success": "returns true if operation is successful",
  ///   "_purchased_amount": "DGX nanograms received"
  /// }
  function purchase(uint256 _block_number, uint256 _nonce, uint256 _wei_per_dgx_mg, address _signer, bytes _signature)
           payable
           public
           returns (bool _success, uint256 _purchased_amount)
  {
    address _sender = msg.sender;

    (_success, _purchased_amount) =
      marketplace_controller().put_purchase_for.value(msg.value).gas(600000)(msg.value, _sender, _sender, _block_number,
                                                                             _nonce, _wei_per_dgx_mg, _signer, _signature);
    require(_success);
  }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"resolver","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_block_number","type":"uint256"},{"name":"_nonce","type":"uint256"},{"name":"_wei_per_dgx_mg","type":"uint256"},{"name":"_signer","type":"address"},{"name":"_signature","type":"bytes"}],"name":"purchase","outputs":[{"name":"_success","type":"bool"},{"name":"_purchased_amount","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"key","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_key","type":"bytes32"}],"name":"get_contract","outputs":[{"name":"_contract","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_contract","type":"address"}],"name":"is_contract","outputs":[{"name":"_is_contract","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"destroy","outputs":[{"name":"_success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"CONTRACT_ADDRESS","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_resolver","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"}]

6060604052341561000f57600080fd5b604051602080610e2a833981016040528080519060200190919050506100687f693a6d700000000000000000000000000000000000000000000000000000000082610079640100000000026108c6176401000000009004565b151561007357600080fd5b506102d1565b6000808273ffffffffffffffffffffffffffffffffffffffff1663cf3090126000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b15156100e857600080fd5b6102c65a03f115156100f957600080fd5b5050506040518051905090506000151581151514156102c55730600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550826000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083600181600019169055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c0f6ef4a600154600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000604051602001526040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083600019166000191681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600087803b151561029657600080fd5b6102c65a03f115156102a757600080fd5b5050506040518051905015156102bc57600080fd5b600191506102ca565b600091505b5092915050565b610b4a806102e06000396000f300606060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806304f3bcec1461008857806315ca65f0146100dd5780633943380c146101885780633f83acff146101b9578063649c07d51461022057806383197ef014610271578063db4ecbc11461029e575b600080fd5b341561009357600080fd5b61009b6102f3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610167600480803590602001909190803590602001909190803590602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091905050610318565b60405180831515151581526020018281526020019250505060405180910390f35b341561019357600080fd5b61019b6104f8565b60405180826000191660001916815260200191505060405180910390f35b34156101c457600080fd5b6101de6004808035600019169060200190919050506104fe565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561022b57600080fd5b610257600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506105c2565b604051808215151515815260200191505060405180910390f35b341561027c57600080fd5b6102846105ec565b604051808215151515815260200191505060405180910390f35b34156102a957600080fd5b6102b1610870565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000339050610328610896565b73ffffffffffffffffffffffffffffffffffffffff1663896ca3f434620927c0903485868e8e8e8e8e6040518b63ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808981526020018873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018581526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561046a57808201518184015260208101905061044f565b50505050905090810190601f1680156104975780820380516001836020036101000a031916815260200191505b50995050505050505050505060408051808303818589803b15156104ba57600080fd5b88f115156104c757600080fd5b50505050506040518051906020018051905080935081945050508215156104ed57600080fd5b509550959350505050565b60015481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16633f83acff836000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808260001916600019168152602001915050602060405180830381600087803b15156105a057600080fd5b6102c65a03f115156105b157600080fd5b505050604051805190509050919050565b600080823b905060018163ffffffff1611156105e157600191506105e6565b600091505b50919050565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663cf3090126000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561067e57600080fd5b6102c65a03f1151561068f57600080fd5b505050604051805190509150811515156106a857600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561073557600080fd5b6102c65a03f1151561074657600080fd5b5050506040518051905090508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561078c57600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c8b56bda6001546000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808260001916600019168152602001915050602060405180830381600087803b151561082e57600080fd5b6102c65a03f1151561083f57600080fd5b50505060405180519050925082151561085757600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16ff5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006108c17f633a6d70000000000000000000000000000000000000000000000000000000006104fe565b905090565b6000808273ffffffffffffffffffffffffffffffffffffffff1663cf3090126000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561093557600080fd5b6102c65a03f1151561094657600080fd5b505050604051805190509050600015158115151415610b125730600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550826000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083600181600019169055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c0f6ef4a600154600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000604051602001526040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083600019166000191681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600087803b1515610ae357600080fd5b6102c65a03f11515610af457600080fd5b505050604051805190501515610b0957600080fd5b60019150610b17565b600091505b50929150505600a165627a7a72305820b5f9769074c431a31af4eefdf27265691316627c294e1efc20c86bbcd30632aa0029000000000000000000000000db2ddb220b8a55e0e4412130e6ae74d136c04ba2

Deployed Bytecode

0x606060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806304f3bcec1461008857806315ca65f0146100dd5780633943380c146101885780633f83acff146101b9578063649c07d51461022057806383197ef014610271578063db4ecbc11461029e575b600080fd5b341561009357600080fd5b61009b6102f3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610167600480803590602001909190803590602001909190803590602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091905050610318565b60405180831515151581526020018281526020019250505060405180910390f35b341561019357600080fd5b61019b6104f8565b60405180826000191660001916815260200191505060405180910390f35b34156101c457600080fd5b6101de6004808035600019169060200190919050506104fe565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561022b57600080fd5b610257600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506105c2565b604051808215151515815260200191505060405180910390f35b341561027c57600080fd5b6102846105ec565b604051808215151515815260200191505060405180910390f35b34156102a957600080fd5b6102b1610870565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000339050610328610896565b73ffffffffffffffffffffffffffffffffffffffff1663896ca3f434620927c0903485868e8e8e8e8e6040518b63ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808981526020018873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018581526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561046a57808201518184015260208101905061044f565b50505050905090810190601f1680156104975780820380516001836020036101000a031916815260200191505b50995050505050505050505060408051808303818589803b15156104ba57600080fd5b88f115156104c757600080fd5b50505050506040518051906020018051905080935081945050508215156104ed57600080fd5b509550959350505050565b60015481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16633f83acff836000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808260001916600019168152602001915050602060405180830381600087803b15156105a057600080fd5b6102c65a03f115156105b157600080fd5b505050604051805190509050919050565b600080823b905060018163ffffffff1611156105e157600191506105e6565b600091505b50919050565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663cf3090126000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561067e57600080fd5b6102c65a03f1151561068f57600080fd5b505050604051805190509150811515156106a857600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561073557600080fd5b6102c65a03f1151561074657600080fd5b5050506040518051905090508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561078c57600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c8b56bda6001546000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808260001916600019168152602001915050602060405180830381600087803b151561082e57600080fd5b6102c65a03f1151561083f57600080fd5b50505060405180519050925082151561085757600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16ff5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006108c17f633a6d70000000000000000000000000000000000000000000000000000000006104fe565b905090565b6000808273ffffffffffffffffffffffffffffffffffffffff1663cf3090126000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561093557600080fd5b6102c65a03f1151561094657600080fd5b505050604051805190509050600015158115151415610b125730600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550826000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083600181600019169055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c0f6ef4a600154600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000604051602001526040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083600019166000191681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600087803b1515610ae357600080fd5b6102c65a03f11515610af457600080fd5b505050604051805190501515610b0957600080fd5b60019150610b17565b600091505b50929150505600a165627a7a72305820b5f9769074c431a31af4eefdf27265691316627c294e1efc20c86bbcd30632aa0029

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

000000000000000000000000db2ddb220b8a55e0e4412130e6ae74d136c04ba2

-----Decoded View---------------
Arg [0] : _resolver (address): 0xdb2ddb220b8a55e0e4412130E6aE74d136c04bA2

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000db2ddb220b8a55e0e4412130e6ae74d136c04ba2


Swarm Source

bzzr://b5f9769074c431a31af4eefdf27265691316627c294e1efc20c86bbcd30632aa

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.