ETH Price: $1,633.79 (+2.53%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Map Token134600782021-10-21 9:03:001271 days ago1634806980IN
0x33E71e64...8a2075AD2
0 ETH0.0076226665.56795887
Map Token126381112021-06-15 9:00:591399 days ago1623747659IN
0x33E71e64...8a2075AD2
0 ETH0.0016274114
Map Token123267172021-04-28 4:18:451447 days ago1619583525IN
0x33E71e64...8a2075AD2
0 ETH0.0045339839
Map Token123267122021-04-28 4:17:431447 days ago1619583463IN
0x33E71e64...8a2075AD2
0 ETH0.0045339839
Map Token117247682021-01-25 12:12:281540 days ago1611576748IN
0x33E71e64...8a2075AD2
0 ETH0.0025029270
Map Token117247652021-01-25 12:12:111540 days ago1611576731IN
0x33E71e64...8a2075AD2
0 ETH0.0078789270
Update Contract117247602021-01-25 12:10:401540 days ago1611576640IN
0x33E71e64...8a2075AD2
0 ETH0.0019034669.30000023
Update Contract117247572021-01-25 12:09:581540 days ago1611576598IN
0x33E71e64...8a2075AD2
0 ETH0.0018677568
Update Contract117247422021-01-25 12:06:511540 days ago1611576411IN
0x33E71e64...8a2075AD2
0 ETH0.0019034669.30000023
Update Contract117247402021-01-25 12:06:251540 days ago1611576385IN
0x33E71e64...8a2075AD2
0 ETH0.0033310471.37900023
Update Contract117247272021-01-25 12:03:511540 days ago1611576231IN
0x33E71e64...8a2075AD2
0 ETH0.0032315269.30000023
Update Contract117247142021-01-25 12:00:571540 days ago1611576057IN
0x33E71e64...8a2075AD2
0 ETH0.0034524774.00000145

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Registry

Compiler Version
v0.5.17+commit.d19bba13

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2021-07-08
*/

// File: @axie/contract-library/contracts/access/HasAdmin.sol

pragma solidity ^0.5.2;


contract HasAdmin {
  event AdminChanged(address indexed _oldAdmin, address indexed _newAdmin);
  event AdminRemoved(address indexed _oldAdmin);

  address public admin;

  modifier onlyAdmin {
    require(msg.sender == admin);
    _;
  }

  constructor() internal {
    admin = msg.sender;
    emit AdminChanged(address(0), admin);
  }

  function changeAdmin(address _newAdmin) external onlyAdmin {
    require(_newAdmin != address(0));
    emit AdminChanged(admin, _newAdmin);
    admin = _newAdmin;
  }

  function removeAdmin() external onlyAdmin {
    emit AdminRemoved(admin);
    admin = address(0);
  }
}
// File: contracts/chain/common/Registry.sol

pragma solidity ^0.5.17;



contract Registry is HasAdmin {

  event ContractAddressUpdated(
    string indexed _name,
    bytes32 indexed _code,
    address indexed _newAddress
  );

  event TokenMapped(
    address indexed _mainchainToken,
    address indexed _sidechainToken,
    uint32 _standard
  );

  string public constant GATEWAY = "GATEWAY";
  string public constant WETH_TOKEN = "WETH_TOKEN";
  string public constant VALIDATOR = "VALIDATOR";
  string public constant ACKNOWLEDGEMENT = "ACKNOWLEDGEMENT";

  struct TokenMapping {
    address mainchainToken;
    address sidechainToken;
    uint32 standard; // 20, 721 or any other standards
  }

  mapping(bytes32 => address) public contractAddresses;
  mapping(address => TokenMapping) public mainchainMap;
  mapping(address => TokenMapping) public sidechainMap;

  function getContract(string calldata _name)
    external
    view
    returns (address _address)
  {
    bytes32 _code = getCode(_name);
    _address = contractAddresses[_code];
    require(_address != address(0));
  }

  function isTokenMapped(address _token, uint32 _standard, bool _isMainchain)
    external
    view
    returns (bool)
  {
    TokenMapping memory _mapping = _getTokenMapping(_token, _isMainchain);

    return _mapping.mainchainToken != address(0) &&
      _mapping.sidechainToken != address(0) &&
      _mapping.standard == _standard;
  }

  function updateContract(string calldata _name, address _newAddress)
    external
    onlyAdmin
  {
    bytes32 _code = getCode(_name);
    contractAddresses[_code] = _newAddress;

    emit ContractAddressUpdated(_name, _code, _newAddress);
  }

  function mapToken(address _mainchainToken, address _sidechainToken, uint32 _standard)
    external
    onlyAdmin
  {
    TokenMapping memory _map = TokenMapping(
      _mainchainToken,
      _sidechainToken,
      _standard
    );

    mainchainMap[_mainchainToken] = _map;
    sidechainMap[_sidechainToken] = _map;

    emit TokenMapped(
      _mainchainToken,
      _sidechainToken,
      _standard
    );
  }

  function clearMapToken(address _mainchainToken, address _sidechainToken)
    external
    onlyAdmin
  {
    TokenMapping storage _mainchainMap = mainchainMap[_mainchainToken];
    _clearMapEntry(_mainchainMap);

    TokenMapping storage _sidechainMap = sidechainMap[_sidechainToken];
    _clearMapEntry(_sidechainMap);
  }

  function getMappedToken(
    address _token,
    bool _isMainchain
  )
    external
    view
  returns (
    address _mainchainToken,
    address _sidechainToken,
    uint32 _standard
  )
  {
    TokenMapping memory _mapping = _getTokenMapping(_token, _isMainchain);
    _mainchainToken = _mapping.mainchainToken;
    _sidechainToken = _mapping.sidechainToken;
    _standard = _mapping.standard;
  }

  function getCode(string memory _name)
    public
    pure
    returns (bytes32)
  {
    return keccak256(abi.encodePacked(_name));
  }

  function _getTokenMapping(
    address _token,
    bool isMainchain
  )
    internal
    view
    returns (TokenMapping memory _mapping)
  {
    if (isMainchain) {
      _mapping = mainchainMap[_token];
    } else {
      _mapping = sidechainMap[_token];
    }
  }

  function _clearMapEntry(TokenMapping storage _entry)
    internal
  {
    _entry.mainchainToken = address(0);
    _entry.sidechainToken = address(0);
    _entry.standard = 0;
  }
}

Contract Security Audit

Contract ABI

API
[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_oldAdmin","type":"address"},{"indexed":true,"internalType":"address","name":"_newAdmin","type":"address"}],"name":"AdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_oldAdmin","type":"address"}],"name":"AdminRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"string","name":"_name","type":"string"},{"indexed":true,"internalType":"bytes32","name":"_code","type":"bytes32"},{"indexed":true,"internalType":"address","name":"_newAddress","type":"address"}],"name":"ContractAddressUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_mainchainToken","type":"address"},{"indexed":true,"internalType":"address","name":"_sidechainToken","type":"address"},{"indexed":false,"internalType":"uint32","name":"_standard","type":"uint32"}],"name":"TokenMapped","type":"event"},{"constant":true,"inputs":[],"name":"ACKNOWLEDGEMENT","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"GATEWAY","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"VALIDATOR","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"WETH_TOKEN","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_newAdmin","type":"address"}],"name":"changeAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_mainchainToken","type":"address"},{"internalType":"address","name":"_sidechainToken","type":"address"}],"name":"clearMapToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"contractAddresses","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"string","name":"_name","type":"string"}],"name":"getCode","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[{"internalType":"string","name":"_name","type":"string"}],"name":"getContract","outputs":[{"internalType":"address","name":"_address","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"bool","name":"_isMainchain","type":"bool"}],"name":"getMappedToken","outputs":[{"internalType":"address","name":"_mainchainToken","type":"address"},{"internalType":"address","name":"_sidechainToken","type":"address"},{"internalType":"uint32","name":"_standard","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"uint32","name":"_standard","type":"uint32"},{"internalType":"bool","name":"_isMainchain","type":"bool"}],"name":"isTokenMapped","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"mainchainMap","outputs":[{"internalType":"address","name":"mainchainToken","type":"address"},{"internalType":"address","name":"sidechainToken","type":"address"},{"internalType":"uint32","name":"standard","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_mainchainToken","type":"address"},{"internalType":"address","name":"_sidechainToken","type":"address"},{"internalType":"uint32","name":"_standard","type":"uint32"}],"name":"mapToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"removeAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"sidechainMap","outputs":[{"internalType":"address","name":"mainchainToken","type":"address"},{"internalType":"address","name":"sidechainToken","type":"address"},{"internalType":"uint32","name":"standard","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"string","name":"_name","type":"string"},{"internalType":"address","name":"_newAddress","type":"address"}],"name":"updateContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]

