ETH Price: $3,766.39 (-2.51%)
Gas: 13 Gwei

Contract

0xA86ba3b6d83139a49B649C05DBb69E0726DB69cf
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Value
Associate With S...134791742021-10-24 8:41:34948 days ago1635064894IN
0xA86ba3b6...726DB69cf
0 ETH0.0048835939.96461345
Associate With S...133233022021-09-29 22:15:31973 days ago1632953731IN
0xA86ba3b6...726DB69cf
0 ETH0.00924337135.71239249
Associate With S...132763432021-09-22 15:26:01980 days ago1632324361IN
0xA86ba3b6...726DB69cf
0 ETH0.0065398462.22614093
Associate With S...132706212021-09-21 17:54:18981 days ago1632246858IN
0xA86ba3b6...726DB69cf
0 ETH0.0048113681.60522295
Associate With S...132703482021-09-21 16:58:56981 days ago1632243536IN
0xA86ba3b6...726DB69cf
0 ETH0.0119712297.97545262
Associate With S...132268102021-09-14 23:26:04988 days ago1631661964IN
0xA86ba3b6...726DB69cf
0 ETH0.01303215106.64787633
Associate With S...131264042021-08-30 10:51:241003 days ago1630320684IN
0xA86ba3b6...726DB69cf
0 ETH0.0071355767.90228709
Associate With S...131024192021-08-26 17:40:341007 days ago1629999634IN
0xA86ba3b6...726DB69cf
0 ETH0.0051223886.86272661
Associate With S...130885382021-08-24 14:21:051009 days ago1629814865IN
0xA86ba3b6...726DB69cf
0 ETH0.0121550499.4701063
Associate With S...130184442021-08-13 18:22:371020 days ago1628878957IN
0xA86ba3b6...726DB69cf
0 ETH0.0045902737.56425354
Associate With S...129819642021-08-08 3:30:331026 days ago1628393433IN
0xA86ba3b6...726DB69cf
0 ETH0.0023514539.87479542
Associate With S...129779312021-08-07 12:30:381026 days ago1628339438IN
0xA86ba3b6...726DB69cf
0 ETH0.0036494761.8984539
Associate With S...129396192021-08-01 12:30:361032 days ago1627821036IN
0xA86ba3b6...726DB69cf
0 ETH0.0008871323
Associate With S...128373842021-07-16 10:32:591048 days ago1626431579IN
0xA86ba3b6...726DB69cf
0 ETH0.0035433929
Associate With S...127653352021-07-05 4:30:281060 days ago1625459428IN
0xA86ba3b6...726DB69cf
0 ETH0.0003855910
Associate With S...127426062021-07-01 15:31:551063 days ago1625153515IN
0xA86ba3b6...726DB69cf
0 ETH0.0008948423.2
Associate With S...127321692021-06-30 0:26:231065 days ago1625012783IN
0xA86ba3b6...726DB69cf
0 ETH0.0015884113
Associate With S...127268342021-06-29 4:30:021066 days ago1624941002IN
0xA86ba3b6...726DB69cf
0 ETH0.0004241411
Associate With S...127230572021-06-28 14:30:311066 days ago1624890631IN
0xA86ba3b6...726DB69cf
0 ETH0.0008485622
Associate With S...127147872021-06-27 7:31:031067 days ago1624779063IN
0xA86ba3b6...726DB69cf
0 ETH0.0003857110
Associate With S...127024702021-06-25 9:30:221069 days ago1624613422IN
0xA86ba3b6...726DB69cf
0 ETH0.0004628512
Associate With S...126642582021-06-19 10:29:581075 days ago1624098598IN
0xA86ba3b6...726DB69cf
0 ETH0.0003855910
Associate With S...126557952021-06-18 2:35:071077 days ago1623983707IN
0xA86ba3b6...726DB69cf
0 ETH0.0004628512
Associate With S...125764332021-06-05 19:52:541089 days ago1622922774IN
0xA86ba3b6...726DB69cf
0 ETH0.0017107714
Associate With S...125689152021-06-04 15:50:121090 days ago1622821812IN
0xA86ba3b6...726DB69cf
0 ETH0.0006169416
View all transactions

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Block From To Value
64823902018-10-09 11:10:552059 days ago1539083455
0xA86ba3b6...726DB69cf
 Contract Creation0 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
OwnedRegistrar

Compiler Version
v0.4.25+commit.59dbf8f1

Optimization Enabled:
Yes with 200 runs

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

pragma solidity ^0.4.24;

// File: @ensdomains/ens/contracts/ENS.sol

interface ENS {

    // Logged when the owner of a node assigns a new owner to a subnode.
    event NewOwner(bytes32 indexed node, bytes32 indexed label, address owner);

    // Logged when the owner of a node transfers ownership to a new account.
    event Transfer(bytes32 indexed node, address owner);

    // Logged when the resolver for a node changes.
    event NewResolver(bytes32 indexed node, address resolver);

