ETH Price: $1,928.62 (-2.21%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Unlock213791272024-12-11 12:01:11438 days ago1733918471IN
0x3Ffe568B...6cE16EE00
0 ETH0.0016245614.69185364
Unlock213790882024-12-11 11:53:11438 days ago1733917991IN
0x3Ffe568B...6cE16EE00
0 ETH0.0012861713.08739648
Unlock213782102024-12-11 8:55:11438 days ago1733907311IN
0x3Ffe568B...6cE16EE00
0 ETH0.0054295213.16447328
Lock213620262024-12-09 2:42:47440 days ago1733712167IN
0x3Ffe568B...6cE16EE00
0 ETH0.0015806310.83249583
Unlock213617592024-12-09 1:48:59440 days ago1733708939IN
0x3Ffe568B...6cE16EE00
0 ETH0.0077121714.50946262
Lock213566932024-12-08 8:51:47441 days ago1733647907IN
0x3Ffe568B...6cE16EE00
0 ETH0.001296258.88492421
Unlock213558222024-12-08 5:56:23441 days ago1733637383IN
0x3Ffe568B...6cE16EE00
0 ETH0.000809148.23336831
Lock213528242024-12-07 19:53:35442 days ago1733601215IN
0x3Ffe568B...6cE16EE00
0 ETH0.0022169715.19580803
Lock213454952024-12-06 19:18:11443 days ago1733512691IN
0x3Ffe568B...6cE16EE00
0 ETH0.0102707828.30070889
Lock213401542024-12-06 1:24:35443 days ago1733448275IN
0x3Ffe568B...6cE16EE00
0 ETH0.0050353821.02570028
Lock213356582024-12-05 10:20:23444 days ago1733394023IN
0x3Ffe568B...6cE16EE00
0 ETH0.007294521.94990592
Lock213255432024-12-04 0:25:35446 days ago1733271935IN
0x3Ffe568B...6cE16EE00
0 ETH0.0034673323.76615183
Lock213255292024-12-04 0:22:47446 days ago1733271767IN
0x3Ffe568B...6cE16EE00
0 ETH0.0031499821.58763892
Lock212918302024-11-29 7:21:59450 days ago1732864919IN
0x3Ffe568B...6cE16EE00
0 ETH0.00124988.56524905
Lock212749112024-11-26 22:28:11453 days ago1732660091IN
0x3Ffe568B...6cE16EE00
0 ETH0.002185169.12437402
Lock212745352024-11-26 21:12:35453 days ago1732655555IN
0x3Ffe568B...6cE16EE00
0 ETH0.001437219.85109832
Lock212498402024-11-23 10:27:47456 days ago1732357667IN
0x3Ffe568B...6cE16EE00
0 ETH0.0027179111.34891299
Lock212497382024-11-23 10:07:11456 days ago1732356431IN
0x3Ffe568B...6cE16EE00
0 ETH0.002540279.43207665
Lock212450452024-11-22 18:25:59457 days ago1732299959IN
0x3Ffe568B...6cE16EE00
0 ETH0.0020585114.10969566
Lock212442912024-11-22 15:53:11457 days ago1732290791IN
0x3Ffe568B...6cE16EE00
0 ETH0.0026904318.43824133
Lock212399122024-11-22 1:13:11457 days ago1732237991IN
0x3Ffe568B...6cE16EE00
0 ETH0.0014828110.16364599
Lock212329602024-11-21 1:55:11458 days ago1732154111IN
0x3Ffe568B...6cE16EE00
0 ETH0.002374357.14466711
Lock212265512024-11-20 4:25:59459 days ago1732076759IN
0x3Ffe568B...6cE16EE00
0 ETH0.019906019.73543107
Lock212064192024-11-17 9:06:11462 days ago1731834371IN
0x3Ffe568B...6cE16EE00
0 ETH0.0014673310.05605097
Lock212037782024-11-17 0:14:59463 days ago1731802499IN
0x3Ffe568B...6cE16EE00
0 ETH0.001297088.89058858
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
ElderGateway

Compiler Version
v0.8.9+commit.e5eed63a

Optimization Enabled:
No with 200 runs

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

// SPDX-License-Identifier: MIT

pragma solidity 0.8.9;

interface INFT {
    function transferFrom(
        address _from,
        address _to,
        uint256 _tokenId
    ) external;
}

contract ElderGateway {

    /**
    * @dev Details of locked NFT
    * @param user owner of tokenId
    * @param blockNo block.number when locked
    */
    struct Details {
        address user;
        uint256 blockNo;
    }

    /**
    * @dev mapping holds below values:
    * collectionAddress => tokenId => Details  
    */
    mapping(address => mapping(uint256 => Details)) public lockedData;

    /** 
    * @dev Emits event after nft is successfully locked
    * @param user address which locked nfts (owner of tokens)
    * @param nft collection address
    * @param tokenIds list of tokenIds from `nft` collection
    */
    event Locked(address indexed user, address indexed nft, uint256[] tokenIds);

    /** 
    * @dev Emits event after nft is successfully unlocked
    * @param user address which unlocked nfts (owner of tokens)
    * @param nft collection address
    * @param tokenIds list of tokenIds from `nft` collection
    */
    event Unlocked(address indexed user, address indexed nft, uint256[] tokenIds);

    /**
    * @dev Locks multiple tokenIds from multiple collections.
    * @param nfts list of collection addresses.
    * @param tokenIds list of tokenIds from collections. First dimension index has to match `nfts` index.
    */
    function lock(address[] calldata nfts, uint256[][] calldata tokenIds) external {
        require(nfts.length == tokenIds.length, "NFTs addresses & tokenIds length mismatch.");

        uint256 nftsLength = nfts.length;
        uint256 tokenIdsLength;
        for (uint8 i = 0; i < nftsLength; i++) {
            tokenIdsLength = tokenIds[i].length;
            if (tokenIdsLength > 0) {
                emit Locked(msg.sender, nfts[i], tokenIds[i]);
                for (uint8 j = 0; j < tokenIdsLength; j++) {
                    lockedData[nfts[i]][tokenIds[i][j]].user = msg.sender;
                    lockedData[nfts[i]][tokenIds[i][j]].blockNo = block.number;
                    INFT(nfts[i]).transferFrom(msg.sender, address(this), tokenIds[i][j]);
                }
            }
        }
    }

    /**
    * @dev Unlocks multiple tokenIds from multiple collections.
    * @param nfts list of collection addresses.
    * @param tokenIds list of tokenIds from collections. First dimension index has to match `nfts` index.
    */
    function unlock(address[] calldata nfts, uint256[][] calldata tokenIds) external {
        require(nfts.length == tokenIds.length, "NFTs addresses & tokenIds length mismatch.");

        uint256 nftsLength = nfts.length;
        uint256 tokenIdsLength;
        for (uint8 i = 0; i < nftsLength; i++) {
            tokenIdsLength = tokenIds[i].length;
            if (tokenIdsLength > 0) {
                emit Unlocked(msg.sender, nfts[i], tokenIds[i]);
                for (uint8 j = 0; j < tokenIdsLength; j++) {
                    require(msg.sender == lockedData[nfts[i]][tokenIds[i][j]].user, "Token does not belong to user.");
                    require(block.number > lockedData[nfts[i]][tokenIds[i][j]].blockNo, "Unlock too fast.");

                    delete lockedData[nfts[i]][tokenIds[i][j]];
                    INFT(nfts[i]).transferFrom(address(this), msg.sender, tokenIds[i][j]);
                }
            }
        }
    }

}

Contract Security Audit

Contract ABI

API
[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"nft","type":"address"},{"indexed":false,"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"}],"name":"Locked","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"nft","type":"address"},{"indexed":false,"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"}],"name":"Unlocked","type":"event"},{"inputs":[{"internalType":"address[]","name":"nfts","type":"address[]"},{"internalType":"uint256[][]","name":"tokenIds","type":"uint256[][]"}],"name":"lock","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"lockedData","outputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"blockNo","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"nfts","type":"address[]"},{"internalType":"uint256[][]","name":"tokenIds","type":"uint256[][]"}],"name":"unlock","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b506110ed806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063378aa1c414610046578063805af4bf146100625780638ce9b5e514610093575b600080fd5b610060600480360381019061005b9190610b90565b6100af565b005b61007c60048036038101906100779190610ca5565b610651565b60405161008a929190610d03565b60405180910390f35b6100ad60048036038101906100a89190610b90565b6106a2565b005b8181905084849050146100f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100ee90610daf565b60405180910390fd5b6000848490509050600080600090505b828160ff1610156106485784848260ff1681811061012857610127610dcf565b5b905060200281019061013a9190610e0d565b9050915060008211156106355786868260ff1681811061015d5761015c610dcf565b5b90506020020160208101906101729190610e70565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8b013481a55a771c875448b57d127c841d2b9f48913629cce585bc93ce16280987878560ff168181106101d6576101d5610dcf565b5b90506020028101906101e89190610e0d565b6040516101f6929190610f1e565b60405180910390a360005b828160ff1610156106335760008089898560ff1681811061022557610224610dcf565b5b905060200201602081019061023a9190610e70565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600087878560ff1681811061028c5761028b610dcf565b5b905060200281019061029e9190610e0d565b8460ff168181106102b2576102b1610dcf565b5b90506020020135815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610358576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161034f90610f8e565b60405180910390fd5b60008089898560ff1681811061037157610370610dcf565b5b90506020020160208101906103869190610e70565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600087878560ff168181106103d8576103d7610dcf565b5b90506020028101906103ea9190610e0d565b8460ff168181106103fe576103fd610dcf565b5b905060200201358152602001908152602001600020600101544311610458576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161044f90610ffa565b60405180910390fd5b60008089898560ff1681811061047157610470610dcf565b5b90506020020160208101906104869190610e70565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600087878560ff168181106104d8576104d7610dcf565b5b90506020028101906104ea9190610e0d565b8460ff168181106104fe576104fd610dcf565b5b905060200201358152602001908152602001600020600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001820160009055505087878360ff1681811061055b5761055a610dcf565b5b90506020020160208101906105709190610e70565b73ffffffffffffffffffffffffffffffffffffffff166323b872dd303389898760ff168181106105a3576105a2610dcf565b5b90506020028101906105b59190610e0d565b8660ff168181106105c9576105c8610dcf565b5b905060200201356040518463ffffffff1660e01b81526004016105ee9392919061101a565b600060405180830381600087803b15801561060857600080fd5b505af115801561061c573d6000803e3d6000fd5b50505050808061062b9061108d565b915050610201565b505b80806106409061108d565b915050610107565b50505050505050565b6000602052816000526040600020602052806000526040600020600091509150508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010154905082565b8181905084849050146106ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106e190610daf565b60405180910390fd5b6000848490509050600080600090505b828160ff161015610ac25784848260ff1681811061071b5761071a610dcf565b5b905060200281019061072d9190610e0d565b905091506000821115610aaf5786868260ff168181106107505761074f610dcf565b5b90506020020160208101906107659190610e70565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fc1999105dc4ba8e2ccf69e416c5f97a04264a141efb320b52800530150b9dcd887878560ff168181106107c9576107c8610dcf565b5b90506020028101906107db9190610e0d565b6040516107e9929190610f1e565b60405180910390a360005b828160ff161015610aad57336000808a8a8660ff1681811061081957610818610dcf565b5b905060200201602081019061082e9190610e70565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600088888660ff168181106108805761087f610dcf565b5b90506020028101906108929190610e0d565b8560ff168181106108a6576108a5610dcf565b5b90506020020135815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550436000808a8a8660ff1681811061091657610915610dcf565b5b905060200201602081019061092b9190610e70565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600088888660ff1681811061097d5761097c610dcf565b5b905060200281019061098f9190610e0d565b8560ff168181106109a3576109a2610dcf565b5b9050602002013581526020019081526020016000206001018190555087878360ff168181106109d5576109d4610dcf565b5b90506020020160208101906109ea9190610e70565b73ffffffffffffffffffffffffffffffffffffffff166323b872dd333089898760ff16818110610a1d57610a1c610dcf565b5b9050602002810190610a2f9190610e0d565b8660ff16818110610a4357610a42610dcf565b5b905060200201356040518463ffffffff1660e01b8152600401610a689392919061101a565b600060405180830381600087803b158015610a8257600080fd5b505af1158015610a96573d6000803e3d6000fd5b505050508080610aa59061108d565b9150506107f4565b505b8080610aba9061108d565b9150506106fa565b50505050505050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610afa57610af9610ad5565b5b8235905067ffffffffffffffff811115610b1757610b16610ada565b5b602083019150836020820283011115610b3357610b32610adf565b5b9250929050565b60008083601f840112610b5057610b4f610ad5565b5b8235905067ffffffffffffffff811115610b6d57610b6c610ada565b5b602083019150836020820283011115610b8957610b88610adf565b5b9250929050565b60008060008060408587031215610baa57610ba9610acb565b5b600085013567ffffffffffffffff811115610bc857610bc7610ad0565b5b610bd487828801610ae4565b9450945050602085013567ffffffffffffffff811115610bf757610bf6610ad0565b5b610c0387828801610b3a565b925092505092959194509250565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610c3c82610c11565b9050919050565b610c4c81610c31565b8114610c5757600080fd5b50565b600081359050610c6981610c43565b92915050565b6000819050919050565b610c8281610c6f565b8114610c8d57600080fd5b50565b600081359050610c9f81610c79565b92915050565b60008060408385031215610cbc57610cbb610acb565b5b6000610cca85828601610c5a565b9250506020610cdb85828601610c90565b9150509250929050565b610cee81610c31565b82525050565b610cfd81610c6f565b82525050565b6000604082019050610d186000830185610ce5565b610d256020830184610cf4565b9392505050565b600082825260208201905092915050565b7f4e46547320616464726573736573202620746f6b656e496473206c656e67746860008201527f206d69736d617463682e00000000000000000000000000000000000000000000602082015250565b6000610d99602a83610d2c565b9150610da482610d3d565b604082019050919050565b60006020820190508181036000830152610dc881610d8c565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008083356001602003843603038112610e2a57610e29610dfe565b5b80840192508235915067ffffffffffffffff821115610e4c57610e4b610e03565b5b602083019250602082023603831315610e6857610e67610e08565b5b509250929050565b600060208284031215610e8657610e85610acb565b5b6000610e9484828501610c5a565b91505092915050565b600082825260208201905092915050565b600080fd5b82818337600083830152505050565b6000610ece8385610e9d565b93507f07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff831115610f0157610f00610eae565b5b602083029250610f12838584610eb3565b82840190509392505050565b60006020820190508181036000830152610f39818486610ec2565b90509392505050565b7f546f6b656e20646f6573206e6f742062656c6f6e6720746f20757365722e0000600082015250565b6000610f78601e83610d2c565b9150610f8382610f42565b602082019050919050565b60006020820190508181036000830152610fa781610f6b565b9050919050565b7f556e6c6f636b20746f6f20666173742e00000000000000000000000000000000600082015250565b6000610fe4601083610d2c565b9150610fef82610fae565b602082019050919050565b6000602082019050818103600083015261101381610fd7565b9050919050565b600060608201905061102f6000830186610ce5565b61103c6020830185610ce5565b6110496040830184610cf4565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600060ff82169050919050565b600061109882611080565b915060ff8214156110ac576110ab611051565b5b60018201905091905056fea26469706673582212200cbb59cbc7015cabf041c7f7eed0a517219c5b7309f7da027db709234588779064736f6c63430008090033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100415760003560e01c8063378aa1c414610046578063805af4bf146100625780638ce9b5e514610093575b600080fd5b610060600480360381019061005b9190610b90565b6100af565b005b61007c60048036038101906100779190610ca5565b610651565b60405161008a929190610d03565b60405180910390f35b6100ad60048036038101906100a89190610b90565b6106a2565b005b8181905084849050146100f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100ee90610daf565b60405180910390fd5b6000848490509050600080600090505b828160ff1610156106485784848260ff1681811061012857610127610dcf565b5b905060200281019061013a9190610e0d565b9050915060008211156106355786868260ff1681811061015d5761015c610dcf565b5b90506020020160208101906101729190610e70565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8b013481a55a771c875448b57d127c841d2b9f48913629cce585bc93ce16280987878560ff168181106101d6576101d5610dcf565b5b90506020028101906101e89190610e0d565b6040516101f6929190610f1e565b60405180910390a360005b828160ff1610156106335760008089898560ff1681811061022557610224610dcf565b5b905060200201602081019061023a9190610e70565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600087878560ff1681811061028c5761028b610dcf565b5b905060200281019061029e9190610e0d565b8460ff168181106102b2576102b1610dcf565b5b90506020020135815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610358576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161034f90610f8e565b60405180910390fd5b60008089898560ff1681811061037157610370610dcf565b5b90506020020160208101906103869190610e70565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600087878560ff168181106103d8576103d7610dcf565b5b90506020028101906103ea9190610e0d565b8460ff168181106103fe576103fd610dcf565b5b905060200201358152602001908152602001600020600101544311610458576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161044f90610ffa565b60405180910390fd5b60008089898560ff1681811061047157610470610dcf565b5b90506020020160208101906104869190610e70565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600087878560ff168181106104d8576104d7610dcf565b5b90506020028101906104ea9190610e0d565b8460ff168181106104fe576104fd610dcf565b5b905060200201358152602001908152602001600020600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001820160009055505087878360ff1681811061055b5761055a610dcf565b5b90506020020160208101906105709190610e70565b73ffffffffffffffffffffffffffffffffffffffff166323b872dd303389898760ff168181106105a3576105a2610dcf565b5b90506020028101906105b59190610e0d565b8660ff168181106105c9576105c8610dcf565b5b905060200201356040518463ffffffff1660e01b81526004016105ee9392919061101a565b600060405180830381600087803b15801561060857600080fd5b505af115801561061c573d6000803e3d6000fd5b50505050808061062b9061108d565b915050610201565b505b80806106409061108d565b915050610107565b50505050505050565b6000602052816000526040600020602052806000526040600020600091509150508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010154905082565b8181905084849050146106ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106e190610daf565b60405180910390fd5b6000848490509050600080600090505b828160ff161015610ac25784848260ff1681811061071b5761071a610dcf565b5b905060200281019061072d9190610e0d565b905091506000821115610aaf5786868260ff168181106107505761074f610dcf565b5b90506020020160208101906107659190610e70565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fc1999105dc4ba8e2ccf69e416c5f97a04264a141efb320b52800530150b9dcd887878560ff168181106107c9576107c8610dcf565b5b90506020028101906107db9190610e0d565b6040516107e9929190610f1e565b60405180910390a360005b828160ff161015610aad57336000808a8a8660ff1681811061081957610818610dcf565b5b905060200201602081019061082e9190610e70565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600088888660ff168181106108805761087f610dcf565b5b90506020028101906108929190610e0d565b8560ff168181106108a6576108a5610dcf565b5b90506020020135815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550436000808a8a8660ff1681811061091657610915610dcf565b5b905060200201602081019061092b9190610e70565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600088888660ff1681811061097d5761097c610dcf565b5b905060200281019061098f9190610e0d565b8560ff168181106109a3576109a2610dcf565b5b9050602002013581526020019081526020016000206001018190555087878360ff168181106109d5576109d4610dcf565b5b90506020020160208101906109ea9190610e70565b73ffffffffffffffffffffffffffffffffffffffff166323b872dd333089898760ff16818110610a1d57610a1c610dcf565b5b9050602002810190610a2f9190610e0d565b8660ff16818110610a4357610a42610dcf565b5b905060200201356040518463ffffffff1660e01b8152600401610a689392919061101a565b600060405180830381600087803b158015610a8257600080fd5b505af1158015610a96573d6000803e3d6000fd5b505050508080610aa59061108d565b9150506107f4565b505b8080610aba9061108d565b9150506106fa565b50505050505050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610afa57610af9610ad5565b5b8235905067ffffffffffffffff811115610b1757610b16610ada565b5b602083019150836020820283011115610b3357610b32610adf565b5b9250929050565b60008083601f840112610b5057610b4f610ad5565b5b8235905067ffffffffffffffff811115610b6d57610b6c610ada565b5b602083019150836020820283011115610b8957610b88610adf565b5b9250929050565b60008060008060408587031215610baa57610ba9610acb565b5b600085013567ffffffffffffffff811115610bc857610bc7610ad0565b5b610bd487828801610ae4565b9450945050602085013567ffffffffffffffff811115610bf757610bf6610ad0565b5b610c0387828801610b3a565b925092505092959194509250565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610c3c82610c11565b9050919050565b610c4c81610c31565b8114610c5757600080fd5b50565b600081359050610c6981610c43565b92915050565b6000819050919050565b610c8281610c6f565b8114610c8d57600080fd5b50565b600081359050610c9f81610c79565b92915050565b60008060408385031215610cbc57610cbb610acb565b5b6000610cca85828601610c5a565b9250506020610cdb85828601610c90565b9150509250929050565b610cee81610c31565b82525050565b610cfd81610c6f565b82525050565b6000604082019050610d186000830185610ce5565b610d256020830184610cf4565b9392505050565b600082825260208201905092915050565b7f4e46547320616464726573736573202620746f6b656e496473206c656e67746860008201527f206d69736d617463682e00000000000000000000000000000000000000000000602082015250565b6000610d99602a83610d2c565b9150610da482610d3d565b604082019050919050565b60006020820190508181036000830152610dc881610d8c565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008083356001602003843603038112610e2a57610e29610dfe565b5b80840192508235915067ffffffffffffffff821115610e4c57610e4b610e03565b5b602083019250602082023603831315610e6857610e67610e08565b5b509250929050565b600060208284031215610e8657610e85610acb565b5b6000610e9484828501610c5a565b91505092915050565b600082825260208201905092915050565b600080fd5b82818337600083830152505050565b6000610ece8385610e9d565b93507f07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff831115610f0157610f00610eae565b5b602083029250610f12838584610eb3565b82840190509392505050565b60006020820190508181036000830152610f39818486610ec2565b90509392505050565b7f546f6b656e20646f6573206e6f742062656c6f6e6720746f20757365722e0000600082015250565b6000610f78601e83610d2c565b9150610f8382610f42565b602082019050919050565b60006020820190508181036000830152610fa781610f6b565b9050919050565b7f556e6c6f636b20746f6f20666173742e00000000000000000000000000000000600082015250565b6000610fe4601083610d2c565b9150610fef82610fae565b602082019050919050565b6000602082019050818103600083015261101381610fd7565b9050919050565b600060608201905061102f6000830186610ce5565b61103c6020830185610ce5565b6110496040830184610cf4565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600060ff82169050919050565b600061109882611080565b915060ff8214156110ac576110ab611051565b5b60018201905091905056fea26469706673582212200cbb59cbc7015cabf041c7f7eed0a517219c5b7309f7da027db709234588779064736f6c63430008090033