60806040819052600080546001600160a01b03191633178082556001600160a01b0316917f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f908290a3610d05806100576000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c8063697a60b3116100a25780639a202d47116100715780639a202d4714610491578063b3de98fc14610499578063eb96fbcd146104c7578063f689e892146104f5578063f851a440146105125761010b565b8063697a60b31461031457806384cb9da11461038d5780638d1cc925146103b35780638f2839701461046b5761010b565b80633579e67a116100de5780633579e67a1461022a578063358177731461027857806337d277d414610304578063393df8cb1461030c5761010b565b80631ea5b555146101105780632ba3c5461461018d578063314d1dea146101e3578063338c537114610222575b600080fd5b61011861051a565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015257818101518382015260200161013a565b50505050905090810190601f16801561017f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101b3600480360360208110156101a357600080fd5b50356001600160a01b0316610545565b604080516001600160a01b03948516815292909316602083015263ffffffff168183015290519081900360600190f35b610220600480360360608110156101f957600080fd5b5080356001600160a01b03908116916020810135909116906040013563ffffffff1661057a565b005b61011861077f565b6102646004803603606081101561024057600080fd5b506001600160a01b038135169063ffffffff602082013516906040013515156107a2565b604080519115158252519081900360200190f35b6102e86004803603602081101561028e57600080fd5b8101906020810181356401000000008111156102a957600080fd5b8201836020820111156102bb57600080fd5b803590602001918460018302840111640100000000831117156102dd57600080fd5b509092509050610802565b604080516001600160a01b039092168252519081900360200190f35b610118610871565b610118610897565b6102206004803603604081101561032a57600080fd5b81019060208101813564010000000081111561034557600080fd5b82018360208201111561035757600080fd5b8035906020019184600183028401116401000000008311171561037957600080fd5b9193509150356001600160a01b03166108bc565b6101b3600480360360208110156103a357600080fd5b50356001600160a01b031661098e565b610459600480360360208110156103c957600080fd5b8101906020810181356401000000008111156103e457600080fd5b8201836020820111156103f657600080fd5b8035906020019184600183028401116401000000008311171561041857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109c3945050505050565b60408051918252519081900360200190f35b6102206004803603602081101561048157600080fd5b50356001600160a01b0316610a3a565b610220610abf565b610220600480360360408110156104af57600080fd5b506001600160a01b0381358116916020013516610b1e565b6101b3600480360360408110156104dd57600080fd5b506001600160a01b0381351690602001351515610b7d565b6102e86004803603602081101561050b57600080fd5b5035610baf565b6102e8610bca565b6040518060400160405280600f81526020016e1050d2d393d5d3115111d153515395608a1b81525081565b600260205260009081526040902080546001909101546001600160a01b0391821691811690600160a01b900463ffffffff1683565b6000546001600160a01b0316331461059157600080fd5b610599610cb0565b6040518060600160405280856001600160a01b03168152602001846001600160a01b031681526020018363ffffffff1681525090508060026000866001600160a01b03166001600160a01b0316815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060208201518160010160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060408201518160010160146101000a81548163ffffffff021916908363ffffffff1602179055509050508060036000856001600160a01b03166001600160a01b0316815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060208201518160010160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060408201518160010160146101000a81548163ffffffff021916908363ffffffff160217905550905050826001600160a01b0316846001600160a01b03167ff5c75f7c93b492d67e6e1b54120654e4ab8a98559e55f2321aa61ac92218327b84604051808263ffffffff1663ffffffff16815260200191505060405180910390a350505050565b604051806040016040528060078152602001664741544557415960c81b81525081565b60006107ac610cb0565b6107b68584610bd9565b80519091506001600160a01b0316158015906107de575060208101516001600160a01b031615155b80156107f957508363ffffffff16816040015163ffffffff16145b95945050505050565b60008061084484848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506109c392505050565b6000818152600160205260409020546001600160a01b0316925090508161086a57600080fd5b5092915050565b6040518060400160405280600a8152602001692ba2aa242faa27a5a2a760b11b81525081565b604051806040016040528060098152602001682b20a624a220aa27a960b91b81525081565b6000546001600160a01b031633146108d357600080fd5b600061091484848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506109c392505050565b6000818152600160205260409081902080546001600160a01b0319166001600160a01b038616908117909155905191925090829086908690808383808284376040519201829003822094507fd42ffce7e813458b7e8986df8e86eb9201a5ba2ed5228c73ea62def33fe6969293506000925050a450505050565b600360205260009081526040902080546001909101546001600160a01b0391821691811690600160a01b900463ffffffff1683565b6000816040516020018082805190602001908083835b602083106109f85780518252601f1990920191602091820191016109d9565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052805190602001209050919050565b6000546001600160a01b03163314610a5157600080fd5b6001600160a01b038116610a6457600080fd5b600080546040516001600160a01b03808516939216917f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f91a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610ad657600080fd5b600080546040516001600160a01b03909116917fa3b62bc36326052d97ea62d63c3d60308ed4c3ea8ac079dd8499f1e9c4f80c0f91a2600080546001600160a01b0319169055565b6000546001600160a01b03163314610b3557600080fd5b6001600160a01b0382166000908152600260205260409020610b5681610c8f565b6001600160a01b0382166000908152600360205260409020610b7781610c8f565b50505050565b6000806000610b8a610cb0565b610b948686610bd9565b80516020820151604090920151909891975095509350505050565b6001602052600090815260409020546001600160a01b031681565b6000546001600160a01b031681565b610be1610cb0565b8115610c3a57506001600160a01b03828116600090815260026020908152604091829020825160608101845281548516815260019091015493841691810191909152600160a01b90920463ffffffff1690820152610c89565b506001600160a01b03828116600090815260036020908152604091829020825160608101845281548516815260019091015493841691810191909152600160a01b90920463ffffffff16908201525b92915050565b80546001600160a01b031916815560010180546001600160c01b0319169055565b60408051606081018252600080825260208201819052918101919091529056fea265627a7a72315820c00f3f5eeb54e6aad73194fc261f3ef7c33c66f49b7d0d9313aa4460b526417464736f6c63430005110032

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061010b5760003560e01c8063697a60b3116100a25780639a202d47116100715780639a202d4714610491578063b3de98fc14610499578063eb96fbcd146104c7578063f689e892146104f5578063f851a440146105125761010b565b8063697a60b31461031457806384cb9da11461038d5780638d1cc925146103b35780638f2839701461046b5761010b565b80633579e67a116100de5780633579e67a1461022a578063358177731461027857806337d277d414610304578063393df8cb1461030c5761010b565b80631ea5b555146101105780632ba3c5461461018d578063314d1dea146101e3578063338c537114610222575b600080fd5b61011861051a565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015257818101518382015260200161013a565b50505050905090810190601f16801561017f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101b3600480360360208110156101a357600080fd5b50356001600160a01b0316610545565b604080516001600160a01b03948516815292909316602083015263ffffffff168183015290519081900360600190f35b610220600480360360608110156101f957600080fd5b5080356001600160a01b03908116916020810135909116906040013563ffffffff1661057a565b005b61011861077f565b6102646004803603606081101561024057600080fd5b506001600160a01b038135169063ffffffff602082013516906040013515156107a2565b604080519115158252519081900360200190f35b6102e86004803603602081101561028e57600080fd5b8101906020810181356401000000008111156102a957600080fd5b8201836020820111156102bb57600080fd5b803590602001918460018302840111640100000000831117156102dd57600080fd5b509092509050610802565b604080516001600160a01b039092168252519081900360200190f35b610118610871565b610118610897565b6102206004803603604081101561032a57600080fd5b81019060208101813564010000000081111561034557600080fd5b82018360208201111561035757600080fd5b8035906020019184600183028401116401000000008311171561037957600080fd5b9193509150356001600160a01b03166108bc565b6101b3600480360360208110156103a357600080fd5b50356001600160a01b031661098e565b610459600480360360208110156103c957600080fd5b8101906020810181356401000000008111156103e457600080fd5b8201836020820111156103f657600080fd5b8035906020019184600183028401116401000000008311171561041857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109c3945050505050565b60408051918252519081900360200190f35b6102206004803603602081101561048157600080fd5b50356001600160a01b0316610a3a565b610220610abf565b610220600480360360408110156104af57600080fd5b506001600160a01b0381358116916020013516610b1e565b6101b3600480360360408110156104dd57600080fd5b506001600160a01b0381351690602001351515610b7d565b6102e86004803603602081101561050b57600080fd5b5035610baf565b6102e8610bca565b6040518060400160405280600f81526020016e1050d2d393d5d3115111d153515395608a1b81525081565b600260205260009081526040902080546001909101546001600160a01b0391821691811690600160a01b900463ffffffff1683565b6000546001600160a01b0316331461059157600080fd5b610599610cb0565b6040518060600160405280856001600160a01b03168152602001846001600160a01b031681526020018363ffffffff1681525090508060026000866001600160a01b03166001600160a01b0316815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060208201518160010160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060408201518160010160146101000a81548163ffffffff021916908363ffffffff1602179055509050508060036000856001600160a01b03166001600160a01b0316815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060208201518160010160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060408201518160010160146101000a81548163ffffffff021916908363ffffffff160217905550905050826001600160a01b0316846001600160a01b03167ff5c75f7c93b492d67e6e1b54120654e4ab8a98559e55f2321aa61ac92218327b84604051808263ffffffff1663ffffffff16815260200191505060405180910390a350505050565b604051806040016040528060078152602001664741544557415960c81b81525081565b60006107ac610cb0565b6107b68584610bd9565b80519091506001600160a01b0316158015906107de575060208101516001600160a01b031615155b80156107f957508363ffffffff16816040015163ffffffff16145b95945050505050565b60008061084484848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506109c392505050565b6000818152600160205260409020546001600160a01b0316925090508161086a57600080fd5b5092915050565b6040518060400160405280600a8152602001692ba2aa242faa27a5a2a760b11b81525081565b604051806040016040528060098152602001682b20a624a220aa27a960b91b81525081565b6000546001600160a01b031633146108d357600080fd5b600061091484848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506109c392505050565b6000818152600160205260409081902080546001600160a01b0319166001600160a01b038616908117909155905191925090829086908690808383808284376040519201829003822094507fd42ffce7e813458b7e8986df8e86eb9201a5ba2ed5228c73ea62def33fe6969293506000925050a450505050565b600360205260009081526040902080546001909101546001600160a01b0391821691811690600160a01b900463ffffffff1683565b6000816040516020018082805190602001908083835b602083106109f85780518252601f1990920191602091820191016109d9565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052805190602001209050919050565b6000546001600160a01b03163314610a5157600080fd5b6001600160a01b038116610a6457600080fd5b600080546040516001600160a01b03808516939216917f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f91a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610ad657600080fd5b600080546040516001600160a01b03909116917fa3b62bc36326052d97ea62d63c3d60308ed4c3ea8ac079dd8499f1e9c4f80c0f91a2600080546001600160a01b0319169055565b6000546001600160a01b03163314610b3557600080fd5b6001600160a01b0382166000908152600260205260409020610b5681610c8f565b6001600160a01b0382166000908152600360205260409020610b7781610c8f565b50505050565b6000806000610b8a610cb0565b610b948686610bd9565b80516020820151604090920151909891975095509350505050565b6001602052600090815260409020546001600160a01b031681565b6000546001600160a01b031681565b610be1610cb0565b8115610c3a57506001600160a01b03828116600090815260026020908152604091829020825160608101845281548516815260019091015493841691810191909152600160a01b90920463ffffffff1690820152610c89565b506001600160a01b03828116600090815260036020908152604091829020825160608101845281548516815260019091015493841691810191909152600160a01b90920463ffffffff16908201525b92915050565b80546001600160a01b031916815560010180546001600160c01b0319169055565b60408051606081018252600080825260208201819052918101919091529056fea265627a7a72315820c00f3f5eeb54e6aad73194fc261f3ef7c33c66f49b7d0d9313aa4460b526417464736f6c63430005110032

