Sepolia Testnet

Contract

0xb21931f28AfED2A4fa6Cf18e8802AEf58A7242E9
Source Code

Overview

ETH Balance

0.072 ETH

Multi Chain

Multichain Addresses

1 address found via
Transaction Hash
Method
Block
From
To
Value
Get Balance43139382023-09-18 14:08:3683 days 5 hrs ago1695046116IN
0xb21931...8A7242E9
0.01 ETH0.000550821.50000001
Get Balance43127502023-09-18 9:56:0083 days 10 hrs ago1695030960IN
0xb21931...8A7242E9
0.01 ETH0.000551291.50127469
Set Balance42489522023-09-08 17:04:4893 days 2 hrs ago1694192688IN
0xb21931...8A7242E9
0 ETH0.000100621.50000001
Get Balance42489482023-09-08 17:04:0093 days 2 hrs ago1694192640IN
0xb21931...8A7242E9
0.01 ETH0.000576551.50000001
Set Balance42470302023-09-08 9:53:4893 days 10 hrs ago1694166828IN
0xb21931...8A7242E9
0 ETH0.000135552.02030332
Get Balance42470242023-09-08 9:52:3693 days 10 hrs ago1694166756IN
0xb21931...8A7242E9
0.01 ETH0.000802842.08867048
Get Balance42467522023-09-08 8:51:2493 days 11 hrs ago1694163084IN
0xb21931...8A7242E9
0.01 ETH0.0065183416.9581129
Get Balance42435172023-09-07 20:42:3693 days 23 hrs ago1694119356IN
0xb21931...8A7242E9
0.01 ETH0.000576561.5
Get Balance42407012023-09-07 10:01:3694 days 10 hrs ago1694080896IN
0xb21931...8A7242E9
0.01 ETH0.001992975.18524438
Set Balance42397092023-09-07 6:04:3694 days 13 hrs ago1694066676IN
0xb21931...8A7242E9
0 ETH0.000149552.23100342
Get Balance42397042023-09-07 6:03:3694 days 13 hrs ago1694066616IN
0xb21931...8A7242E9
0.01 ETH0.000576471.50000271
0x6080604042396682023-09-07 5:55:0094 days 14 hrs ago1694066100IN
 Create: CrosschainLookup
0 ETH0.005870552.50000065

Latest 8 internal transactions

Advanced mode:
Parent Txn Hash Block From To Value
43139382023-09-18 14:08:3683 days 5 hrs ago1695046116
0xb21931...8A7242E9
0.001 ETH
43127502023-09-18 9:56:0083 days 10 hrs ago1695030960
0xb21931...8A7242E9
0.001 ETH
42489482023-09-08 17:04:0093 days 2 hrs ago1694192640
0xb21931...8A7242E9
0.001 ETH
42470242023-09-08 9:52:3693 days 10 hrs ago1694166756
0xb21931...8A7242E9
0.001 ETH
42467522023-09-08 8:51:2493 days 11 hrs ago1694163084
0xb21931...8A7242E9
0.001 ETH
42435172023-09-07 20:42:3693 days 23 hrs ago1694119356
0xb21931...8A7242E9
0.001 ETH
42407012023-09-07 10:01:3694 days 10 hrs ago1694080896
0xb21931...8A7242E9
0.001 ETH
42397042023-09-07 6:03:3694 days 13 hrs ago1694066616
0xb21931...8A7242E9
0.001 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
CrosschainLookup

Compiler Version
v0.8.12+commit.f00d7308

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity Standard Json-Input format)

File 1 of 1 : Ntc.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.12;

interface Morpheus {
    function getFeed(
        uint256 feedID
    )
        external
        view
        returns (
            uint256 value,
            uint256 decimals,
            uint256 timestamp,
            string memory valStr
        );

    function getFeeds(
        uint256[] memory feedIDs
    )
        external
        view
        returns (
            uint256[] memory value,
            uint256[] memory decimals,
            uint256[] memory timestamp,
            string[] memory APIendpoint,
            string[] memory APIpath,
            string[] memory valStr
        );

    function requestFeeds(
        string[] calldata APIendpoint,
        string[] calldata APIendpointPath,
        uint256[] calldata decimals,
        uint256[] calldata bounties
    ) external payable returns (uint256[] memory feeds);

    function supportFeeds(
        uint256[] calldata feedIds,
        uint256[] calldata values
    ) external payable;
}