    // Logged when the TTL of a node changes
    event NewTTL(bytes32 indexed node, uint64 ttl);


    function setSubnodeOwner(bytes32 node, bytes32 label, address owner) public;
    function setResolver(bytes32 node, address resolver) public;
    function setOwner(bytes32 node, address owner) public;
    function setTTL(bytes32 node, uint64 ttl) public;
    function owner(bytes32 node) public view returns (address);
    function resolver(bytes32 node) public view returns (address);
    function ttl(bytes32 node) public view returns (uint64);

}

// File: contracts/Roles.sol

/**
 * @title Roles
 * @author Francisco Giordano (@frangio)
 * @dev Library for managing addresses assigned to a Role.
 * See RBAC.sol for example usage.
 */
library Roles {
  struct Role {
    mapping (address => bool) bearer;
  }

  /**
   * @dev give an account access to this role
   */
  function add(Role storage _role, address _account)
    internal
  {
    _role.bearer[_account] = true;
  }

  /**
   * @dev remove an account's access to this role
   */
  function remove(Role storage _role, address _account)
    internal
  {
    _role.bearer[_account] = false;
  }

  /**
   * @dev check if an account has this role
   * // reverts
   */
  function check(Role storage _role, address _account)
    internal
    view
  {
    require(has(_role, _account));
  }

  /**
   * @dev check if an account has this role
   * @return bool
   */
  function has(Role storage _role, address _account)
    internal
    view
    returns (bool)
  {
    return _role.bearer[_account];
  }
}

// File: contracts/RBAC.sol

/**
 * @title RBAC (Role-Based Access Control)
 * @author Matt Condon (@Shrugs)
 * @dev Stores and provides setters and getters for roles and addresses.
 * Supports unlimited numbers of roles and addresses.
 * See //contracts/mocks/RBACMock.sol for an example of usage.
 * This RBAC method uses strings to key roles. It may be beneficial
 * for you to write your own implementation of this interface using Enums or similar.
 */
contract RBAC {
  using Roles for Roles.Role;

  mapping (string => Roles.Role) private roles;

  event RoleAdded(address indexed operator, string role);
  event RoleRemoved(address indexed operator, string role);

  /**
   * @dev reverts if addr does not have role
   * @param _operator address
   * @param _role the name of the role
   * // reverts
   */
  function checkRole(address _operator, string _role)
    public
    view
  {
    roles[_role].check(_operator);
  }

  /**
   * @dev determine if addr has role
   * @param _operator address
   * @param _role the name of the role
   * @return bool
   */
  function hasRole(address _operator, string _role)
    public
    view
    returns (bool)
  {
    return roles[_role].has(_operator);
  }

  /**
   * @dev add a role to an address
   * @param _operator address
   * @param _role the name of the role
   */
  function _addRole(address _operator, string _role)
    internal
  {
    roles[_role].add(_operator);
    emit RoleAdded(_operator, _role);
  }

  /**
   * @dev remove a role from an address
   * @param _operator address
   * @param _role the name of the role
   */
  function _removeRole(address _operator, string _role)
    internal
  {
    roles[_role].remove(_operator);
    emit RoleRemoved(_operator, _role);
  }

  /**
   * @dev modifier to scope access to a single role (uses msg.sender as addr)
   * @param _role the name of the role
   * // reverts
   */
  modifier onlyRole(string _role)
  {
    checkRole(msg.sender, _role);
    _;
  }

  /**
   * @dev modifier to scope access to a set of roles (uses msg.sender as addr)
   * @param _roles the names of the roles to scope access to
   * // reverts
   *
   * @TODO - when solidity supports dynamic arrays as arguments to modifiers, provide this
   *  see: https://github.com/ethereum/solidity/issues/2467
   */
  // modifier onlyRoles(string[] _roles) {
  //     bool hasAnyRole = false;
  //     for (uint8 i = 0; i < _roles.length; i++) {
  //         if (hasRole(msg.sender, _roles[i])) {
  //             hasAnyRole = true;
  //             break;
  //         }
  //     }

  //     require(hasAnyRole);

  //     _;
  // }
}

// File: contracts/OwnerResolver.sol

contract OwnerResolver {
    ENS public ens;

    constructor(ENS _ens) public {
        ens = _ens;
    }

    function addr(bytes32 node) public view returns(address) {
        return ens.owner(node);
    }

    function supportsInterface(bytes4 interfaceID) public pure returns (bool) {
        return interfaceID == 0x01ffc9a7 || interfaceID == 0x3b3b57de;
    }
}

// File: contracts/OwnedRegistrar.sol

pragma experimental ABIEncoderV2;




/**
 * OwnedRegistrar implements an ENS registrar that accepts registrations by a
 * list of approved parties (IANA registrars). Registrations must be submitted
 * by a "transactor", and signed by a "registrar". Registrars can be added or
 * removed by an account with the "authoriser" role.
 *
 * An audit of this code is available here: https://hackmd.io/s/SJcPchO57
 */