Deployed Bytecode Sourcemap

815:3480:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;815:3480:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1260:58;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;1260:58:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1528:52;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1528:52:0;-1:-1:-1;;;;;1528:52:0;;:::i;:::-;;;;-1:-1:-1;;;;;1528:52:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2486:429;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2486:429:0;;-1:-1:-1;;;;;2486:429:0;;;;;;;;;;;;;;;;;;:::i;:::-;;1109:42;;;:::i;1876:347::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;1876:347:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;1644:226;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1644:226:0;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;1644:226:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;1644:226:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;39:11;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;-1:-1;1644:226:0;;-1:-1:-1;1644:226:0;-1:-1:-1;1644:226:0;:::i;:::-;;;;-1:-1:-1;;;;;1644:226:0;;;;;;;;;;;;;;1156:48;;;:::i;1209:46::-;;;:::i;2229:251::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2229:251:0;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;2229:251:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;2229:251:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;39:11;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;2229:251:0;;-1:-1:-1;2229:251:0;-1:-1:-1;2229:251:0;-1:-1:-1;;;;;2229:251:0;;:::i;1585:52::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1585:52:0;-1:-1:-1;;;;;1585:52:0;;:::i;3679:140::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3679:140:0;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;3679:140:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;3679:140:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;39:11;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;3679:140:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;3679:140:0;;-1:-1:-1;3679:140:0;;-1:-1:-1;;;;;3679:140:0:i;:::-;;;;;;;;;;;;;;;;450:170;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;450:170:0;-1:-1:-1;;;;;450:170:0;;:::i;626:104::-;;;:::i;2921:331::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;2921:331:0;;;;;;;;;;:::i;3258:415::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;3258:415:0;;;;;;;;;;:::i;1471:52::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1471:52:0;;:::i;246:20::-;;;:::i;1260:58::-;;;;;;;;;;;;;;-1:-1:-1;;;1260:58:0;;;;:::o;1528:52::-;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1528:52:0;;;;;;;-1:-1:-1;;;1528:52:0;;;;;:::o;2486:429::-;321:5;;-1:-1:-1;;;;;321:5:0;307:10;:19;299:28;;;;;;2611:24;;:::i;:::-;2638:85;;;;;;;;2659:15;-1:-1:-1;;;;;2638:85:0;;;;;2683:15;-1:-1:-1;;;;;2638:85:0;;;;;2707:9;2638:85;;;;;2611:112;;2764:4;2732:12;:29;2745:15;-1:-1:-1;;;;;2732:29:0;-1:-1:-1;;;;;2732:29:0;;;;;;;;;;;;:36;;;;;;;;;;;;;-1:-1:-1;;;;;2732:36:0;;;;;-1:-1:-1;;;;;2732:36:0;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2732:36:0;;;;;-1:-1:-1;;;;;2732:36:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2807:4;2775:12;:29;2788:15;-1:-1:-1;;;;;2775:29:0;-1:-1:-1;;;;;2775:29:0;;;;;;;;;;;;:36;;;;;;;;;;;;;-1:-1:-1;;;;;2775:36:0;;;;;-1:-1:-1;;;;;2775:36:0;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2775:36:0;;;;;-1:-1:-1;;;;;2775:36:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2869:15;-1:-1:-1;;;;;2825:84:0;2845:15;-1:-1:-1;;;;;2825:84:0;;2893:9;2825:84;;;;;;;;;;;;;;;;;;;;;;334:1;2486:429;;;:::o;1109:42::-;;;;;;;;;;;;;;-1:-1:-1;;;1109:42:0;;;;:::o;1876:347::-;1990:4;2006:28;;:::i;:::-;2037:38;2054:6;2062:12;2037:16;:38::i;:::-;2091:23;;2006:69;;-1:-1:-1;;;;;;2091:37:0;;;;;:85;;-1:-1:-1;2139:23:0;;;;-1:-1:-1;;;;;2139:37:0;;;2091:85;:126;;;;;2208:9;2187:30;;:8;:17;;;:30;;;2091:126;2084:133;1876:347;-1:-1:-1;;;;;1876:347:0:o;1644:226::-;1726:16;1754:13;1770:14;1778:5;;1770:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;1770:7:0;;-1:-1:-1;;;1770:14:0:i;:::-;1802:24;;;;:17;:24;;;;;;-1:-1:-1;;;;;1802:24:0;;-1:-1:-1;1754:30:0;-1:-1:-1;1841:22:0;1833:31;;;;;;1644:226;;;;;:::o;1156:48::-;;;;;;;;;;;;;;-1:-1:-1;;;1156:48:0;;;;:::o;1209:46::-;;;;;;;;;;;;;;-1:-1:-1;;;1209:46:0;;;;:::o;2229:251::-;321:5;;-1:-1:-1;;;;;321:5:0;307:10;:19;299:28;;;;;;2336:13;2352:14;2360:5;;2352:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;2352:7:0;;-1:-1:-1;;;2352:14:0:i;:::-;2373:24;;;;:17;:24;;;;;;;:38;;-1:-1:-1;;;;;;2373:38:0;-1:-1:-1;;;;;2373:38:0;;;;;;;;2425:49;;2373:24;;-1:-1:-1;2373:38:0;:24;;2448:5;;;;2425:49;2448:5;;;;2425:49;1:33:-1;2425:49:0;;45:16:-1;;2425:49:0;;;;;;-1:-1:-1;2425:49:0;;-1:-1:-1;2425:49:0;;-1:-1:-1;;2425:49:0;334:1;2229:251;;;:::o;1585:52::-;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1585:52:0;;;;;;;-1:-1:-1;;;1585:52:0;;;;;:::o;3679:140::-;3753:7;3806:5;3789:23;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3789:23:0;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;3789:23:0;;;3779:34;;;;;;3772:41;;3679:140;;;:::o;450:170::-;321:5;;-1:-1:-1;;;;;321:5:0;307:10;:19;299:28;;;;;;-1:-1:-1;;;;;524:23:0;;516:32;;;;;;573:5;;;560:30;;-1:-1:-1;;;;;560:30:0;;;;573:5;;;560:30;;;597:5;:17;;-1:-1:-1;;;;;;597:17:0;-1:-1:-1;;;;;597:17:0;;;;;;;;;;450:170::o;626:104::-;321:5;;-1:-1:-1;;;;;321:5:0;307:10;:19;299:28;;;;;;693:5;;;680:19;;-1:-1:-1;;;;;693:5:0;;;;680:19;;;722:1;706:18;;-1:-1:-1;;;;;;706:18:0;;;626:104::o;2921:331::-;321:5;;-1:-1:-1;;;;;321:5:0;307:10;:19;299:28;;;;;;-1:-1:-1;;;;;3070:29:0;;3033:34;3070:29;;;:12;:29;;;;;3106;3070;3106:14;:29::i;:::-;-1:-1:-1;;;;;3181:29:0;;3144:34;3181:29;;;:12;:29;;;;;3217;3181;3217:14;:29::i;:::-;334:1;;2921:331;;:::o;3258:415::-;3374:23;3404;3434:16;3466:28;;:::i;:::-;3497:38;3514:6;3522:12;3497:16;:38::i;:::-;3560:23;;3608;;;;3650:17;;;;;3560:23;;3608;;-1:-1:-1;3650:17:0;-1:-1:-1;3258:415:0;-1:-1:-1;;;;3258:415:0:o;1471:52::-;;;;;;;;;;;;-1:-1:-1;;;;;1471:52:0;;:::o;246:20::-;;;-1:-1:-1;;;;;246:20:0;;:::o;3825:277::-;3938:28;;:::i;:::-;3982:11;3978:119;;;-1:-1:-1;;;;;;4015:20:0;;;;;;;:12;:20;;;;;;;;;4004:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;4004:31:0;;;;;;;;;3978:119;;;-1:-1:-1;;;;;;4069:20:0;;;;;;;:12;:20;;;;;;;;;4058:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;4058:31:0;;;;;;;;;3978:119;3825:277;;;;:::o;4108:184::-;4185:34;;-1:-1:-1;;;;;;4185:34:0;;;;4226:21;:34;;-1:-1:-1;;;;;;4267:19:0;;;4108:184::o;815:3480::-;;;;;;;;;-1:-1:-1;815:3480:0;;;;;;;;;;;;;;;;;:::o

Swarm Source

bzzr://c00f3f5eeb54e6aad73194fc261f3ef7c33c66f49b7d0d9313aa4460b5264174

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  ]

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.