Contract 0xBc7fa57aDe4ddb5CD115F9FBAF3B56119c7db3E4

Contract Overview

Balance:
0 Ether
Txn Hash
Method
Block
From
To
Value
0x253260831e974b792a9e2fa87b746692998b39c3dc977a25a87325d998825fbe0x60806040106196682022-05-04 21:38:15147 days 16 hrs ago0x4cfa5768ca9567b922052a61fcfbd31f8d828fa1 IN  Create: TokenVaultMigrator0 Ether0.00291408 2.28168298
[ Download CSV Export 
Latest 12 internal transactions
Parent Txn Hash Block From To Value
0x3b6f85907dce405433feff9bb5518672643b0127168dd3aa3315036f5db164f5106201502022-05-04 23:38:59147 days 14 hrs ago 0xbc7fa57ade4ddb5cd115f9fbaf3b56119c7db3e4 0xaf47de9b411b1210fd42d9e5c8c5ecf976ad45440 Ether
0x3b6f85907dce405433feff9bb5518672643b0127168dd3aa3315036f5db164f5106201502022-05-04 23:38:59147 days 14 hrs ago 0xbc7fa57ade4ddb5cd115f9fbaf3b56119c7db3e4 0x6c20ee3bcde467352f935ac86014f393a1588bbf0 Ether
0x3b6f85907dce405433feff9bb5518672643b0127168dd3aa3315036f5db164f5106201502022-05-04 23:38:59147 days 14 hrs ago 0x828cdc3514a030fac73412cc558071b838b12f68 0xbc7fa57ade4ddb5cd115f9fbaf3b56119c7db3e40 Ether
0x3b6f85907dce405433feff9bb5518672643b0127168dd3aa3315036f5db164f5106201502022-05-04 23:38:59147 days 14 hrs ago 0x828cdc3514a030fac73412cc558071b838b12f68 0xbc7fa57ade4ddb5cd115f9fbaf3b56119c7db3e40 Ether
0x3b6f85907dce405433feff9bb5518672643b0127168dd3aa3315036f5db164f5106201502022-05-04 23:38:59147 days 14 hrs ago 0xbc7fa57ade4ddb5cd115f9fbaf3b56119c7db3e4 0x6c20ee3bcde467352f935ac86014f393a1588bbf0 Ether
0x3b6f85907dce405433feff9bb5518672643b0127168dd3aa3315036f5db164f5106201502022-05-04 23:38:59147 days 14 hrs ago 0x828cdc3514a030fac73412cc558071b838b12f68 0xbc7fa57ade4ddb5cd115f9fbaf3b56119c7db3e40 Ether
0x0fb33b78098e1319075e455ab1f7cae96327e078ff0a19ba44bd0067dfdd5d31106201282022-05-04 23:33:29147 days 14 hrs ago 0xbc7fa57ade4ddb5cd115f9fbaf3b56119c7db3e4 0xaf47de9b411b1210fd42d9e5c8c5ecf976ad45440 Ether
0x0fb33b78098e1319075e455ab1f7cae96327e078ff0a19ba44bd0067dfdd5d31106201282022-05-04 23:33:29147 days 14 hrs ago 0xbc7fa57ade4ddb5cd115f9fbaf3b56119c7db3e4 0x6c20ee3bcde467352f935ac86014f393a1588bbf0 Ether
0x0fb33b78098e1319075e455ab1f7cae96327e078ff0a19ba44bd0067dfdd5d31106201282022-05-04 23:33:29147 days 14 hrs ago 0x828cdc3514a030fac73412cc558071b838b12f68 0xbc7fa57ade4ddb5cd115f9fbaf3b56119c7db3e40 Ether
0x0fb33b78098e1319075e455ab1f7cae96327e078ff0a19ba44bd0067dfdd5d31106201282022-05-04 23:33:29147 days 14 hrs ago 0x828cdc3514a030fac73412cc558071b838b12f68 0xbc7fa57ade4ddb5cd115f9fbaf3b56119c7db3e40 Ether
0x0fb33b78098e1319075e455ab1f7cae96327e078ff0a19ba44bd0067dfdd5d31106201282022-05-04 23:33:29147 days 14 hrs ago 0xbc7fa57ade4ddb5cd115f9fbaf3b56119c7db3e4 0x6c20ee3bcde467352f935ac86014f393a1588bbf0 Ether
0x0fb33b78098e1319075e455ab1f7cae96327e078ff0a19ba44bd0067dfdd5d31106201282022-05-04 23:33:29147 days 14 hrs ago 0x828cdc3514a030fac73412cc558071b838b12f68 0xbc7fa57ade4ddb5cd115f9fbaf3b56119c7db3e40 Ether
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
TokenVaultMigrator

Compiler Version
v0.8.9+commit.e5eed63a

Optimization Enabled:
Yes with 10000 runs

Other Settings:
default evmVersion
File 1 of 5 : TokenVaultMigrator.sol
// SPDX-License-Identifier: GNU-GPL v3.0 or later

pragma solidity ^0.8.0;

import "@openzeppelin/contracts/access/Ownable.sol";
import "../interfaces/IAddressRegistry.sol";
import "../interfaces/IFNFTHandler.sol";

contract TokenVaultMigrator is Ownable, IAddressRegistry, IFNFTHandler {

    /// The active address registry
    address private provider;

    constructor(address _provider) Ownable() {
        provider = _provider;
    }

    function initialize(
        address lock_manager_,
        address liquidity_,
        address revest_token_,
        address token_vault_,
        address revest_,
        address fnft_,
        address metadata_,
        address admin_,
        address rewards_
    ) external override {}

    ///
    /// SETTERS
    ///

    function setAdmin(address admin) external override onlyOwner {}

    function setLockManager(address manager) external override onlyOwner {}

    function setTokenVault(address vault) external override onlyOwner {}
   
    function setRevest(address revest) external override onlyOwner {}

    function setRevestFNFT(address fnft) external override onlyOwner {}

    function setMetadataHandler(address metadata) external override onlyOwner {}

    function setDex(address dex) external override onlyOwner {}

    function setRevestToken(address token) external override onlyOwner {}

    function setRewardsHandler(address esc) external override onlyOwner {}

    function setLPs(address liquidToken) external override onlyOwner {}

    function setProvider(address _provider) external onlyOwner {
        provider = _provider;
    }

    ///
    /// GETTERS
    ///

    function getAdmin() external view override returns (address) {
        return IAddressRegistry(provider).getAdmin();
    }

    function getLockManager() external view override returns (address) {
        return IAddressRegistry(provider).getLockManager();
    }

    function getTokenVault() external view override returns (address) {
        return IAddressRegistry(provider).getTokenVault();
    }

    // Fools the old TokenVault into believing the new token vault can control it
    function getRevest() external view override returns (address) {
        return IAddressRegistry(provider).getTokenVault();
    }

    /// Fools the old TokenVault into believeing this contract is the FNFTHandler
    function getRevestFNFT() external view override returns (address) {
        return address(this);
    }

    function getMetadataHandler() external view override returns (address) {
        return IAddressRegistry(provider).getMetadataHandler();
    }

    function getRevestToken() external view override returns (address) {
        return IAddressRegistry(provider).getRevestToken();
    }

    function getDEX(uint index) external view override returns (address) {
        return IAddressRegistry(provider).getDEX(index);
    }

    function getRewardsHandler() external view override returns(address) {
        return IAddressRegistry(provider).getRewardsHandler();
    }

    function getLPs() external view override returns (address) {
        return IAddressRegistry(provider).getLPs();
    }

    function getAddress(bytes32 id) public view override returns (address) {
        return IAddressRegistry(provider).getAddress(id);
    }


    ///
    /// FNFTHandler mock methods
    ///

    function mint(address account, uint id, uint amount, bytes memory data) external override {}

    function mintBatchRec(address[] memory recipients, uint[] memory quantities, uint id, uint newSupply, bytes memory data) external override {}

    function mintBatch(address to, uint[] memory ids, uint[] memory amounts, bytes memory data) external override {}

    function setURI(string memory newuri) external override {}

    function burn(address account, uint id, uint amount) external override {}

    function burnBatch(address account, uint[] memory ids, uint[] memory amounts) external override {}

    function getBalance(address tokenHolder, uint id) external view override returns (uint) {
        return IFNFTHandler(IAddressRegistry(provider).getRevestFNFT()).getBalance(tokenHolder, id);
    }

    function getSupply(uint fnftId) external view override returns (uint supply) {
        supply = IFNFTHandler(IAddressRegistry(provider).getRevestFNFT()).getSupply(fnftId);
        supply = supply == 0 ? 1 : supply;
    }

    function getNextId() external view override returns (uint nextId) {
        nextId = IFNFTHandler(IAddressRegistry(provider).getRevestFNFT()).getNextId();
    }

}

File 2 of 5 : Ownable.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.1 (access/Ownable.sol)

pragma solidity ^0.8.0;

import "../utils/Context.sol";

/**
 * @dev Contract module which provides a basic access control mechanism, where
 * there is an account (an owner) that can be granted exclusive access to
 * specific functions.
 *
 * By default, the owner account will be the one that deploys the contract. This
 * can later be changed with {transferOwnership}.
 *
 * This module is used through inheritance. It will make available the modifier
 * `onlyOwner`, which can be applied to your functions to restrict their use to
 * the owner.
 */
abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor() {
        _transferOwnership(_msgSender());
    }

    /**
     * @dev Returns the address of the current owner.
     */
    function owner() public view virtual returns (address) {
        return _owner;
    }

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    /**
     * @dev Leaves the contract without owner. It will not be possible to call
     * `onlyOwner` functions anymore. Can only be called by the current owner.
     *
     * NOTE: Renouncing ownership will leave the contract without an owner,
     * thereby removing any functionality that is only available to the owner.
     */
    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Can only be called by the current owner.
     */
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _transferOwnership(newOwner);
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Internal function without access restriction.
     */
    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

File 3 of 5 : IAddressRegistry.sol
// SPDX-License-Identifier: GNU-GPL v3.0 or later

pragma solidity >=0.8.0;

/**
 * @title Provider interface for Revest FNFTs
 * @dev
 *
 */
interface IAddressRegistry {

    function initialize(
        address lock_manager_,
        address liquidity_,
        address revest_token_,
        address token_vault_,
        address revest_,
        address fnft_,
        address metadata_,
        address admin_,
        address rewards_
    ) external;

    function getAdmin() external view returns (address);

    function setAdmin(address admin) external;

    function getLockManager() external view returns (address);

    function setLockManager(address manager) external;

    function getTokenVault() external view returns (address);

    function setTokenVault(address vault) external;

    function getRevestFNFT() external view returns (address);

    function setRevestFNFT(address fnft) external;

    function getMetadataHandler() external view returns (address);

    function setMetadataHandler(address metadata) external;

    function getRevest() external view returns (address);

    function setRevest(address revest) external;

    function getDEX(uint index) external view returns (address);

    function setDex(address dex) external;

    function getRevestToken() external view returns (address);

    function setRevestToken(address token) external;

    function getRewardsHandler() external view returns(address);

    function setRewardsHandler(address esc) external;

    function getAddress(bytes32 id) external view returns (address);

    function getLPs() external view returns (address);

    function setLPs(address liquidToken) external;

}

File 4 of 5 : IFNFTHandler.sol
// SPDX-License-Identifier: GNU-GPL v3.0 or later

pragma solidity >=0.8.0;


interface IFNFTHandler  {
    function mint(address account, uint id, uint amount, bytes memory data) external;

    function mintBatchRec(address[] memory recipients, uint[] memory quantities, uint id, uint newSupply, bytes memory data) external;

    function mintBatch(address to, uint[] memory ids, uint[] memory amounts, bytes memory data) external;

    function setURI(string memory newuri) external;

    function burn(address account, uint id, uint amount) external;

    function burnBatch(address account, uint[] memory ids, uint[] memory amounts) external;

    function getBalance(address tokenHolder, uint id) external view returns (uint);

    function getSupply(uint fnftId) external view returns (uint);

    function getNextId() external view returns (uint);
}

File 5 of 5 : Context.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.1 (utils/Context.sol)

pragma solidity ^0.8.0;

/**
 * @dev Provides information about the current execution context, including the
 * sender of the transaction and its data. While these are generally available
 * via msg.sender and msg.data, they should not be accessed in such a direct
 * manner, since when dealing with meta-transactions the account sending and
 * paying for execution may not be the actual sender (as far as an application
 * is concerned).
 *
 * This contract is only required for intermediate, library-like contracts.
 */
abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }

    function _msgData() internal view virtual returns (bytes calldata) {
        return msg.data;
    }
}

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