Deployed Bytecode Sourcemap

201:3344:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2576:964;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;552:65;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;1510:820;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2576:964;2691:8;;:15;;2676:4;;:11;;:30;2668:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;2766:18;2787:4;;:11;;2766:32;;2809:22;2847:7;2857:1;2847:11;;2842:691;2864:10;2860:1;:14;;;2842:691;;;2913:8;;2922:1;2913:11;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;:18;;2896:35;;2967:1;2950:14;:18;2946:576;;;3015:4;;3020:1;3015:7;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;2994:42;;3003:10;2994:42;;;3024:8;;3033:1;3024:11;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;2994:42;;;;;;;:::i;:::-;;;;;;;;3060:7;3055:452;3077:14;3073:1;:18;;;3055:452;;;3143:10;:19;3154:4;;3159:1;3154:7;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;3143:19;;;;;;;;;;;;;;;:35;3163:8;;3172:1;3163:11;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;3175:1;3163:14;;;;;;;;;:::i;:::-;;;;;;;;3143:35;;;;;;;;;;;:40;;;;;;;;;;;;3129:54;;:10;:54;;;3121:97;;;;;;;;;;;;:::i;:::-;;;;;;;;;3264:10;:19;3275:4;;3280:1;3275:7;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;3264:19;;;;;;;;;;;;;;;:35;3284:8;;3293:1;3284:11;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;3296:1;3284:14;;;;;;;;;:::i;:::-;;;;;;;;3264:35;;;;;;;;;;;:43;;;3249:12;:58;3241:87;;;;;;;;;;;;:::i;:::-;;;;;;;;;3360:10;:19;3371:4;;3376:1;3371:7;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;3360:19;;;;;;;;;;;;;;;:35;3380:8;;3389:1;3380:11;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;3392:1;3380:14;;;;;;;;;:::i;:::-;;;;;;;;3360:35;;;;;;;;;;;;3353:42;;;;;;;;;;;;;;;;;;;;;;;3423:4;;3428:1;3423:7;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;3418:26;;;3453:4;3460:10;3472:8;;3481:1;3472:11;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;3484:1;3472:14;;;;;;;;;:::i;:::-;;;;;;;;3418:69;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3093:3;;;;;:::i;:::-;;;;3055:452;;;;2946:576;2876:3;;;;;:::i;:::-;;;;2842:691;;;;2657:883;;2576:964;;;;:::o;552:65::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1510:820::-;1623:8;;:15;;1608:4;;:11;;:30;1600:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;1698:18;1719:4;;:11;;1698:32;;1741:22;1779:7;1789:1;1779:11;;1774:549;1796:10;1792:1;:14;;;1774:549;;;1845:8;;1854:1;1845:11;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;:18;;1828:35;;1899:1;1882:14;:18;1878:434;;;1945:4;;1950:1;1945:7;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;1926:40;;1933:10;1926:40;;;1954:8;;1963:1;1954:11;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;1926:40;;;;;;;:::i;:::-;;;;;;;;1990:7;1985:312;2007:14;2003:1;:18;;;1985:312;;;2094:10;2051;:19;2062:4;;2067:1;2062:7;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;2051:19;;;;;;;;;;;;;;;:35;2071:8;;2080:1;2071:11;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;2083:1;2071:14;;;;;;;;;:::i;:::-;;;;;;;;2051:35;;;;;;;;;;;:40;;;:53;;;;;;;;;;;;;;;;;;2173:12;2127:10;:19;2138:4;;2143:1;2138:7;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;2127:19;;;;;;;;;;;;;;;:35;2147:8;;2156:1;2147:11;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;2159:1;2147:14;;;;;;;;;:::i;:::-;;;;;;;;2127:35;;;;;;;;;;;:43;;:58;;;;2213:4;;2218:1;2213:7;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;2208:26;;;2235:10;2255:4;2262:8;;2271:1;2262:11;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;2274:1;2262:14;;;;;;;;;:::i;:::-;;;;;;;;2208:69;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2023:3;;;;;:::i;:::-;;;;1985:312;;;;1878:434;1808:3;;;;;:::i;:::-;;;;1774:549;;;;1589:741;;1510:820;;;;:::o;88:117:1:-;197:1;194;187:12;211:117;320:1;317;310:12;334:117;443:1;440;433:12;457:117;566:1;563;556:12;580:117;689:1;686;679:12;720:568;793:8;803:6;853:3;846:4;838:6;834:17;830:27;820:122;;861:79;;:::i;:::-;820:122;974:6;961:20;951:30;;1004:18;996:6;993:30;990:117;;;1026:79;;:::i;:::-;990:117;1140:4;1132:6;1128:17;1116:29;;1194:3;1186:4;1178:6;1174:17;1164:8;1160:32;1157:41;1154:128;;;1201:79;;:::i;:::-;1154:128;720:568;;;;;:::o;1313:595::-;1413:8;1423:6;1473:3;1466:4;1458:6;1454:17;1450:27;1440:122;;1481:79;;:::i;:::-;1440:122;1594:6;1581:20;1571:30;;1624:18;1616:6;1613:30;1610:117;;;1646:79;;:::i;:::-;1610:117;1760:4;1752:6;1748:17;1736:29;;1814:3;1806:4;1798:6;1794:17;1784:8;1780:32;1777:41;1774:128;;;1821:79;;:::i;:::-;1774:128;1313:595;;;;;:::o;1914:988::-;2063:6;2071;2079;2087;2136:2;2124:9;2115:7;2111:23;2107:32;2104:119;;;2142:79;;:::i;:::-;2104:119;2290:1;2279:9;2275:17;2262:31;2320:18;2312:6;2309:30;2306:117;;;2342:79;;:::i;:::-;2306:117;2455:80;2527:7;2518:6;2507:9;2503:22;2455:80;:::i;:::-;2437:98;;;;2233:312;2612:2;2601:9;2597:18;2584:32;2643:18;2635:6;2632:30;2629:117;;;2665:79;;:::i;:::-;2629:117;2778:107;2877:7;2868:6;2857:9;2853:22;2778:107;:::i;:::-;2760:125;;;;2555:340;1914:988;;;;;;;:::o;2908:126::-;2945:7;2985:42;2978:5;2974:54;2963:65;;2908:126;;;:::o;3040:96::-;3077:7;3106:24;3124:5;3106:24;:::i;:::-;3095:35;;3040:96;;;:::o;3142:122::-;3215:24;3233:5;3215:24;:::i;:::-;3208:5;3205:35;3195:63;;3254:1;3251;3244:12;3195:63;3142:122;:::o;3270:139::-;3316:5;3354:6;3341:20;3332:29;;3370:33;3397:5;3370:33;:::i;:::-;3270:139;;;;:::o;3415:77::-;3452:7;3481:5;3470:16;;3415:77;;;:::o;3498:122::-;3571:24;3589:5;3571:24;:::i;:::-;3564:5;3561:35;3551:63;;3610:1;3607;3600:12;3551:63;3498:122;:::o;3626:139::-;3672:5;3710:6;3697:20;3688:29;;3726:33;3753:5;3726:33;:::i;:::-;3626:139;;;;:::o;3771:474::-;3839:6;3847;3896:2;3884:9;3875:7;3871:23;3867:32;3864:119;;;3902:79;;:::i;:::-;3864:119;4022:1;4047:53;4092:7;4083:6;4072:9;4068:22;4047:53;:::i;:::-;4037:63;;3993:117;4149:2;4175:53;4220:7;4211:6;4200:9;4196:22;4175:53;:::i;:::-;4165:63;;4120:118;3771:474;;;;;:::o;4251:118::-;4338:24;4356:5;4338:24;:::i;:::-;4333:3;4326:37;4251:118;;:::o;4375:::-;4462:24;4480:5;4462:24;:::i;:::-;4457:3;4450:37;4375:118;;:::o;4499:332::-;4620:4;4658:2;4647:9;4643:18;4635:26;;4671:71;4739:1;4728:9;4724:17;4715:6;4671:71;:::i;:::-;4752:72;4820:2;4809:9;4805:18;4796:6;4752:72;:::i;:::-;4499:332;;;;;:::o;4837:169::-;4921:11;4955:6;4950:3;4943:19;4995:4;4990:3;4986:14;4971:29;;4837:169;;;;:::o;5012:229::-;5152:34;5148:1;5140:6;5136:14;5129:58;5221:12;5216:2;5208:6;5204:15;5197:37;5012:229;:::o;5247:366::-;5389:3;5410:67;5474:2;5469:3;5410:67;:::i;:::-;5403:74;;5486:93;5575:3;5486:93;:::i;:::-;5604:2;5599:3;5595:12;5588:19;;5247:366;;;:::o;5619:419::-;5785:4;5823:2;5812:9;5808:18;5800:26;;5872:9;5866:4;5862:20;5858:1;5847:9;5843:17;5836:47;5900:131;6026:4;5900:131;:::i;:::-;5892:139;;5619:419;;;:::o;6044:180::-;6092:77;6089:1;6082:88;6189:4;6186:1;6179:15;6213:4;6210:1;6203:15;6230:117;6339:1;6336;6329:12;6353:117;6462:1;6459;6452:12;6476:117;6585:1;6582;6575:12;6599:740;6692:4;6698:6;6754:11;6741:25;6854:1;6848:4;6844:12;6833:8;6817:14;6813:29;6809:48;6789:18;6785:73;6775:168;;6862:79;;:::i;:::-;6775:168;6974:18;6964:8;6960:33;6952:41;;7026:4;7013:18;7003:28;;7054:18;7046:6;7043:30;7040:117;;;7076:79;;:::i;:::-;7040:117;7184:2;7178:4;7174:13;7166:21;;7241:4;7233:6;7229:17;7213:14;7209:38;7203:4;7199:49;7196:136;;;7251:79;;:::i;:::-;7196:136;6705:634;6599:740;;;;;:::o;7345:329::-;7404:6;7453:2;7441:9;7432:7;7428:23;7424:32;7421:119;;;7459:79;;:::i;:::-;7421:119;7579:1;7604:53;7649:7;7640:6;7629:9;7625:22;7604:53;:::i;:::-;7594:63;;7550:117;7345:329;;;;:::o;7680:184::-;7779:11;7813:6;7808:3;7801:19;7853:4;7848:3;7844:14;7829:29;;7680:184;;;;:::o;7870:117::-;7979:1;7976;7969:12;7993:154;8077:6;8072:3;8067;8054:30;8139:1;8130:6;8125:3;8121:16;8114:27;7993:154;;;:::o;8183:537::-;8311:3;8332:86;8411:6;8406:3;8332:86;:::i;:::-;8325:93;;8442:66;8434:6;8431:78;8428:165;;;8512:79;;:::i;:::-;8428:165;8624:4;8616:6;8612:17;8602:27;;8639:43;8675:6;8670:3;8663:5;8639:43;:::i;:::-;8707:6;8702:3;8698:16;8691:23;;8183:537;;;;;:::o;8726:393::-;8879:4;8917:2;8906:9;8902:18;8894:26;;8966:9;8960:4;8956:20;8952:1;8941:9;8937:17;8930:47;8994:118;9107:4;9098:6;9090;8994:118;:::i;:::-;8986:126;;8726:393;;;;;:::o;9125:180::-;9265:32;9261:1;9253:6;9249:14;9242:56;9125:180;:::o;9311:366::-;9453:3;9474:67;9538:2;9533:3;9474:67;:::i;:::-;9467:74;;9550:93;9639:3;9550:93;:::i;:::-;9668:2;9663:3;9659:12;9652:19;;9311:366;;;:::o;9683:419::-;9849:4;9887:2;9876:9;9872:18;9864:26;;9936:9;9930:4;9926:20;9922:1;9911:9;9907:17;9900:47;9964:131;10090:4;9964:131;:::i;:::-;9956:139;;9683:419;;;:::o;10108:166::-;10248:18;10244:1;10236:6;10232:14;10225:42;10108:166;:::o;10280:366::-;10422:3;10443:67;10507:2;10502:3;10443:67;:::i;:::-;10436:74;;10519:93;10608:3;10519:93;:::i;:::-;10637:2;10632:3;10628:12;10621:19;;10280:366;;;:::o;10652:419::-;10818:4;10856:2;10845:9;10841:18;10833:26;;10905:9;10899:4;10895:20;10891:1;10880:9;10876:17;10869:47;10933:131;11059:4;10933:131;:::i;:::-;10925:139;;10652:419;;;:::o;11077:442::-;11226:4;11264:2;11253:9;11249:18;11241:26;;11277:71;11345:1;11334:9;11330:17;11321:6;11277:71;:::i;:::-;11358:72;11426:2;11415:9;11411:18;11402:6;11358:72;:::i;:::-;11440;11508:2;11497:9;11493:18;11484:6;11440:72;:::i;:::-;11077:442;;;;;;:::o;11525:180::-;11573:77;11570:1;11563:88;11670:4;11667:1;11660:15;11694:4;11691:1;11684:15;11711:86;11746:7;11786:4;11779:5;11775:16;11764:27;;11711:86;;;:::o;11803:167::-;11840:3;11863:22;11879:5;11863:22;:::i;:::-;11854:31;;11907:4;11900:5;11897:15;11894:41;;;11915:18;;:::i;:::-;11894:41;11962:1;11955:5;11951:13;11944:20;;11803:167;;;:::o

Swarm Source

ipfs://0cbb59cbc7015cabf041c7f7eed0a517219c5b7309f7da027db7092345887790

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.