contract OwnedRegistrar is RBAC {
    ENS public ens;
    OwnerResolver public resolver;
    mapping(uint=>mapping(address=>bool)) public registrars; // Maps IANA IDs to authorised accounts
    mapping(bytes32=>uint) public nonces; // Maps namehashes to domain nonces

    event RegistrarAdded(uint id, address registrar);
    event RegistrarRemoved(uint id, address registrar);
    event Associate(bytes32 indexed node, bytes32 indexed subnode, address indexed owner);
    event Disassociate(bytes32 indexed node, bytes32 indexed subnode);

    constructor(ENS _ens) public {
        ens = _ens;
        resolver = new OwnerResolver(_ens);
        _addRole(msg.sender, "owner");
    }

    function addRole(address addr, string role) external onlyRole("owner") {
        _addRole(addr, role);
    }

    function removeRole(address addr, string role) external onlyRole("owner") {
        // Don't allow owners to remove themselves
        require(keccak256(abi.encode(role)) != keccak256(abi.encode("owner")) || msg.sender != addr);
        _removeRole(addr, role);
    }

    function setRegistrar(uint id, address registrar) public onlyRole("authoriser") {
        registrars[id][registrar] = true;
        emit RegistrarAdded(id, registrar);
    }

    function unsetRegistrar(uint id, address registrar) public onlyRole("authoriser") {
        registrars[id][registrar] = false;
        emit RegistrarRemoved(id, registrar);
    }

    function associateWithSig(bytes32 node, bytes32 label, address owner, uint nonce, uint registrarId, bytes32 r, bytes32 s, uint8 v) public onlyRole("transactor") {
        bytes32 subnode = keccak256(abi.encode(node, label));
        require(nonce == nonces[subnode]);
        nonces[subnode]++;

        bytes32 sighash = keccak256(abi.encode(subnode, owner, nonce));
        address registrar = ecrecover(sighash, v, r, s);
        require(registrars[registrarId][registrar]);

        ens.setSubnodeOwner(node, label, address(this));
        if(owner == 0) {
            ens.setResolver(subnode, 0);
        } else {
            ens.setResolver(subnode, resolver);
        }
        ens.setOwner(subnode, owner);

        emit Associate(node, label, owner);
    }

    function multicall(bytes[] calls) public {
        for(uint i = 0; i < calls.length; i++) {
            require(address(this).delegatecall(calls[i]));
        }
    }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"resolver","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_operator","type":"address"},{"name":"_role","type":"string"}],"name":"checkRole","outputs":[],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"},{"name":"role","type":"string"}],"name":"removeRole","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_operator","type":"address"},{"name":"_role","type":"string"}],"name":"hasRole","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"},{"name":"","type":"address"}],"name":"registrars","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"node","type":"bytes32"},{"name":"label","type":"bytes32"},{"name":"owner","type":"address"},{"name":"nonce","type":"uint256"},{"name":"registrarId","type":"uint256"},{"name":"r","type":"bytes32"},{"name":"s","type":"bytes32"},{"name":"v","type":"uint8"}],"name":"associateWithSig","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"id","type":"uint256"},{"name":"registrar","type":"address"}],"name":"setRegistrar","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"},{"name":"role","type":"string"}],"name":"addRole","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"id","type":"uint256"},{"name":"registrar","type":"address"}],"name":"unsetRegistrar","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"nonces","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"calls","type":"bytes[]"}],"name":"multicall","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_ens","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"id","type":"uint256"},{"indexed":false,"name":"registrar","type":"address"}],"name":"RegistrarAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"id","type":"uint256"},{"indexed":false,"name":"registrar","type":"address"}],"name":"RegistrarRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"node","type":"bytes32"},{"indexed":true,"name":"subnode","type":"bytes32"},{"indexed":true,"name":"owner","type":"address"}],"name":"Associate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"node","type":"bytes32"},{"indexed":true,"name":"subnode","type":"bytes32"}],"name":"Disassociate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"operator","type":"address"},{"indexed":false,"name":"role","type":"string"}],"name":"RoleAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"operator","type":"address"},{"indexed":false,"name":"role","type":"string"}],"name":"RoleRemoved","type":"event"}]