contract CrosschainLookup {
    Morpheus morpheus = Morpheus(0x0000000000071821e8033345A7Be174647bE0706);
    mapping(uint => mapping(address => mapping(address => uint256)))
        public userBalance;
    mapping(uint => mapping(address => mapping(address => uint256)))
        public userBalanceFeed;
    mapping(uint => string) public RPC;
    address public owner;
    uint fee = 0.001 ether;
    constructor() payable {
        RPC[0] = "https://eth.llamarpc.com";
        RPC[1] = "https://eth.llamarpc.com";
        RPC[10] = "https://mainnet.optimism.io";
        RPC[42161] = "https://arb-mainnet-public.unifra.io";
        RPC[137] = "https://polygon.llamarpc.com";

        owner = msg.sender;
    }

    function getMyBalance(address TOKEN, uint chainID) public payable {
        if (chainID == 0) {
            chainID = 1;
        }
        string[] memory apiEndpoint = new string[](1);
        apiEndpoint[0] = "XCHAIN";

        // ABI encode the balanceOf function and the address
        bytes memory data = abi.encodeWithSignature(
            "balanceOf(address)",
            msg.sender
        );

        string[] memory apiEndpointPath = new string[](1);
        apiEndpointPath[0] = string.concat(
            "XDATA?RPC=",
            RPC[chainID],
            "&ADDRS=",
            bytesToHexString(addressToBytes(TOKEN)),
            "&DATA=",
            bytesToHexString(data),
            "&FLAG=0"
        );

        uint256[] memory decimals = new uint256[](1);
        decimals[0] = 0;

        uint256[] memory bounties = new uint256[](1);
        bounties[0] = fee; // Replace with actual bounty value

        uint256[] memory feeds = morpheus.requestFeeds{value: fee}(
            apiEndpoint,
            apiEndpointPath,
            decimals,
            bounties
        );
        userBalanceFeed[chainID][msg.sender][TOKEN] = feeds[0]; // Storing the feed ID here, to be decoded in setMyBalance
    }

    function getBalance(
        address target,
        address TOKEN,
        uint chainID
    ) public payable {
        if (chainID == 0) {
            chainID = 1;
        }
        string[] memory apiEndpoint = new string[](1);
        apiEndpoint[0] = "XCHAIN";

        // ABI encode the balanceOf function and the address
        bytes memory data = abi.encodeWithSignature(
            "balanceOf(address)",
            target
        );

        string[] memory apiEndpointPath = new string[](1);
        apiEndpointPath[0] = string.concat(
            "XDATA?RPC=",
            RPC[chainID],
            "&ADDRS=",
            bytesToHexString(addressToBytes(TOKEN)),
            "&DATA=",
            bytesToHexString(data),
            "&FLAG=0"
        );

        uint256[] memory decimals = new uint256[](1);
        decimals[0] = 0;

        uint256[] memory bounties = new uint256[](1);
        bounties[0] = fee; // Replace with actual bounty value

        uint256[] memory feeds = morpheus.requestFeeds{value: fee}(
            apiEndpoint,
            apiEndpointPath,
            decimals,
            bounties
        );
        userBalanceFeed[chainID][target][TOKEN] = feeds[0]; // Storing the feed ID here, to be decoded in setMyBalance
    }

    function addressToBytes(
        address _address
    ) public pure returns (bytes memory) {
        bytes20 addressBytes = bytes20(_address);
        bytes memory result = new bytes(20);
        for (uint i = 0; i < 20; i++) {
            result[i] = addressBytes[i];
        }
        return result;
    }

    function bytesToHexString(
        bytes memory data
    ) public pure returns (string memory) {
        bytes memory alphabet = "0123456789abcdef";

        bytes memory str = new bytes(2 + data.length * 2);
        str[0] = "0";
        str[1] = "x";
        for (uint i = 0; i < data.length; i++) {
            str[2 + i * 2] = alphabet[uint(uint8(data[i] >> 4))];
            str[3 + i * 2] = alphabet[uint(uint8(data[i] & 0x0f))];
        }
        return string(str);
    }

    function changeOwnerFEEAndRPC(
        address Own,
        uint nfee,
        string memory newRPC,
        uint i
    ) public {
        require(Own != address(0), "Own");
        owner = Own;
        RPC[i] = newRPC;
        fee=nfee;
    }

    function setMyBalance(address token, uint chainID) public {
        if (chainID == 0) {
            chainID = 1;
        }
        (uint256 balance, uint256 timestamp,, ) = morpheus.getFeed(
            userBalanceFeed[chainID][msg.sender][token]
        );
        require(timestamp >= block.timestamp - 10000, "Data is too old");
        userBalance[chainID][msg.sender][token] = balance;
    }

    function setBalance(address target, address token, uint chainID) public {
        if (chainID == 0) {
            chainID = 1;
        }
        (uint256 balance, uint256 timestamp, , ) = morpheus.getFeed(
            userBalanceFeed[chainID][target][token]
        );
        require(timestamp >= block.timestamp - 10000, "Data is too old");
        userBalance[chainID][target][token] = balance;
    }
}

Settings
{
  "optimizer": {
    "enabled": false,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "metadata": {
    "useLiteralContent": true
  },
  "libraries": {}
}

Contract ABI

[{"inputs":[],"stateMutability":"payable","type":"constructor"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"RPC","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"addressToBytes","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bytes","name":"data","type":"bytes"}],"name":"bytesToHexString","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"Own","type":"address"},{"internalType":"uint256","name":"nfee","type":"uint256"},{"internalType":"string","name":"newRPC","type":"string"},{"internalType":"uint256","name":"i","type":"uint256"}],"name":"changeOwnerFEEAndRPC","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"address","name":"TOKEN","type":"address"},{"internalType":"uint256","name":"chainID","type":"uint256"}],"name":"getBalance","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"TOKEN","type":"address"},{"internalType":"uint256","name":"chainID","type":"uint256"}],"name":"getMyBalance","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"chainID","type":"uint256"}],"name":"setBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"chainID","type":"uint256"}],"name":"setMyBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"userBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"userBalanceFeed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}]