Contract ABI

[{"inputs":[{"internalType":"address","name":"_provider","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256[]","name":"ids","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"burnBatch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"id","type":"bytes32"}],"name":"getAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"tokenHolder","type":"address"},{"internalType":"uint256","name":"id","type":"uint256"}],"name":"getBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"name":"getDEX","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getLPs","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getLockManager","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getMetadataHandler","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getNextId","outputs":[{"internalType":"uint256","name":"nextId","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRevest","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRevestFNFT","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRevestToken","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRewardsHandler","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"fnftId","type":"uint256"}],"name":"getSupply","outputs":[{"internalType":"uint256","name":"supply","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTokenVault","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"lock_manager_","type":"address"},{"internalType":"address","name":"liquidity_","type":"address"},{"internalType":"address","name":"revest_token_","type":"address"},{"internalType":"address","name":"token_vault_","type":"address"},{"internalType":"address","name":"revest_","type":"address"},{"internalType":"address","name":"fnft_","type":"address"},{"internalType":"address","name":"metadata_","type":"address"},{"internalType":"address","name":"admin_","type":"address"},{"internalType":"address","name":"rewards_","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"mint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256[]","name":"ids","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"mintBatch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"recipients","type":"address[]"},{"internalType":"uint256[]","name":"quantities","type":"uint256[]"},{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"newSupply","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"mintBatchRec","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"admin","type":"address"}],"name":"setAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"dex","type":"address"}],"name":"setDex","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"liquidToken","type":"address"}],"name":"setLPs","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"manager","type":"address"}],"name":"setLockManager","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"metadata","type":"address"}],"name":"setMetadataHandler","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_provider","type":"address"}],"name":"setProvider","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"revest","type":"address"}],"name":"setRevest","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"fnft","type":"address"}],"name":"setRevestFNFT","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"setRevestToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"esc","type":"address"}],"name":"setRewardsHandler","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"vault","type":"address"}],"name":"setTokenVault","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"newuri","type":"string"}],"name":"setURI","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b5060405161164b38038061164b83398101604081905261002f916100ad565b6100383361005d565b600180546001600160a01b0319166001600160a01b03929092169190911790556100dd565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100bf57600080fd5b81516001600160a01b03811681146100d657600080fd5b9392505050565b61155f806100ec6000396000f3fe608060405234801561001057600080fd5b50600436106102415760003560e01c806387f7f69611610145578063deedfdbd116100bd578063f77ee79d1161008c578063f97e7d7411610071578063f97e7d7414610309578063f9f5e1dd146103eb578063fe762024146102f657600080fd5b8063f77ee79d146103d8578063f95eb482146102f657600080fd5b8063deedfdbd146102f6578063f2fde38b1461039e578063f5298aca146103b1578063f5e95acb146103bf57600080fd5b8063b38221ff11610114578063bc968326116100f9578063bc9683261461037d578063cfd8d6c014610385578063d59e296e1461039857600080fd5b8063b38221ff146102f6578063b61657f71461037557600080fd5b806387f7f696146102f65780638da5cb5b146103425780639a46cd5d146103605780639bb363a9146102f657600080fd5b8063382b5e07116101d85780636b20c454116101a7578063704b6c021161018c578063704b6c02146102f6578063715018a61461032c578063731133e91461033457600080fd5b80636b20c454146103115780636e9960c31461032457600080fd5b8063382b5e07146102f6578063447fa8b7146102f657806354f2f7af146103095780636497a8a0146102f657600080fd5b80631f7fdffa116102145780631f7fdffa1461029b57806321f8a721146102af5780632a7b941a146102c25780632b04e840146102d557600080fd5b8063016abd2c14610246578063025e3c611461027857806302fe530514610280578063035d0c6914610293575b600080fd5b61024e6103f3565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b61024e61049b565b61029161028e366004611045565b50565b005b61024e610506565b6102916102a9366004611167565b50505050565b61024e6102bd366004611202565b610571565b61024e6102d0366004611202565b61061b565b6102e86102e336600461121b565b610673565b60405190815260200161026f565b610291610304366004611247565b6107c5565b61024e61084b565b61029161031f366004611264565b505050565b61024e6108b6565b610291610921565b6102916102a93660046112da565b60005473ffffffffffffffffffffffffffffffffffffffff1661024e565b61029161036e366004611331565b5050505050565b61024e6109ae565b6102e8610a19565b610291610393366004611247565b610b39565b3061024e565b6102916103ac366004611247565b610c01565b61029161031f36600461142b565b6102916103cd366004611460565b505050505050505050565b6102e86103e6366004611202565b610d2e565b61024e610e71565b600154604080517f016abd2c000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff169163016abd2c916004808301926020929190829003018186803b15801561045e57600080fd5b505afa158015610472573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610496919061151c565b905090565b600154604080517f025e3c61000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff169163025e3c61916004808301926020929190829003018186803b15801561045e57600080fd5b600154604080517f035d0c69000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff169163035d0c69916004808301926020929190829003018186803b15801561045e57600080fd5b6001546040517f21f8a7210000000000000000000000000000000000000000000000000000000081526004810183905260009173ffffffffffffffffffffffffffffffffffffffff16906321f8a721906024015b60206040518083038186803b1580156105dd57600080fd5b505afa1580156105f1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610615919061151c565b92915050565b6001546040517f2a7b941a0000000000000000000000000000000000000000000000000000000081526004810183905260009173ffffffffffffffffffffffffffffffffffffffff1690632a7b941a906024016105c5565b600154604080517fd59e296e000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff169163d59e296e916004808301926020929190829003018186803b1580156106de57600080fd5b505afa1580156106f2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610716919061151c565b6040517f2b04e84000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152602482018590529190911690632b04e8409060440160206040518083038186803b15801561078657600080fd5b505afa15801561079a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107be9190611539565b9392505050565b60005473ffffffffffffffffffffffffffffffffffffffff16331461028e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b600154604080517f54f2f7af000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff16916354f2f7af916004808301926020929190829003018186803b15801561045e57600080fd5b600154604080517f6e9960c3000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff1691636e9960c3916004808301926020929190829003018186803b15801561045e57600080fd5b60005473ffffffffffffffffffffffffffffffffffffffff1633146109a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610842565b6109ac6000610edc565b565b600154604080517fb61657f7000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff169163b61657f7916004808301926020929190829003018186803b15801561045e57600080fd5b600154604080517fd59e296e000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff169163d59e296e916004808301926020929190829003018186803b158015610a8457600080fd5b505afa158015610a98573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610abc919061151c565b73ffffffffffffffffffffffffffffffffffffffff1663bc9683266040518163ffffffff1660e01b815260040160206040518083038186803b158015610b0157600080fd5b505afa158015610b15573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104969190611539565b60005473ffffffffffffffffffffffffffffffffffffffff163314610bba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610842565b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60005473ffffffffffffffffffffffffffffffffffffffff163314610c82576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610842565b73ffffffffffffffffffffffffffffffffffffffff8116610d25576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610842565b61028e81610edc565b600154604080517fd59e296e000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff169163d59e296e916004808301926020929190829003018186803b158015610d9957600080fd5b505afa158015610dad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dd1919061151c565b73ffffffffffffffffffffffffffffffffffffffff1663f77ee79d836040518263ffffffff1660e01b8152600401610e0b91815260200190565b60206040518083038186803b158015610e2357600080fd5b505afa158015610e37573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e5b9190611539565b90508015610e695780610615565b600192915050565b600154604080517ff9f5e1dd000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff169163f9f5e1dd916004808301926020929190829003018186803b15801561045e57600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610fc757610fc7610f51565b604052919050565b600067ffffffffffffffff831115610fe957610fe9610f51565b61101a60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f86011601610f80565b905082815283838301111561102e57600080fd5b828260208301376000602084830101529392505050565b60006020828403121561105757600080fd5b813567ffffffffffffffff81111561106e57600080fd5b8201601f8101841361107f57600080fd5b61108e84823560208401610fcf565b949350505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461028e57600080fd5b600067ffffffffffffffff8211156110d2576110d2610f51565b5060051b60200190565b600082601f8301126110ed57600080fd5b813560206111026110fd836110b8565b610f80565b82815260059290921b8401810191818101908684111561112157600080fd5b8286015b8481101561113c5780358352918301918301611125565b509695505050505050565b600082601f83011261115857600080fd5b6107be83833560208501610fcf565b6000806000806080858703121561117d57600080fd5b843561118881611096565b9350602085013567ffffffffffffffff808211156111a557600080fd5b6111b1888389016110dc565b945060408701359150808211156111c757600080fd5b6111d3888389016110dc565b935060608701359150808211156111e957600080fd5b506111f687828801611147565b91505092959194509250565b60006020828403121561121457600080fd5b5035919050565b6000806040838503121561122e57600080fd5b823561123981611096565b946020939093013593505050565b60006020828403121561125957600080fd5b81356107be81611096565b60008060006060848603121561127957600080fd5b833561128481611096565b9250602084013567ffffffffffffffff808211156112a157600080fd5b6112ad878388016110dc565b935060408601359150808211156112c357600080fd5b506112d0868287016110dc565b9150509250925092565b600080600080608085870312156112f057600080fd5b84356112fb81611096565b93506020850135925060408501359150606085013567ffffffffffffffff81111561132557600080fd5b6111f687828801611147565b600080600080600060a0868803121561134957600080fd5b853567ffffffffffffffff8082111561136157600080fd5b818801915088601f83011261137557600080fd5b813560206113856110fd836110b8565b82815260059290921b8401810191818101908c8411156113a457600080fd5b948201945b838610156113cb5785356113bc81611096565b825294820194908201906113a9565b995050890135925050808211156113e157600080fd5b6113ed89838a016110dc565b95506040880135945060608801359350608088013591508082111561141157600080fd5b5061141e88828901611147565b9150509295509295909350565b60008060006060848603121561144057600080fd5b833561144b81611096565b95602085013595506040909401359392505050565b60008060008060008060008060006101208a8c03121561147f57600080fd5b893561148a81611096565b985060208a013561149a81611096565b975060408a01356114aa81611096565b965060608a01356114ba81611096565b955060808a01356114ca81611096565b945060a08a01356114da81611096565b935060c08a01356114ea81611096565b925060e08a01356114fa81611096565b91506101008a013561150b81611096565b809150509295985092959850929598565b60006020828403121561152e57600080fd5b81516107be81611096565b60006020828403121561154b57600080fd5b505191905056fea164736f6c6343000809000a0000000000000000000000006c20ee3bcde467352f935ac86014f393a1588bbf

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

0000000000000000000000006c20ee3bcde467352f935ac86014f393a1588bbf

-----Decoded View---------------
Arg [0] : _provider (address): 0x6c20EE3bCdE467352F935Ac86014F393a1588BBF

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000006c20ee3bcde467352f935ac86014f393a1588bbf


Block Transaction Difficulty Gas Used Reward
Block Uncle Number Difficulty Gas Used Reward
Loading

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.