60806040523480156200001157600080fd5b5060405160208062001b30833981018060405262000033919081019062000202565b60018054600160a060020a031916600160a060020a0383161790558062000059620001dc565b62000065919062000277565b604051809103906000f08015801562000082573d6000803e3d6000fd5b5060028054600160a060020a031916600160a060020a039290921691909117905560408051808201909152600581527f6f776e65720000000000000000000000000000000000000000000000000000006020820152620000ed903390640100000000620000f4810204565b50620002fa565b62000170826000836040518082805190602001908083835b602083106200012d5780518252601f1990920191602091820191016200010c565b51815160209384036101000a6000190180199092169116179052920194855250604051938490030190922092915050640100000000620001b7810262000d751704565b81600160a060020a03167fbfec83d64eaa953f2708271a023ab9ee82057f8f3578d548c1a4ba0b5b70048982604051620001ab91906200028d565b60405180910390a25050565b600160a060020a0316600090815260209190915260409020805460ff19166001179055565b60405161046880620016c883390190565b6000620001fb8251620002b0565b9392505050565b6000602082840312156200021557600080fd5b6000620002238484620001ed565b949350505050565b6200023681620002b0565b82525050565b60006200024982620002a0565b8084526200025f816020860160208601620002bd565b6200026a81620002f0565b9093016020019392505050565b602081016200028782846200022b565b92915050565b60208082528101620001fb81846200023c565b5190565b600160a060020a031690565b60006200028782620002a4565b60005b83811015620002da578181015183820152602001620002c0565b83811115620002ea576000848401525b50505050565b601f01601f191690565b6113be806200030a6000396000f3006080604052600436106100b95763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166304f3bcec81146100be5780630988ca8c146100e95780631bfe03081461010b578063217fe6c61461012b57806334bdf216146101585780633f15457f1461017857806358c757ba1461018d5780635c979fe4146101ad5780637d72aa65146101cd5780637f1731b6146101ed5780639e317f121461020d578063ac9650d81461023a575b600080fd5b3480156100ca57600080fd5b506100d361025a565b6040516100e0919061125a565b60405180910390f35b3480156100f557600080fd5b50610109610104366004610f18565b610269565b005b34801561011757600080fd5b50610109610126366004610ec2565b6102d7565b34801561013757600080fd5b5061014b610146366004610f18565b61046a565b6040516100e09190611166565b34801561016457600080fd5b5061014b610173366004611075565b6104df565b34801561018457600080fd5b506100d36104ff565b34801561019957600080fd5b506101096101a8366004610fc5565b61050e565b3480156101b957600080fd5b506101096101c8366004611075565b61095c565b3480156101d957600080fd5b506101096101e8366004610ec2565b610a06565b3480156101f957600080fd5b50610109610208366004611075565b610a7e565b34801561021957600080fd5b5061022d610228366004610fa7565b610b18565b6040516100e0919061129b565b34801561024657600080fd5b50610109610255366004610f6a565b610b2a565b600254600160a060020a031681565b6102d3826000836040518082805190602001908083835b6020831061029f5780518252601f199092019160209182019101610280565b51815160209384036101000a6000190180199092169116179052920194855250604051938490030190922092915050610bcd565b5050565b60408051808201909152600581527f6f776e657200000000000000000000000000000000000000000000000000000060208201526103153382610269565b6040516020016103249061128b565b6040516020818303038152906040526040518082805190602001908083835b602083106103625780518252601f199092019160209182019101610343565b51815160209384036101000a6000190180199092169116179052604051919093018190038120945061039a9350879287925001611268565b6040516020818303038152906040526040518082805190602001908083835b602083106103d85780518252601f1990920191602091820191016103b9565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191614158061041f575033600160a060020a03851614155b151561042a57600080fd5b6104648484848080601f01602080910402602001604051908101604052809392919081815260200183838082843750610be2945050505050565b50505050565b60006104d6836000846040518082805190602001908083835b602083106104a25780518252601f199092019160209182019101610483565b51815160209384036101000a6000190180199092169116179052920194855250604051938490030190922092915050610c91565b90505b92915050565b600360209081526000928352604080842090915290825290205460ff1681565b600154600160a060020a031681565b60008060006040805190810160405280600a81526020017f7472616e736163746f72000000000000000000000000000000000000000000008152506105533382610269565b8b8b6040516020016105669291906111be565b6040516020818303038152906040526040518082805190602001908083835b602083106105a45780518252601f199092019160209182019101610585565b51815160209384036101000a600019018019909216911617905260408051929094018290039091206000818152600490925292902054919750508b1491506105ed905057600080fd5b6000848152600460209081526040918290208054600101905590516106189186918d918d9101611196565b6040516020818303038152906040526040518082805190602001908083835b602083106106565780518252601f199092019160209182019101610637565b51815160209384036101000a600019018019909216911617905260408051929094018290038220600083529101928390529650600193506106a0925086918991508b908b9061121c565b60206040516020810390808403906000865af11580156106c4573d6000803e3d6000fd5b505060408051601f19015160008b815260036020908152838220600160a060020a03841683529052919091205490935060ff161515905061070457600080fd5b6001546040517f06ab5923000000000000000000000000000000000000000000000000000000008152600160a060020a03909116906306ab592390610751908f908f9030906004016111d9565b600060405180830381600087803b15801561076b57600080fd5b505af115801561077f573d6000803e3d6000fd5b50505050600160a060020a038a161515610816576001546040517f1896f70a000000000000000000000000000000000000000000000000000000008152600160a060020a0390911690631896f70a906107df908790600090600401611201565b600060405180830381600087803b1580156107f957600080fd5b505af115801561080d573d6000803e3d6000fd5b50505050610899565b6001546002546040517f1896f70a000000000000000000000000000000000000000000000000000000008152600160a060020a0392831692631896f70a9261086692899290911690600401611201565b600060405180830381600087803b15801561088057600080fd5b505af1158015610894573d6000803e3d6000fd5b505050505b6001546040517f5b0fc9c3000000000000000000000000000000000000000000000000000000008152600160a060020a0390911690635b0fc9c3906108e49087908e90600401611174565b600060405180830381600087803b1580156108fe57600080fd5b505af1158015610912573d6000803e3d6000fd5b5050604051600160a060020a038d1692508d91508e907fa70f211557cf2a784f2b740c2da06edc9e214ed20b2887292c9ff4634287658190600090a4505050505050505050505050565b60408051808201909152600a81527f617574686f726973657200000000000000000000000000000000000000000000602082015261099a3382610269565b6000838152600360209081526040808320600160a060020a038616845290915290819020805460ff19166001179055517fdf88ee02997a250ad060a36e1044960d021495688aca4e58689919227363efbc906109f99085908590611174565b60405180910390a1505050565b60408051808201909152600581527f6f776e65720000000000000000000000000000000000000000000000000000006020820152610a443382610269565b6104648484848080601f01602080910402602001604051908101604052809392919081815260200183838082843750610cb0945050505050565b60408051808201909152600a81527f617574686f7269736572000000000000000000000000000000000000000000006020820152610abc3382610269565b6000838152600360209081526040808320600160a060020a038616845290915290819020805460ff19169055517f62a7105da8d95bec4e98368a27eb0db5af96570e7133abbf031083d85ab5091f906109f99085908590611174565b60046020526000908152604090205481565b60005b81518110156102d35781513090839083908110610b4657fe5b9060200190602002015160405180828051906020019080838360005b83811015610b7a578181015183820152602001610b62565b50505050905090810190601f168015610ba75780820380516001836020036101000a031916815260200191505b50915050600060405180830381855af49150501515610bc557600080fd5b600101610b2d565b610bd78282610c91565b15156102d357600080fd5b610c4c826000836040518082805190602001908083835b60208310610c185780518252601f199092019160209182019101610bf9565b51815160209384036101000a6000190180199092169116179052920194855250604051938490030190922092915050610d53565b81600160a060020a03167fd211483f91fc6eff862467f8de606587a30c8fc9981056f051b897a418df803a82604051610c85919061127a565b60405180910390a25050565b600160a060020a03166000908152602091909152604090205460ff1690565b610d1a826000836040518082805190602001908083835b60208310610ce65780518252601f199092019160209182019101610cc7565b51815160209384036101000a6000190180199092169116179052920194855250604051938490030190922092915050610d75565b81600160a060020a03167fbfec83d64eaa953f2708271a023ab9ee82057f8f3578d548c1a4ba0b5b70048982604051610c85919061127a565b600160a060020a0316600090815260209190915260409020805460ff19169055565b600160a060020a0316600090815260209190915260409020805460ff19166001179055565b60006104d6823561131d565b6000601f82018313610db757600080fd5b8135610dca610dc5826112d0565b6112a9565b81815260209384019390925082018360005b83811015610e085781358601610df28882610e1e565b8452506020928301929190910190600101610ddc565b5050505092915050565b60006104d6823561132e565b6000601f82018313610e2f57600080fd5b8135610e3d610dc5826112f1565b91508082526020830160208301858383011115610e5957600080fd5b610e64838284611342565b50505092915050565b600080601f83018413610e7f57600080fd5b50813567ffffffffffffffff811115610e9757600080fd5b602083019150836001820283011115610eaf57600080fd5b9250929050565b60006104d68235611331565b600080600060408486031215610ed757600080fd5b6000610ee38686610d9a565b935050602084013567ffffffffffffffff811115610f0057600080fd5b610f0c86828701610e6d565b92509250509250925092565b60008060408385031215610f2b57600080fd5b6000610f378585610d9a565b925050602083013567ffffffffffffffff811115610f5457600080fd5b610f6085828601610e1e565b9150509250929050565b600060208284031215610f7c57600080fd5b813567ffffffffffffffff811115610f9357600080fd5b610f9f84828501610da6565b949350505050565b600060208284031215610fb957600080fd5b6000610f9f8484610e12565b600080600080600080600080610100898b031215610fe257600080fd5b6000610fee8b8b610e12565b9850506020610fff8b828c01610e12565b97505060406110108b828c01610d9a565b96505060606110218b828c01610e12565b95505060806110328b828c01610e12565b94505060a06110438b828c01610e12565b93505060c06110548b828c01610e12565b92505060e06110658b828c01610eb6565b9150509295985092959890939650565b6000806040838503121561108857600080fd5b60006110948585610e12565b9250506020610f6085828601610d9a565b6110ae8161131d565b82525050565b6110ae81611329565b6110ae8161132e565b6110ae81611337565b60008284526020840193506110e5838584611342565b6110ee8361137a565b9093019392505050565b600061110382611319565b80845261111781602086016020860161134e565b6111208161137a565b9093016020019392505050565b600581527f6f776e6572000000000000000000000000000000000000000000000000000000602082015260400190565b6110ae81611331565b602081016104d982846110b4565b6040810161118282856110bd565b61118f60208301846110a5565b9392505050565b606081016111a482866110bd565b6111b160208301856110a5565b610f9f60408301846110bd565b604081016111cc82856110bd565b61118f60208301846110bd565b606081016111e782866110bd565b6111f460208301856110bd565b610f9f60408301846110a5565b6040810161120f82856110bd565b61118f60208301846110c6565b6080810161122a82876110bd565b611237602083018661115d565b61124460408301856110bd565b61125160608301846110bd565b95945050505050565b602081016104d982846110c6565b60208082528101610f9f8184866110cf565b602080825281016104d681846110f8565b602080825281016104d98161112d565b602081016104d982846110bd565b60405181810167ffffffffffffffff811182821017156112c857600080fd5b604052919050565b600067ffffffffffffffff8211156112e757600080fd5b5060209081020190565b600067ffffffffffffffff82111561130857600080fd5b506020601f91909101601f19160190565b5190565b600160a060020a031690565b151590565b90565b60ff1690565b60006104d98261131d565b82818337506000910152565b60005b83811015611369578181015183820152602001611351565b838111156104645750506000910152565b601f01601f1916905600a265627a7a72305820bfed91fd6a3c4a3e2b26696e9f962574b65a87dba957adf8a0e39d11b9a4631b6c6578706572696d656e74616cf50037608060405234801561001057600080fd5b50604051602080610468833981018060405261002f9190810190610067565b60008054600160a060020a031916600160a060020a03929092169190911790556100aa565b60006100608251610099565b9392505050565b60006020828403121561007957600080fd5b60006100858484610054565b949350505050565b600160a060020a031690565b60006100a48261008d565b92915050565b6103af806100b96000396000f3006080604052600436106100565763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166301ffc9a7811461005b5780633b3b57de146100915780633f15457f146100be575b600080fd5b34801561006757600080fd5b5061007b6100763660046102a7565b6100e0565b60405161008891906102fd565b60405180910390f35b34801561009d57600080fd5b506100b16100ac366004610289565b610173565b60405161008891906102ef565b3480156100ca57600080fd5b506100d361021c565b6040516100889190610319565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff198316148061016d57507f3b3b57de000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff198316145b92915050565b600080546040517f02571be300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff909116906302571be3906101ca90859060040161030b565b602060405180830381600087803b1580156101e457600080fd5b505af11580156101f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061016d9190810190610263565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b60006102448251610327565b9392505050565b60006102448235610345565b60006102448235610348565b60006020828403121561027557600080fd5b60006102818484610238565b949350505050565b60006020828403121561029b57600080fd5b6000610281848461024b565b6000602082840312156102b957600080fd5b60006102818484610257565b6102ce81610327565b82525050565b6102ce81610340565b6102ce81610345565b6102ce8161036a565b6020810161016d82846102c5565b6020810161016d82846102d4565b6020810161016d82846102dd565b6020810161016d82846102e6565b73ffffffffffffffffffffffffffffffffffffffff1690565b151590565b90565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690565b600061016d826103275600a265627a7a72305820811d1b709287da3943d1756725d19fad06fb73d3716815108eb11a69f9852dd66c6578706572696d656e74616cf50037000000000000000000000000314159265dd8dbb310642f98f50c066173c1259b