60806040526e071821e8033345a7be174647be07066000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555066038d7ea4c680006005556040518060400160405280601881526020017f68747470733a2f2f6574682e6c6c616d617270632e636f6d0000000000000000815250600360008081526020019081526020016000209080519060200190620000bc92919062000269565b506040518060400160405280601881526020017f68747470733a2f2f6574682e6c6c616d617270632e636f6d0000000000000000815250600360006001815260200190815260200160002090805190602001906200011c92919062000269565b506040518060400160405280601b81526020017f68747470733a2f2f6d61696e6e65742e6f7074696d69736d2e696f000000000081525060036000600a815260200190815260200160002090805190602001906200017c92919062000269565b50604051806060016040528060248152602001620028e3602491396003600061a4b181526020019081526020016000209080519060200190620001c192919062000269565b506040518060400160405280601c81526020017f68747470733a2f2f706f6c79676f6e2e6c6c616d617270632e636f6d00000000815250600360006089815260200190815260200160002090805190602001906200022192919062000269565b5033600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506200037e565b828054620002779062000348565b90600052602060002090601f0160209004810192826200029b5760008555620002e7565b82601f10620002b657805160ff1916838001178555620002e7565b82800160010185558215620002e7579182015b82811115620002e6578251825591602001919060010190620002c9565b5b509050620002f69190620002fa565b5090565b5b8082111562000315576000816000905550600101620002fb565b5090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200036157607f821691505b6020821081141562000378576200037762000319565b5b50919050565b612555806200038e6000396000f3fe60806040526004361061009c5760003560e01c8063877e363011610064578063877e36301461019d5780638da5cb5b146101c6578063b347955c146101f1578063b5c9cbbe1461022e578063ccd2ad3714610257578063ded8454a146102735761009c565b806323822969146100a1578063402ad19a146100de57806359de1cc41461010757806361e5f354146101445780637d520c2214610160575b600080fd5b3480156100ad57600080fd5b506100c860048036038101906100c391906116da565b6102b0565b6040516100d5919061173c565b60405180910390f35b3480156100ea57600080fd5b506101056004803603810190610100919061189d565b6102e2565b005b34801561011357600080fd5b5061012e600480360381019061012991906116da565b6103c8565b60405161013b919061173c565b60405180910390f35b61015e60048036038101906101599190611920565b6103fa565b005b34801561016c57600080fd5b5061018760048036038101906101829190611a14565b61084a565b6040516101949190611ae5565b60405180910390f35b3480156101a957600080fd5b506101c460048036038101906101bf9190611b07565b610b44565b005b3480156101d257600080fd5b506101db610d6f565b6040516101e89190611b56565b60405180910390f35b3480156101fd57600080fd5b5061021860048036038101906102139190611b71565b610d95565b6040516102259190611ae5565b60405180910390f35b34801561023a57600080fd5b5061025560048036038101906102509190611920565b610e35565b005b610271600480360381019061026c9190611b07565b611061565b005b34801561027f57600080fd5b5061029a60048036038101906102959190611b9e565b6114b0565b6040516102a79190611c20565b60405180910390f35b600160205282600052604060002060205281600052604060002060205280600052604060002060009250925050505481565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415610352576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161034990611c8e565b60405180910390fd5b83600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816003600083815260200190815260200160002090805190602001906103ba92919061158f565b508260058190555050505050565b600260205282600052604060002060205281600052604060002060205280600052604060002060009250925050505481565b600081141561040857600190505b6000600167ffffffffffffffff81111561042557610424611772565b5b60405190808252806020026020018201604052801561045857816020015b60608152602001906001900390816104435790505b5090506040518060400160405280600681526020017f58434841494e0000000000000000000000000000000000000000000000000000815250816000815181106104a5576104a4611cae565b5b60200260200101819052506000846040516024016104c39190611b56565b6040516020818303038152906040527f70a08231000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505090506000600167ffffffffffffffff81111561055f5761055e611772565b5b60405190808252806020026020018201604052801561059257816020015b606081526020019060019003908161057d5790505b509050600360008581526020019081526020016000206105b96105b4876114b0565b61084a565b6105c28461084a565b6040516020016105d493929190611ea6565b604051602081830303815290604052816000815181106105f7576105f6611cae565b5b60200260200101819052506000600167ffffffffffffffff81111561061f5761061e611772565b5b60405190808252806020026020018201604052801561064d5781602001602082028036833780820191505090505b50905060008160008151811061066657610665611cae565b5b6020026020010181815250506000600167ffffffffffffffff81111561068f5761068e611772565b5b6040519080825280602002602001820160405280156106bd5781602001602082028036833780820191505090505b509050600554816000815181106106d7576106d6611cae565b5b60200260200101818152505060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663639b55ba600554888787876040518663ffffffff1660e01b815260040161074894939291906120dd565b60006040518083038185885af1158015610766573d6000803e3d6000fd5b50505050506040513d6000823e3d601f19601f82011682018060405250810190610790919061221b565b9050806000815181106107a6576107a5611cae565b5b60200260200101516002600089815260200190815260200160002060008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050505050505050565b606060006040518060400160405280601081526020017f303132333435363738396162636465660000000000000000000000000000000081525090506000600284516108969190612293565b60026108a291906122ed565b67ffffffffffffffff8111156108bb576108ba611772565b5b6040519080825280601f01601f1916602001820160405280156108ed5781602001600182028036833780820191505090505b5090507f30000000000000000000000000000000000000000000000000000000000000008160008151811061092557610924611cae565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f78000000000000000000000000000000000000000000000000000000000000008160018151811061098957610988611cae565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060005b8451811015610b39578260048683815181106109da576109d9611cae565b5b602001015160f81c60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916901c60f81c60ff1681518110610a2057610a1f611cae565b5b602001015160f81c60f81b82600283610a399190612293565b6002610a4591906122ed565b81518110610a5657610a55611cae565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535082600f60f81b868381518110610a9e57610a9d611cae565b5b602001015160f81c60f81b1660f81c60ff1681518110610ac157610ac0611cae565b5b602001015160f81c60f81b82600283610ada9190612293565b6003610ae691906122ed565b81518110610af757610af6611cae565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508080610b3190612343565b9150506109bb565b508092505050919050565b6000811415610b5257600190505b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ecb76d906002600086815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518263ffffffff1660e01b8152600401610c3b919061173c565b600060405180830381865afa158015610c58573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610c8191906123fc565b50509150915061271042610c95919061247f565b811015610cd7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cce906124ff565b60405180910390fd5b816001600085815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050505050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60036020528060005260406000206000915090508054610db490611d32565b80601f0160208091040260200160405190810160405280929190818152602001828054610de090611d32565b8015610e2d5780601f10610e0257610100808354040283529160200191610e2d565b820191906000526020600020905b815481529060010190602001808311610e1057829003601f168201915b505050505081565b6000811415610e4357600190505b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ecb76d906002600086815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518263ffffffff1660e01b8152600401610f2c919061173c565b600060405180830381865afa158015610f49573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610f7291906123fc565b50509150915061271042610f86919061247f565b811015610fc8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fbf906124ff565b60405180910390fd5b816001600085815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050505050565b600081141561106f57600190505b6000600167ffffffffffffffff81111561108c5761108b611772565b5b6040519080825280602002602001820160405280156110bf57816020015b60608152602001906001900390816110aa5790505b5090506040518060400160405280600681526020017f58434841494e00000000000000000000000000000000000000000000000000008152508160008151811061110c5761110b611cae565b5b602002602001018190525060003360405160240161112a9190611b56565b6040516020818303038152906040527f70a08231000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505090506000600167ffffffffffffffff8111156111c6576111c5611772565b5b6040519080825280602002602001820160405280156111f957816020015b60608152602001906001900390816111e45790505b5090506003600085815260200190815260200160002061122061121b876114b0565b61084a565b6112298461084a565b60405160200161123b93929190611ea6565b6040516020818303038152906040528160008151811061125e5761125d611cae565b5b60200260200101819052506000600167ffffffffffffffff81111561128657611285611772565b5b6040519080825280602002602001820160405280156112b45781602001602082028036833780820191505090505b5090506000816000815181106112cd576112cc611cae565b5b6020026020010181815250506000600167ffffffffffffffff8111156112f6576112f5611772565b5b6040519080825280602002602001820160405280156113245781602001602082028036833780820191505090505b5090506005548160008151811061133e5761133d611cae565b5b60200260200101818152505060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663639b55ba600554888787876040518663ffffffff1660e01b81526004016113af94939291906120dd565b60006040518083038185885af11580156113cd573d6000803e3d6000fd5b50505050506040513d6000823e3d601f19601f820116820180604052508101906113f7919061221b565b90508060008151811061140d5761140c611cae565b5b60200260200101516002600089815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050505050505050565b606060008260601b90506000601467ffffffffffffffff8111156114d7576114d6611772565b5b6040519080825280601f01601f1916602001820160405280156115095781602001600182028036833780820191505090505b50905060005b60148110156115845782816014811061152b5761152a611cae565b5b1a60f81b82828151811061154257611541611cae565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350808061157c90612343565b91505061150f565b508092505050919050565b82805461159b90611d32565b90600052602060002090601f0160209004810192826115bd5760008555611604565b82601f106115d657805160ff1916838001178555611604565b82800160010185558215611604579182015b828111156116035782518255916020019190600101906115e8565b5b5090506116119190611615565b5090565b5b8082111561162e576000816000905550600101611616565b5090565b6000604051905090565b600080fd5b600080fd5b6000819050919050565b61165981611646565b811461166457600080fd5b50565b60008135905061167681611650565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006116a78261167c565b9050919050565b6116b78161169c565b81146116c257600080fd5b50565b6000813590506116d4816116ae565b92915050565b6000806000606084860312156116f3576116f261163c565b5b600061170186828701611667565b9350506020611712868287016116c5565b9250506040611723868287016116c5565b9150509250925092565b61173681611646565b82525050565b6000602082019050611751600083018461172d565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6117aa82611761565b810181811067ffffffffffffffff821117156117c9576117c8611772565b5b80604052505050565b60006117dc611632565b90506117e882826117a1565b919050565b600067ffffffffffffffff82111561180857611807611772565b5b61181182611761565b9050602081019050919050565b82818337600083830152505050565b600061184061183b846117ed565b6117d2565b90508281526020810184848401111561185c5761185b61175c565b5b61186784828561181e565b509392505050565b600082601f83011261188457611883611757565b5b813561189484826020860161182d565b91505092915050565b600080600080608085870312156118b7576118b661163c565b5b60006118c5878288016116c5565b94505060206118d687828801611667565b935050604085013567ffffffffffffffff8111156118f7576118f6611641565b5b6119038782880161186f565b925050606061191487828801611667565b91505092959194509250565b6000806000606084860312156119395761193861163c565b5b6000611947868287016116c5565b9350506020611958868287016116c5565b925050604061196986828701611667565b9150509250925092565b600067ffffffffffffffff82111561198e5761198d611772565b5b61199782611761565b9050602081019050919050565b60006119b76119b284611973565b6117d2565b9050828152602081018484840111156119d3576119d261175c565b5b6119de84828561181e565b509392505050565b600082601f8301126119fb576119fa611757565b5b8135611a0b8482602086016119a4565b91505092915050565b600060208284031215611a2a57611a2961163c565b5b600082013567ffffffffffffffff811115611a4857611a47611641565b5b611a54848285016119e6565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611a97578082015181840152602081019050611a7c565b83811115611aa6576000848401525b50505050565b6000611ab782611a5d565b611ac18185611a68565b9350611ad1818560208601611a79565b611ada81611761565b840191505092915050565b60006020820190508181036000830152611aff8184611aac565b905092915050565b60008060408385031215611b1e57611b1d61163c565b5b6000611b2c858286016116c5565b9250506020611b3d85828601611667565b9150509250929050565b611b508161169c565b82525050565b6000602082019050611b6b6000830184611b47565b92915050565b600060208284031215611b8757611b8661163c565b5b6000611b9584828501611667565b91505092915050565b600060208284031215611bb457611bb361163c565b5b6000611bc2848285016116c5565b91505092915050565b600081519050919050565b600082825260208201905092915050565b6000611bf282611bcb565b611bfc8185611bd6565b9350611c0c818560208601611a79565b611c1581611761565b840191505092915050565b60006020820190508181036000830152611c3a8184611be7565b905092915050565b7f4f776e0000000000000000000000000000000000000000000000000000000000600082015250565b6000611c78600383611a68565b9150611c8382611c42565b602082019050919050565b60006020820190508181036000830152611ca781611c6b565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f58444154413f5250433d00000000000000000000000000000000000000000000815250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680611d4a57607f821691505b60208210811415611d5e57611d5d611d03565b5b50919050565b600081905092915050565b60008190508160005260206000209050919050565b60008154611d9181611d32565b611d9b8186611d64565b94506001821660008114611db65760018114611dc757611dfa565b60ff19831686528186019350611dfa565b611dd085611d6f565b60005b83811015611df257815481890152600182019150602081019050611dd3565b838801955050505b50505092915050565b7f2641444452533d00000000000000000000000000000000000000000000000000815250565b6000611e3482611a5d565b611e3e8185611d64565b9350611e4e818560208601611a79565b80840191505092915050565b7f26444154413d0000000000000000000000000000000000000000000000000000815250565b7f26464c41473d3000000000000000000000000000000000000000000000000000815250565b6000611eb182611cdd565b600a82019150611ec18286611d84565b9150611ecc82611e03565b600782019150611edc8285611e29565b9150611ee782611e5a565b600682019150611ef78284611e29565b9150611f0282611e80565b600782019150819050949350505050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600082825260208201905092915050565b6000611f5b82611a5d565b611f658185611f3f565b9350611f75818560208601611a79565b611f7e81611761565b840191505092915050565b6000611f958383611f50565b905092915050565b6000602082019050919050565b6000611fb582611f13565b611fbf8185611f1e565b935083602082028501611fd185611f2f565b8060005b8581101561200d5784840389528151611fee8582611f89565b9450611ff983611f9d565b925060208a01995050600181019050611fd5565b50829750879550505050505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61205481611646565b82525050565b6000612066838361204b565b60208301905092915050565b6000602082019050919050565b600061208a8261201f565b612094818561202a565b935061209f8361203b565b8060005b838110156120d05781516120b7888261205a565b97506120c283612072565b9250506001810190506120a3565b5085935050505092915050565b600060808201905081810360008301526120f78187611faa565b9050818103602083015261210b8186611faa565b9050818103604083015261211f818561207f565b90508181036060830152612133818461207f565b905095945050505050565b600067ffffffffffffffff82111561215957612158611772565b5b602082029050602081019050919050565b600080fd5b60008151905061217e81611650565b92915050565b60006121976121928461213e565b6117d2565b905080838252602082019050602084028301858111156121ba576121b961216a565b5b835b818110156121e357806121cf888261216f565b8452602084019350506020810190506121bc565b5050509392505050565b600082601f83011261220257612201611757565b5b8151612212848260208601612184565b91505092915050565b6000602082840312156122315761223061163c565b5b600082015167ffffffffffffffff81111561224f5761224e611641565b5b61225b848285016121ed565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061229e82611646565b91506122a983611646565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156122e2576122e1612264565b5b828202905092915050565b60006122f882611646565b915061230383611646565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561233857612337612264565b5b828201905092915050565b600061234e82611646565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561238157612380612264565b5b600182019050919050565b600061239f61239a846117ed565b6117d2565b9050828152602081018484840111156123bb576123ba61175c565b5b6123c6848285611a79565b509392505050565b600082601f8301126123e3576123e2611757565b5b81516123f384826020860161238c565b91505092915050565b600080600080608085870312156124165761241561163c565b5b60006124248782880161216f565b94505060206124358782880161216f565b93505060406124468782880161216f565b925050606085015167ffffffffffffffff81111561246757612466611641565b5b612473878288016123ce565b91505092959194509250565b600061248a82611646565b915061249583611646565b9250828210156124a8576124a7612264565b5b828203905092915050565b7f4461746120697320746f6f206f6c640000000000000000000000000000000000600082015250565b60006124e9600f83611a68565b91506124f4826124b3565b602082019050919050565b60006020820190508181036000830152612518816124dc565b905091905056fea26469706673582212209607e937510ab3783ae2520a5ccffcb69e6dcedbe824526ef54a3d04db1ff52f64736f6c634300080c003368747470733a2f2f6172622d6d61696e6e65742d7075626c69632e756e696672612e696f