Deployed Bytecode

0x6080604052600436106100b95763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166304f3bcec81146100be5780630988ca8c146100e95780631bfe03081461010b578063217fe6c61461012b57806334bdf216146101585780633f15457f1461017857806358c757ba1461018d5780635c979fe4146101ad5780637d72aa65146101cd5780637f1731b6146101ed5780639e317f121461020d578063ac9650d81461023a575b600080fd5b3480156100ca57600080fd5b506100d361025a565b6040516100e0919061125a565b60405180910390f35b3480156100f557600080fd5b50610109610104366004610f18565b610269565b005b34801561011757600080fd5b50610109610126366004610ec2565b6102d7565b34801561013757600080fd5b5061014b610146366004610f18565b61046a565b6040516100e09190611166565b34801561016457600080fd5b5061014b610173366004611075565b6104df565b34801561018457600080fd5b506100d36104ff565b34801561019957600080fd5b506101096101a8366004610fc5565b61050e565b3480156101b957600080fd5b506101096101c8366004611075565b61095c565b3480156101d957600080fd5b506101096101e8366004610ec2565b610a06565b3480156101f957600080fd5b50610109610208366004611075565b610a7e565b34801561021957600080fd5b5061022d610228366004610fa7565b610b18565b6040516100e0919061129b565b34801561024657600080fd5b50610109610255366004610f6a565b610b2a565b600254600160a060020a031681565b6102d3826000836040518082805190602001908083835b6020831061029f5780518252601f199092019160209182019101610280565b51815160209384036101000a6000190180199092169116179052920194855250604051938490030190922092915050610bcd565b5050565b60408051808201909152600581527f6f776e657200000000000000000000000000000000000000000000000000000060208201526103153382610269565b6040516020016103249061128b565b6040516020818303038152906040526040518082805190602001908083835b602083106103625780518252601f199092019160209182019101610343565b51815160209384036101000a6000190180199092169116179052604051919093018190038120945061039a9350879287925001611268565b6040516020818303038152906040526040518082805190602001908083835b602083106103d85780518252601f1990920191602091820191016103b9565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191614158061041f575033600160a060020a03851614155b151561042a57600080fd5b6104648484848080601f01602080910402602001604051908101604052809392919081815260200183838082843750610be2945050505050565b50505050565b60006104d6836000846040518082805190602001908083835b602083106104a25780518252601f199092019160209182019101610483565b51815160209384036101000a6000190180199092169116179052920194855250604051938490030190922092915050610c91565b90505b92915050565b600360209081526000928352604080842090915290825290205460ff1681565b600154600160a060020a031681565b60008060006040805190810160405280600a81526020017f7472616e736163746f72000000000000000000000000000000000000000000008152506105533382610269565b8b8b6040516020016105669291906111be565b6040516020818303038152906040526040518082805190602001908083835b602083106105a45780518252601f199092019160209182019101610585565b51815160209384036101000a600019018019909216911617905260408051929094018290039091206000818152600490925292902054919750508b1491506105ed905057600080fd5b6000848152600460209081526040918290208054600101905590516106189186918d918d9101611196565b6040516020818303038152906040526040518082805190602001908083835b602083106106565780518252601f199092019160209182019101610637565b51815160209384036101000a600019018019909216911617905260408051929094018290038220600083529101928390529650600193506106a0925086918991508b908b9061121c565b60206040516020810390808403906000865af11580156106c4573d6000803e3d6000fd5b505060408051601f19015160008b815260036020908152838220600160a060020a03841683529052919091205490935060ff161515905061070457600080fd5b6001546040517f06ab5923000000000000000000000000000000000000000000000000000000008152600160a060020a03909116906306ab592390610751908f908f9030906004016111d9565b600060405180830381600087803b15801561076b57600080fd5b505af115801561077f573d6000803e3d6000fd5b50505050600160a060020a038a161515610816576001546040517f1896f70a000000000000000000000000000000000000000000000000000000008152600160a060020a0390911690631896f70a906107df908790600090600401611201565b600060405180830381600087803b1580156107f957600080fd5b505af115801561080d573d6000803e3d6000fd5b50505050610899565b6001546002546040517f1896f70a000000000000000000000000000000000000000000000000000000008152600160a060020a0392831692631896f70a9261086692899290911690600401611201565b600060405180830381600087803b15801561088057600080fd5b505af1158015610894573d6000803e3d6000fd5b505050505b6001546040517f5b0fc9c3000000000000000000000000000000000000000000000000000000008152600160a060020a0390911690635b0fc9c3906108e49087908e90600401611174565b600060405180830381600087803b1580156108fe57600080fd5b505af1158015610912573d6000803e3d6000fd5b5050604051600160a060020a038d1692508d91508e907fa70f211557cf2a784f2b740c2da06edc9e214ed20b2887292c9ff4634287658190600090a4505050505050505050505050565b60408051808201909152600a81527f617574686f726973657200000000000000000000000000000000000000000000602082015261099a3382610269565b6000838152600360209081526040808320600160a060020a038616845290915290819020805460ff19166001179055517fdf88ee02997a250ad060a36e1044960d021495688aca4e58689919227363efbc906109f99085908590611174565b60405180910390a1505050565b60408051808201909152600581527f6f776e65720000000000000000000000000000000000000000000000000000006020820152610a443382610269565b6104648484848080601f01602080910402602001604051908101604052809392919081815260200183838082843750610cb0945050505050565b60408051808201909152600a81527f617574686f7269736572000000000000000000000000000000000000000000006020820152610abc3382610269565b6000838152600360209081526040808320600160a060020a038616845290915290819020805460ff19169055517f62a7105da8d95bec4e98368a27eb0db5af96570e7133abbf031083d85ab5091f906109f99085908590611174565b60046020526000908152604090205481565b60005b81518110156102d35781513090839083908110610b4657fe5b9060200190602002015160405180828051906020019080838360005b83811015610b7a578181015183820152602001610b62565b50505050905090810190601f168015610ba75780820380516001836020036101000a031916815260200191505b50915050600060405180830381855af49150501515610bc557600080fd5b600101610b2d565b610bd78282610c91565b15156102d357600080fd5b610c4c826000836040518082805190602001908083835b60208310610c185780518252601f199092019160209182019101610bf9565b51815160209384036101000a6000190180199092169116179052920194855250604051938490030190922092915050610d53565b81600160a060020a03167fd211483f91fc6eff862467f8de606587a30c8fc9981056f051b897a418df803a82604051610c85919061127a565b60405180910390a25050565b600160a060020a03166000908152602091909152604090205460ff1690565b610d1a826000836040518082805190602001908083835b60208310610ce65780518252601f199092019160209182019101610cc7565b51815160209384036101000a6000190180199092169116179052920194855250604051938490030190922092915050610d75565b81600160a060020a03167fbfec83d64eaa953f2708271a023ab9ee82057f8f3578d548c1a4ba0b5b70048982604051610c85919061127a565b600160a060020a0316600090815260209190915260409020805460ff19169055565b600160a060020a0316600090815260209190915260409020805460ff19166001179055565b60006104d6823561131d565b6000601f82018313610db757600080fd5b8135610dca610dc5826112d0565b6112a9565b81815260209384019390925082018360005b83811015610e085781358601610df28882610e1e565b8452506020928301929190910190600101610ddc565b5050505092915050565b60006104d6823561132e565b6000601f82018313610e2f57600080fd5b8135610e3d610dc5826112f1565b91508082526020830160208301858383011115610e5957600080fd5b610e64838284611342565b50505092915050565b600080601f83018413610e7f57600080fd5b50813567ffffffffffffffff811115610e9757600080fd5b602083019150836001820283011115610eaf57600080fd5b9250929050565b60006104d68235611331565b600080600060408486031215610ed757600080fd5b6000610ee38686610d9a565b935050602084013567ffffffffffffffff811115610f0057600080fd5b610f0c86828701610e6d565b92509250509250925092565b60008060408385031215610f2b57600080fd5b6000610f378585610d9a565b925050602083013567ffffffffffffffff811115610f5457600080fd5b610f6085828601610e1e565b9150509250929050565b600060208284031215610f7c57600080fd5b813567ffffffffffffffff811115610f9357600080fd5b610f9f84828501610da6565b949350505050565b600060208284031215610fb957600080fd5b6000610f9f8484610e12565b600080600080600080600080610100898b031215610fe257600080fd5b6000610fee8b8b610e12565b9850506020610fff8b828c01610e12565b97505060406110108b828c01610d9a565b96505060606110218b828c01610e12565b95505060806110328b828c01610e12565b94505060a06110438b828c01610e12565b93505060c06110548b828c01610e12565b92505060e06110658b828c01610eb6565b9150509295985092959890939650565b6000806040838503121561108857600080fd5b60006110948585610e12565b9250506020610f6085828601610d9a565b6110ae8161131d565b82525050565b6110ae81611329565b6110ae8161132e565b6110ae81611337565b60008284526020840193506110e5838584611342565b6110ee8361137a565b9093019392505050565b600061110382611319565b80845261111781602086016020860161134e565b6111208161137a565b9093016020019392505050565b600581527f6f776e6572000000000000000000000000000000000000000000000000000000602082015260400190565b6110ae81611331565b602081016104d982846110b4565b6040810161118282856110bd565b61118f60208301846110a5565b9392505050565b606081016111a482866110bd565b6111b160208301856110a5565b610f9f60408301846110bd565b604081016111cc82856110bd565b61118f60208301846110bd565b606081016111e782866110bd565b6111f460208301856110bd565b610f9f60408301846110a5565b6040810161120f82856110bd565b61118f60208301846110c6565b6080810161122a82876110bd565b611237602083018661115d565b61124460408301856110bd565b61125160608301846110bd565b95945050505050565b602081016104d982846110c6565b60208082528101610f9f8184866110cf565b602080825281016104d681846110f8565b602080825281016104d98161112d565b602081016104d982846110bd565b60405181810167ffffffffffffffff811182821017156112c857600080fd5b604052919050565b600067ffffffffffffffff8211156112e757600080fd5b5060209081020190565b600067ffffffffffffffff82111561130857600080fd5b506020601f91909101601f19160190565b5190565b600160a060020a031690565b151590565b90565b60ff1690565b60006104d98261131d565b82818337506000910152565b60005b83811015611369578181015183820152602001611351565b838111156104645750506000910152565b601f01601f1916905600a265627a7a72305820bfed91fd6a3c4a3e2b26696e9f962574b65a87dba957adf8a0e39d11b9a4631b6c6578706572696d656e74616cf50037

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

000000000000000000000000314159265dd8dbb310642f98f50c066173c1259b

-----Decoded View---------------
Arg [0] : _ens (address): 0x314159265dD8dbb310642f98f50C066173C1259b

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000314159265dd8dbb310642f98f50c066173c1259b


Swarm Source

bzzr://811d1b709287da3943d1756725d19fad06fb73d3716815108eb11a69f9852dd6

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.