Deployed Bytecode

0x60806040526004361061009c5760003560e01c8063877e363011610064578063877e36301461019d5780638da5cb5b146101c6578063b347955c146101f1578063b5c9cbbe1461022e578063ccd2ad3714610257578063ded8454a146102735761009c565b806323822969146100a1578063402ad19a146100de57806359de1cc41461010757806361e5f354146101445780637d520c2214610160575b600080fd5b3480156100ad57600080fd5b506100c860048036038101906100c391906116da565b6102b0565b6040516100d5919061173c565b60405180910390f35b3480156100ea57600080fd5b506101056004803603810190610100919061189d565b6102e2565b005b34801561011357600080fd5b5061012e600480360381019061012991906116da565b6103c8565b60405161013b919061173c565b60405180910390f35b61015e60048036038101906101599190611920565b6103fa565b005b34801561016c57600080fd5b5061018760048036038101906101829190611a14565b61084a565b6040516101949190611ae5565b60405180910390f35b3480156101a957600080fd5b506101c460048036038101906101bf9190611b07565b610b44565b005b3480156101d257600080fd5b506101db610d6f565b6040516101e89190611b56565b60405180910390f35b3480156101fd57600080fd5b5061021860048036038101906102139190611b71565b610d95565b6040516102259190611ae5565b60405180910390f35b34801561023a57600080fd5b5061025560048036038101906102509190611920565b610e35565b005b610271600480360381019061026c9190611b07565b611061565b005b34801561027f57600080fd5b5061029a60048036038101906102959190611b9e565b6114b0565b6040516102a79190611c20565b60405180910390f35b600160205282600052604060002060205281600052604060002060205280600052604060002060009250925050505481565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415610352576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161034990611c8e565b60405180910390fd5b83600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816003600083815260200190815260200160002090805190602001906103ba92919061158f565b508260058190555050505050565b600260205282600052604060002060205281600052604060002060205280600052604060002060009250925050505481565b600081141561040857600190505b6000600167ffffffffffffffff81111561042557610424611772565b5b60405190808252806020026020018201604052801561045857816020015b60608152602001906001900390816104435790505b5090506040518060400160405280600681526020017f58434841494e0000000000000000000000000000000000000000000000000000815250816000815181106104a5576104a4611cae565b5b60200260200101819052506000846040516024016104c39190611b56565b6040516020818303038152906040527f70a08231000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505090506000600167ffffffffffffffff81111561055f5761055e611772565b5b60405190808252806020026020018201604052801561059257816020015b606081526020019060019003908161057d5790505b509050600360008581526020019081526020016000206105b96105b4876114b0565b61084a565b6105c28461084a565b6040516020016105d493929190611ea6565b604051602081830303815290604052816000815181106105f7576105f6611cae565b5b60200260200101819052506000600167ffffffffffffffff81111561061f5761061e611772565b5b60405190808252806020026020018201604052801561064d5781602001602082028036833780820191505090505b50905060008160008151811061066657610665611cae565b5b6020026020010181815250506000600167ffffffffffffffff81111561068f5761068e611772565b5b6040519080825280602002602001820160405280156106bd5781602001602082028036833780820191505090505b509050600554816000815181106106d7576106d6611cae565b5b60200260200101818152505060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663639b55ba600554888787876040518663ffffffff1660e01b815260040161074894939291906120dd565b60006040518083038185885af1158015610766573d6000803e3d6000fd5b50505050506040513d6000823e3d601f19601f82011682018060405250810190610790919061221b565b9050806000815181106107a6576107a5611cae565b5b60200260200101516002600089815260200190815260200160002060008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050505050505050565b606060006040518060400160405280601081526020017f303132333435363738396162636465660000000000000000000000000000000081525090506000600284516108969190612293565b60026108a291906122ed565b67ffffffffffffffff8111156108bb576108ba611772565b5b6040519080825280601f01601f1916602001820160405280156108ed5781602001600182028036833780820191505090505b5090507f30000000000000000000000000000000000000000000000000000000000000008160008151811061092557610924611cae565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f78000000000000000000000000000000000000000000000000000000000000008160018151811061098957610988611cae565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060005b8451811015610b39578260048683815181106109da576109d9611cae565b5b602001015160f81c60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916901c60f81c60ff1681518110610a2057610a1f611cae565b5b602001015160f81c60f81b82600283610a399190612293565b6002610a4591906122ed565b81518110610a5657610a55611cae565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535082600f60f81b868381518110610a9e57610a9d611cae565b5b602001015160f81c60f81b1660f81c60ff1681518110610ac157610ac0611cae565b5b602001015160f81c60f81b82600283610ada9190612293565b6003610ae691906122ed565b81518110610af757610af6611cae565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508080610b3190612343565b9150506109bb565b508092505050919050565b6000811415610b5257600190505b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ecb76d906002600086815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518263ffffffff1660e01b8152600401610c3b919061173c565b600060405180830381865afa158015610c58573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610c8191906123fc565b50509150915061271042610c95919061247f565b811015610cd7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cce906124ff565b60405180910390fd5b816001600085815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050505050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60036020528060005260406000206000915090508054610db490611d32565b80601f0160208091040260200160405190810160405280929190818152602001828054610de090611d32565b8015610e2d5780601f10610e0257610100808354040283529160200191610e2d565b820191906000526020600020905b815481529060010190602001808311610e1057829003601f168201915b505050505081565b6000811415610e4357600190505b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ecb76d906002600086815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518263ffffffff1660e01b8152600401610f2c919061173c565b600060405180830381865afa158015610f49573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610f7291906123fc565b50509150915061271042610f86919061247f565b811015610fc8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fbf906124ff565b60405180910390fd5b816001600085815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050505050565b600081141561106f57600190505b6000600167ffffffffffffffff81111561108c5761108b611772565b5b6040519080825280602002602001820160405280156110bf57816020015b60608152602001906001900390816110aa5790505b5090506040518060400160405280600681526020017f58434841494e00000000000000000000000000000000000000000000000000008152508160008151811061110c5761110b611cae565b5b602002602001018190525060003360405160240161112a9190611b56565b6040516020818303038152906040527f70a08231000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505090506000600167ffffffffffffffff8111156111c6576111c5611772565b5b6040519080825280602002602001820160405280156111f957816020015b60608152602001906001900390816111e45790505b5090506003600085815260200190815260200160002061122061121b876114b0565b61084a565b6112298461084a565b60405160200161123b93929190611ea6565b6040516020818303038152906040528160008151811061125e5761125d611cae565b5b60200260200101819052506000600167ffffffffffffffff81111561128657611285611772565b5b6040519080825280602002602001820160405280156112b45781602001602082028036833780820191505090505b5090506000816000815181106112cd576112cc611cae565b5b6020026020010181815250506000600167ffffffffffffffff8111156112f6576112f5611772565b5b6040519080825280602002602001820160405280156113245781602001602082028036833780820191505090505b5090506005548160008151811061133e5761133d611cae565b5b60200260200101818152505060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663639b55ba600554888787876040518663ffffffff1660e01b81526004016113af94939291906120dd565b60006040518083038185885af11580156113cd573d6000803e3d6000fd5b50505050506040513d6000823e3d601f19601f820116820180604052508101906113f7919061221b565b90508060008151811061140d5761140c611cae565b5b60200260200101516002600089815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050505050505050565b606060008260601b90506000601467ffffffffffffffff8111156114d7576114d6611772565b5b6040519080825280601f01601f1916602001820160405280156115095781602001600182028036833780820191505090505b50905060005b60148110156115845782816014811061152b5761152a611cae565b5b1a60f81b82828151811061154257611541611cae565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350808061157c90612343565b91505061150f565b508092505050919050565b82805461159b90611d32565b90600052602060002090601f0160209004810192826115bd5760008555611604565b82601f106115d657805160ff1916838001178555611604565b82800160010185558215611604579182015b828111156116035782518255916020019190600101906115e8565b5b5090506116119190611615565b5090565b5b8082111561162e576000816000905550600101611616565b5090565b6000604051905090565b600080fd5b600080fd5b6000819050919050565b61165981611646565b811461166457600080fd5b50565b60008135905061167681611650565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006116a78261167c565b9050919050565b6116b78161169c565b81146116c257600080fd5b50565b6000813590506116d4816116ae565b92915050565b6000806000606084860312156116f3576116f261163c565b5b600061170186828701611667565b9350506020611712868287016116c5565b9250506040611723868287016116c5565b9150509250925092565b61173681611646565b82525050565b6000602082019050611751600083018461172d565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6117aa82611761565b810181811067ffffffffffffffff821117156117c9576117c8611772565b5b80604052505050565b60006117dc611632565b90506117e882826117a1565b919050565b600067ffffffffffffffff82111561180857611807611772565b5b61181182611761565b9050602081019050919050565b82818337600083830152505050565b600061184061183b846117ed565b6117d2565b90508281526020810184848401111561185c5761185b61175c565b5b61186784828561181e565b509392505050565b600082601f83011261188457611883611757565b5b813561189484826020860161182d565b91505092915050565b600080600080608085870312156118b7576118b661163c565b5b60006118c5878288016116c5565b94505060206118d687828801611667565b935050604085013567ffffffffffffffff8111156118f7576118f6611641565b5b6119038782880161186f565b925050606061191487828801611667565b91505092959194509250565b6000806000606084860312156119395761193861163c565b5b6000611947868287016116c5565b9350506020611958868287016116c5565b925050604061196986828701611667565b9150509250925092565b600067ffffffffffffffff82111561198e5761198d611772565b5b61199782611761565b9050602081019050919050565b60006119b76119b284611973565b6117d2565b9050828152602081018484840111156119d3576119d261175c565b5b6119de84828561181e565b509392505050565b600082601f8301126119fb576119fa611757565b5b8135611a0b8482602086016119a4565b91505092915050565b600060208284031215611a2a57611a2961163c565b5b600082013567ffffffffffffffff811115611a4857611a47611641565b5b611a54848285016119e6565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611a97578082015181840152602081019050611a7c565b83811115611aa6576000848401525b50505050565b6000611ab782611a5d565b611ac18185611a68565b9350611ad1818560208601611a79565b611ada81611761565b840191505092915050565b60006020820190508181036000830152611aff8184611aac565b905092915050565b60008060408385031215611b1e57611b1d61163c565b5b6000611b2c858286016116c5565b9250506020611b3d85828601611667565b9150509250929050565b611b508161169c565b82525050565b6000602082019050611b6b6000830184611b47565b92915050565b600060208284031215611b8757611b8661163c565b5b6000611b9584828501611667565b91505092915050565b600060208284031215611bb457611bb361163c565b5b6000611bc2848285016116c5565b91505092915050565b600081519050919050565b600082825260208201905092915050565b6000611bf282611bcb565b611bfc8185611bd6565b9350611c0c818560208601611a79565b611c1581611761565b840191505092915050565b60006020820190508181036000830152611c3a8184611be7565b905092915050565b7f4f776e0000000000000000000000000000000000000000000000000000000000600082015250565b6000611c78600383611a68565b9150611c8382611c42565b602082019050919050565b60006020820190508181036000830152611ca781611c6b565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f58444154413f5250433d00000000000000000000000000000000000000000000815250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680611d4a57607f821691505b60208210811415611d5e57611d5d611d03565b5b50919050565b600081905092915050565b60008190508160005260206000209050919050565b60008154611d9181611d32565b611d9b8186611d64565b94506001821660008114611db65760018114611dc757611dfa565b60ff19831686528186019350611dfa565b611dd085611d6f565b60005b83811015611df257815481890152600182019150602081019050611dd3565b838801955050505b50505092915050565b7f2641444452533d00000000000000000000000000000000000000000000000000815250565b6000611e3482611a5d565b611e3e8185611d64565b9350611e4e818560208601611a79565b80840191505092915050565b7f26444154413d0000000000000000000000000000000000000000000000000000815250565b7f26464c41473d3000000000000000000000000000000000000000000000000000815250565b6000611eb182611cdd565b600a82019150611ec18286611d84565b9150611ecc82611e03565b600782019150611edc8285611e29565b9150611ee782611e5a565b600682019150611ef78284611e29565b9150611f0282611e80565b600782019150819050949350505050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600082825260208201905092915050565b6000611f5b82611a5d565b611f658185611f3f565b9350611f75818560208601611a79565b611f7e81611761565b840191505092915050565b6000611f958383611f50565b905092915050565b6000602082019050919050565b6000611fb582611f13565b611fbf8185611f1e565b935083602082028501611fd185611f2f565b8060005b8581101561200d5784840389528151611fee8582611f89565b9450611ff983611f9d565b925060208a01995050600181019050611fd5565b50829750879550505050505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61205481611646565b82525050565b6000612066838361204b565b60208301905092915050565b6000602082019050919050565b600061208a8261201f565b612094818561202a565b935061209f8361203b565b8060005b838110156120d05781516120b7888261205a565b97506120c283612072565b9250506001810190506120a3565b5085935050505092915050565b600060808201905081810360008301526120f78187611faa565b9050818103602083015261210b8186611faa565b9050818103604083015261211f818561207f565b90508181036060830152612133818461207f565b905095945050505050565b600067ffffffffffffffff82111561215957612158611772565b5b602082029050602081019050919050565b600080fd5b60008151905061217e81611650565b92915050565b60006121976121928461213e565b6117d2565b905080838252602082019050602084028301858111156121ba576121b961216a565b5b835b818110156121e357806121cf888261216f565b8452602084019350506020810190506121bc565b5050509392505050565b600082601f83011261220257612201611757565b5b8151612212848260208601612184565b91505092915050565b6000602082840312156122315761223061163c565b5b600082015167ffffffffffffffff81111561224f5761224e611641565b5b61225b848285016121ed565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061229e82611646565b91506122a983611646565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156122e2576122e1612264565b5b828202905092915050565b60006122f882611646565b915061230383611646565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561233857612337612264565b5b828201905092915050565b600061234e82611646565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561238157612380612264565b5b600182019050919050565b600061239f61239a846117ed565b6117d2565b9050828152602081018484840111156123bb576123ba61175c565b5b6123c6848285611a79565b509392505050565b600082601f8301126123e3576123e2611757565b5b81516123f384826020860161238c565b91505092915050565b600080600080608085870312156124165761241561163c565b5b60006124248782880161216f565b94505060206124358782880161216f565b93505060406124468782880161216f565b925050606085015167ffffffffffffffff81111561246757612466611641565b5b612473878288016123ce565b91505092959194509250565b600061248a82611646565b915061249583611646565b9250828210156124a8576124a7612264565b5b828203905092915050565b7f4461746120697320746f6f206f6c640000000000000000000000000000000000600082015250565b60006124e9600f83611a68565b91506124f4826124b3565b602082019050919050565b60006020820190508181036000830152612518816124dc565b905091905056fea26469706673582212209607e937510ab3783ae2520a5ccffcb69e6dcedbe824526ef54a3d04db1ff52f64736f6c634300080c0033

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Txn Hash Block Value Eth2 PubKey Valid
View All Deposits
[ 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.