ETH Price: $3,471.91 (-0.28%)
Gas: 2 Gwei

Contract

0xaE6e307c3Fe9E922E5674DBD7F830Ed49c014c6B
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

More Info

Private Name Tags

TokenTracker

CREDI (CREDI) (@$0.0214)

Multichain Info

Transaction Hash
Method
Block
From
To
Transfer203725832024-07-23 23:41:231 hr ago1721778083IN
Credefi: CREDI Token
0 ETH0.000169714.90331373
Transfer203724222024-07-23 23:09:112 hrs ago1721776151IN
Credefi: CREDI Token
0 ETH0.000115223.86480467
Transfer203722322024-07-23 22:31:113 hrs ago1721773871IN
Credefi: CREDI Token
0 ETH0.000154523.29396758
Transfer203716502024-07-23 20:33:474 hrs ago1721766827IN
Credefi: CREDI Token
0 ETH0.000166714.81660159
Transfer203715142024-07-23 20:06:355 hrs ago1721765195IN
Credefi: CREDI Token
0 ETH0.000274389.19605433
Transfer203714172024-07-23 19:47:115 hrs ago1721764031IN
Credefi: CREDI Token
0 ETH0.000389438.2970097
Transfer203688672024-07-23 11:15:1114 hrs ago1721733311IN
Credefi: CREDI Token
0 ETH0.000151525.07850678
Transfer203688672024-07-23 11:15:1114 hrs ago1721733311IN
Credefi: CREDI Token
0 ETH0.000151465.07850678
Transfer203685862024-07-23 10:18:5915 hrs ago1721729939IN
Credefi: CREDI Token
0 ETH0.000216387.2521552
Transfer203683892024-07-23 9:39:2315 hrs ago1721727563IN
Credefi: CREDI Token
0 ETH0.000263595.09615094
Transfer203683862024-07-23 9:38:4715 hrs ago1721727527IN
Credefi: CREDI Token
0 ETH0.000246897.13300186
Transfer203682972024-07-23 9:20:5916 hrs ago1721726459IN
Credefi: CREDI Token
0 ETH0.000140664.71618364
Transfer203681072024-07-23 8:42:5916 hrs ago1721724179IN
Credefi: CREDI Token
0 ETH0.000218347.32386421
Transfer203680232024-07-23 8:26:1117 hrs ago1721723171IN
Credefi: CREDI Token
0 ETH0.000216286.24874906
Transfer203679322024-07-23 8:07:5917 hrs ago1721722079IN
Credefi: CREDI Token
0 ETH0.00019854.23015545
Transfer203679232024-07-23 8:06:1117 hrs ago1721721971IN
Credefi: CREDI Token
0 ETH0.000128424.30755059
Transfer203679202024-07-23 8:05:3517 hrs ago1721721935IN
Credefi: CREDI Token
0 ETH0.000196233.79461062
Transfer203674012024-07-23 6:20:5919 hrs ago1721715659IN
Credefi: CREDI Token
0 ETH0.000197734.21603474
Transfer203665802024-07-23 3:35:4721 hrs ago1721705747IN
Credefi: CREDI Token
0 ETH0.000125934.22082369
Transfer203659852024-07-23 1:35:4723 hrs ago1721698547IN
Credefi: CREDI Token
0 ETH0.000104093.48874009
Approve203658642024-07-23 1:11:1124 hrs ago1721697071IN
Credefi: CREDI Token
0 ETH0.000140913.02934427
Transfer203649762024-07-22 22:12:4727 hrs ago1721686367IN
Credefi: CREDI Token
0 ETH0.000408217.89383866
Approve203642442024-07-22 19:45:5929 hrs ago1721677559IN
Credefi: CREDI Token
0 ETH0.000378548.14822126
Transfer203640712024-07-22 19:10:5930 hrs ago1721675459IN
Credefi: CREDI Token
0 ETH0.000476899.22192434
Transfer203640292024-07-22 19:02:3530 hrs ago1721674955IN
Credefi: CREDI Token
0 ETH0.000304996.49795455
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
CredefiToken

Compiler Version
v0.8.10+commit.fc410830

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity Multiple files format)

File 1 of 2: CredefiToken.sol
// SPDX-License-Identifier:MIT
pragma solidity 0.8.10;

import "./IERC20.sol";

contract CredefiToken is IERC20 {
    // bytes32 private constant EIP712DOMAIN_HASH =
    // keccak256("EIP712Domain(string name,string version,uint256 chainId,address verifyingContract)")
    bytes32 private constant EIP712DOMAIN_HASH = 0x8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f;

    // bytes32 private constant NAME_HASH = keccak256("Credi")
    bytes32 private constant NAME_HASH = 0x3c5eac0879bc46be0fe2a2701e57d8e6edcaa427c79074f4513eb9572ff50507;

    // bytes32 private constant VERSION_HASH = keccak256("1")
    bytes32 private constant VERSION_HASH = 0xc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc6;

    // bytes32 public constant PERMIT_TYPEHASH =
    // keccak256("Permit(address owner,address spender,uint256 value,uint256 nonce,uint256 deadline)");
    bytes32 public constant PERMIT_TYPEHASH = 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9;

    // bytes32 public constant TRANSFER_WITH_AUTHORIZATION_TYPEHASH =
    // keccak256("TransferWithAuthorization(address from,address to,uint256 value,uint256 validAfter,uint256 validBefore,bytes32 nonce)");
    bytes32 public constant TRANSFER_WITH_AUTHORIZATION_TYPEHASH =
        0x7c7c6cdb67a18743f49ec6fa9b35f50d52ed05cbed4cc592e13b44501c1a2267;

    string public constant name = "CREDI";
    string public constant symbol = "CREDI";
    uint8 public constant decimals = 18;

    address public timelock;
    uint256 public override totalSupply;

    mapping(address => uint256) public override balanceOf;
    mapping(address => mapping(address => uint256)) public override allowance;

    // ERC-2612, ERC-3009 state
    mapping(address => uint256) public nonces;
    mapping(address => mapping(bytes32 => bool)) public authorizationState;

    event AuthorizationUsed(address indexed authorizer, bytes32 indexed nonce);
    event TimelockUpdated(address indexed timelock);

    modifier onlyTimelock() {
        require(msg.sender == address(timelock), "CREDI:NOT_TIMELOCK");
        _;
    }

    constructor(address _timelock) {
        _changeTimelock(_timelock);
    }

    function changeTimelock(address _timelock) external onlyTimelock {
        _changeTimelock(_timelock);
    }

    function mint(address to, uint256 value) external onlyTimelock returns (bool) {
        _mint(to, value);
        return true;
    }

    function burn(uint256 value) external returns (bool) {
        _burn(msg.sender, value);
        return true;
    }

    function approve(address spender, uint256 value) external override returns (bool) {
        _approve(msg.sender, spender, value);
        return true;
    }

    function transfer(address to, uint256 value) external override returns (bool) {
        _transfer(msg.sender, to, value);
        return true;
    }

    function transferFrom(
        address from,
        address to,
        uint256 value
    ) external override returns (bool) {
        uint256 fromAllowance = allowance[from][msg.sender];
        if (fromAllowance != type(uint256).max) {
            // Allowance is implicitly checked with Solidity's underflow protection
            allowance[from][msg.sender] = fromAllowance - value;
        }
        _transfer(from, to, value);
        return true;
    }

    function permit(
        address owner,
        address spender,
        uint256 value,
        uint256 deadline,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) external {
        require(deadline >= block.timestamp, "CREDI:AUTH_EXPIRED");

        bytes32 encodeData = keccak256(abi.encode(PERMIT_TYPEHASH, owner, spender, value, nonces[owner], deadline));
        nonces[owner] = nonces[owner] + 1;
        _validateSignedData(owner, encodeData, v, r, s);

        _approve(owner, spender, value);
    }

    function transferWithAuthorization(
        address from,
        address to,
        uint256 value,
        uint256 validAfter,
        uint256 validBefore,
        bytes32 nonce,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) external {
        require(block.timestamp > validAfter, "CREDI:AUTH_NOT_YET_VALID");
        require(block.timestamp < validBefore, "CREDI:AUTH_EXPIRED");
        require(!authorizationState[from][nonce], "CREDI:AUTH_ALREADY_USED");

        bytes32 encodeData = keccak256(
            abi.encode(TRANSFER_WITH_AUTHORIZATION_TYPEHASH, from, to, value, validAfter, validBefore, nonce)
        );
        _validateSignedData(from, encodeData, v, r, s);

        authorizationState[from][nonce] = true;
        emit AuthorizationUsed(from, nonce);

        _transfer(from, to, value);
    }

    function getChainId() public view returns (uint256 chainId) {
        // solhint-disable-next-line no-inline-assembly
        assembly {
            chainId := chainid()
        }
    }

    function getDomainSeparator() public view returns (bytes32) {
        return keccak256(abi.encode(EIP712DOMAIN_HASH, NAME_HASH, VERSION_HASH, getChainId(), address(this)));
    }

    function _changeTimelock(address _timelock) internal {
        timelock = _timelock;
        emit TimelockUpdated(_timelock);
    }

    function _validateSignedData(
        address signer,
        bytes32 encodeData,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) internal view {
        bytes32 digest = keccak256(abi.encodePacked("\x19\x01", getDomainSeparator(), encodeData));
        address recoveredAddress = ecrecover(digest, v, r, s);
        // Explicitly disallow authorizations for address(0) as ecrecover returns address(0) on malformed messages
        require(recoveredAddress != address(0) && recoveredAddress == signer, "CREDI:INVALID_SIGNATURE");
    }

    function _mint(address to, uint256 value) internal {
        totalSupply = totalSupply + value;
        balanceOf[to] = balanceOf[to] + value;
        emit Transfer(address(0), to, value);
    }

    function _burn(address from, uint256 value) internal {
        // Balance is implicitly checked with Solidity's underflow protection
        balanceOf[from] = balanceOf[from] - value;
        totalSupply = totalSupply - value;
        emit Transfer(from, address(0), value);
    }

    function _approve(
        address owner,
        address spender,
        uint256 value
    ) private {
        allowance[owner][spender] = value;
        emit Approval(owner, spender, value);
    }

    function _transfer(
        address from,
        address to,
        uint256 value
    ) private {
        require(to != address(this) && to != address(0), "CREDI:RECEIVER_IS_TOKEN_OR_ZERO");

        // Balance is implicitly checked with Solidity's underflow protection
        balanceOf[from] = balanceOf[from] - value;
        balanceOf[to] = balanceOf[to] + value;
        emit Transfer(from, to, value);
    }
}

File 2 of 2: IERC20.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
interface IERC20 {
    /**
     * @dev Returns the amount of tokens in existence.
     */
    function totalSupply() external view returns (uint256);

    /**
     * @dev Returns the amount of tokens owned by `account`.
     */
    function balanceOf(address account) external view returns (uint256);

    /**
     * @dev Moves `amount` tokens from the caller's account to `recipient`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address recipient, uint256 amount) external returns (bool);

    /**
     * @dev Returns the remaining number of tokens that `spender` will be
     * allowed to spend on behalf of `owner` through {transferFrom}. This is
     * zero by default.
     *
     * This value changes when {approve} or {transferFrom} are called.
     */
    function allowance(address owner, address spender) external view returns (uint256);

    /**
     * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * IMPORTANT: Beware that changing an allowance with this method brings the risk
     * that someone may use both the old and the new allowance by unfortunate
     * transaction ordering. One possible solution to mitigate this race
     * condition is to first reduce the spender's allowance to 0 and set the
     * desired value afterwards:
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
     *
     * Emits an {Approval} event.
     */
    function approve(address spender, uint256 amount) external returns (bool);

    /**
     * @dev Moves `amount` tokens from `sender` to `recipient` using the
     * allowance mechanism. `amount` is then deducted from the caller's
     * allowance.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
     * another (`to`).
     *
     * Note that `value` may be zero.
     */
    event Transfer(address indexed from, address indexed to, uint256 value);

    /**
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by
     * a call to {approve}. `value` is the new allowance.
     */
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_timelock","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"authorizer","type":"address"},{"indexed":true,"internalType":"bytes32","name":"nonce","type":"bytes32"}],"name":"AuthorizationUsed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"timelock","type":"address"}],"name":"TimelockUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"PERMIT_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TRANSFER_WITH_AUTHORIZATION_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"authorizationState","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"burn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_timelock","type":"address"}],"name":"changeTimelock","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getChainId","outputs":[{"internalType":"uint256","name":"chainId","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDomainSeparator","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"mint","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"permit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"timelock","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"validAfter","type":"uint256"},{"internalType":"uint256","name":"validBefore","type":"uint256"},{"internalType":"bytes32","name":"nonce","type":"bytes32"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"transferWithAuthorization","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b5060405161100438038061100483398101604081905261002f91610086565b6100388161003e565b506100b6565b600080546001600160a01b0319166001600160a01b038316908117825560405190917fc046b9e8f0cd9b70a3b838962e9c229277fbb7abee68ea0fad4acf2898ed2ca991a250565b60006020828403121561009857600080fd5b81516001600160a01b03811681146100af57600080fd5b9392505050565b610f3f806100c56000396000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c80637ecebe00116100b8578063d33219b41161007c578063d33219b4146102bf578063d505accf146102ea578063dd62ed3e146102fd578063e3ee160e14610328578063e94a01021461033b578063ed24911d1461036957600080fd5b80637ecebe001461025057806395d89b411461013c578063a0cc6a6814610270578063a9059cbb14610297578063c46fa2af146102aa57600080fd5b8063313ce567116100ff578063313ce567146101ea5780633408e4701461020457806340c10f191461020a57806342966c681461021d57806370a082311461023057600080fd5b806306fdde031461013c578063095ea7b31461017657806318160ddd1461019957806323b872dd146101b057806330adf81f146101c3575b600080fd5b61016060405180604001604052806005815260200164435245444960d81b81525081565b60405161016d9190610c86565b60405180910390f35b610189610184366004610cf7565b610371565b604051901515815260200161016d565b6101a260015481565b60405190815260200161016d565b6101896101be366004610d21565b610387565b6101a27f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981565b6101f2601281565b60405160ff909116815260200161016d565b466101a2565b610189610218366004610cf7565b6103f9565b61018961022b366004610d5d565b610458565b6101a261023e366004610d76565b60026020526000908152604090205481565b6101a261025e366004610d76565b60046020526000908152604090205481565b6101a27f7c7c6cdb67a18743f49ec6fa9b35f50d52ed05cbed4cc592e13b44501c1a226781565b6101896102a5366004610cf7565b61046c565b6102bd6102b8366004610d76565b610479565b005b6000546102d2906001600160a01b031681565b6040516001600160a01b03909116815260200161016d565b6102bd6102f8366004610da9565b6104d4565b6101a261030b366004610e13565b600360209081526000928352604080842090915290825290205481565b6102bd610336366004610e46565b6105e9565b610189610349366004610cf7565b600560209081526000928352604080842090915290825290205460ff1681565b6101a26107e3565b600061037e338484610889565b50600192915050565b6001600160a01b038316600090815260036020908152604080832033845290915281205460001981146103e3576103be8382610eda565b6001600160a01b03861660009081526003602090815260408083203384529091529020555b6103ee8585856108eb565b506001949350505050565b600080546001600160a01b0316331461044e5760405162461bcd60e51b815260206004820152601260248201527143524544493a4e4f545f54494d454c4f434b60701b60448201526064015b60405180910390fd5b61037e8383610a00565b60006104643383610a92565b506001919050565b600061037e3384846108eb565b6000546001600160a01b031633146104c85760405162461bcd60e51b815260206004820152601260248201527143524544493a4e4f545f54494d454c4f434b60701b6044820152606401610445565b6104d181610b1e565b50565b428410156105195760405162461bcd60e51b815260206004820152601260248201527110d49151124e9055551217d156141254915160721b6044820152606401610445565b6001600160a01b0387811660008181526004602081815260408084205481517f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981850152808301879052968d166060880152608087018c905260a0870181905260c08088018c90528251808903909101815260e0909701909152855195820195909520939092529052906105ae906001610ef1565b6001600160a01b0389166000908152600460205260409020556105d48882868686610b66565b6105df888888610889565b5050505050505050565b8542116106385760405162461bcd60e51b815260206004820152601860248201527f43524544493a415554485f4e4f545f5945545f56414c494400000000000000006044820152606401610445565b84421061067c5760405162461bcd60e51b815260206004820152601260248201527110d49151124e9055551217d156141254915160721b6044820152606401610445565b6001600160a01b038916600090815260056020908152604080832087845290915290205460ff16156106f05760405162461bcd60e51b815260206004820152601760248201527f43524544493a415554485f414c52454144595f555345440000000000000000006044820152606401610445565b604080517f7c7c6cdb67a18743f49ec6fa9b35f50d52ed05cbed4cc592e13b44501c1a22676020808301919091526001600160a01b038c8116838501528b166060830152608082018a905260a0820189905260c0820188905260e08083018890528351808403909101815261010090920190925280519101206107768a82868686610b66565b6001600160a01b038a166000818152600560209081526040808320898452909152808220805460ff19166001179055518792917f98de503528ee59b575ef0c0a2576a82497bfc029a5685b209e9ec333479b10a591a36107d78a8a8a6108eb565b50505050505050505050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f7f3c5eac0879bc46be0fe2a2701e57d8e6edcaa427c79074f4513eb9572ff505077fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc646604080516020810195909552840192909252606083015260808201523060a082015260c00160405160208183030381529060405280519060200120905090565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038216301480159061090c57506001600160a01b03821615155b6109585760405162461bcd60e51b815260206004820152601f60248201527f43524544493a52454345495645525f49535f544f4b454e5f4f525f5a45524f006044820152606401610445565b6001600160a01b03831660009081526002602052604090205461097c908290610eda565b6001600160a01b0380851660009081526002602052604080822093909355908416815220546109ac908290610ef1565b6001600160a01b0380841660008181526002602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906108de9085815260200190565b80600154610a0e9190610ef1565b6001556001600160a01b038216600090815260026020526040902054610a35908290610ef1565b6001600160a01b0383166000818152600260205260408082209390935591519091907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610a869085815260200190565b60405180910390a35050565b6001600160a01b038216600090815260026020526040902054610ab6908290610eda565b6001600160a01b038316600090815260026020526040902055600154610add908290610eda565b6001556040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001610a86565b600080546001600160a01b0319166001600160a01b038316908117825560405190917fc046b9e8f0cd9b70a3b838962e9c229277fbb7abee68ea0fad4acf2898ed2ca991a250565b6000610b706107e3565b60405161190160f01b602082015260228101919091526042810186905260620160408051601f198184030181528282528051602091820120600080855291840180845281905260ff88169284019290925260608301869052608083018590529092509060019060a0016020604051602081039080840390855afa158015610bfb573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b03811615801590610c315750866001600160a01b0316816001600160a01b0316145b610c7d5760405162461bcd60e51b815260206004820152601760248201527f43524544493a494e56414c49445f5349474e41545552450000000000000000006044820152606401610445565b50505050505050565b600060208083528351808285015260005b81811015610cb357858101830151858201604001528201610c97565b81811115610cc5576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b0381168114610cf257600080fd5b919050565b60008060408385031215610d0a57600080fd5b610d1383610cdb565b946020939093013593505050565b600080600060608486031215610d3657600080fd5b610d3f84610cdb565b9250610d4d60208501610cdb565b9150604084013590509250925092565b600060208284031215610d6f57600080fd5b5035919050565b600060208284031215610d8857600080fd5b610d9182610cdb565b9392505050565b803560ff81168114610cf257600080fd5b600080600080600080600060e0888a031215610dc457600080fd5b610dcd88610cdb565b9650610ddb60208901610cdb565b95506040880135945060608801359350610df760808901610d98565b925060a0880135915060c0880135905092959891949750929550565b60008060408385031215610e2657600080fd5b610e2f83610cdb565b9150610e3d60208401610cdb565b90509250929050565b60008060008060008060008060006101208a8c031215610e6557600080fd5b610e6e8a610cdb565b9850610e7c60208b01610cdb565b975060408a0135965060608a0135955060808a0135945060a08a01359350610ea660c08b01610d98565b925060e08a013591506101008a013590509295985092959850929598565b634e487b7160e01b600052601160045260246000fd5b600082821015610eec57610eec610ec4565b500390565b60008219821115610f0457610f04610ec4565b50019056fea2646970667358221220d5c79857ded01c5b06d9ee300348324db417c47309c8fb32bea7b7fdd0b80a2164736f6c634300080a003300000000000000000000000019068f0cfe9ac76434b097ff1d87a262ca1a5ada

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101375760003560e01c80637ecebe00116100b8578063d33219b41161007c578063d33219b4146102bf578063d505accf146102ea578063dd62ed3e146102fd578063e3ee160e14610328578063e94a01021461033b578063ed24911d1461036957600080fd5b80637ecebe001461025057806395d89b411461013c578063a0cc6a6814610270578063a9059cbb14610297578063c46fa2af146102aa57600080fd5b8063313ce567116100ff578063313ce567146101ea5780633408e4701461020457806340c10f191461020a57806342966c681461021d57806370a082311461023057600080fd5b806306fdde031461013c578063095ea7b31461017657806318160ddd1461019957806323b872dd146101b057806330adf81f146101c3575b600080fd5b61016060405180604001604052806005815260200164435245444960d81b81525081565b60405161016d9190610c86565b60405180910390f35b610189610184366004610cf7565b610371565b604051901515815260200161016d565b6101a260015481565b60405190815260200161016d565b6101896101be366004610d21565b610387565b6101a27f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981565b6101f2601281565b60405160ff909116815260200161016d565b466101a2565b610189610218366004610cf7565b6103f9565b61018961022b366004610d5d565b610458565b6101a261023e366004610d76565b60026020526000908152604090205481565b6101a261025e366004610d76565b60046020526000908152604090205481565b6101a27f7c7c6cdb67a18743f49ec6fa9b35f50d52ed05cbed4cc592e13b44501c1a226781565b6101896102a5366004610cf7565b61046c565b6102bd6102b8366004610d76565b610479565b005b6000546102d2906001600160a01b031681565b6040516001600160a01b03909116815260200161016d565b6102bd6102f8366004610da9565b6104d4565b6101a261030b366004610e13565b600360209081526000928352604080842090915290825290205481565b6102bd610336366004610e46565b6105e9565b610189610349366004610cf7565b600560209081526000928352604080842090915290825290205460ff1681565b6101a26107e3565b600061037e338484610889565b50600192915050565b6001600160a01b038316600090815260036020908152604080832033845290915281205460001981146103e3576103be8382610eda565b6001600160a01b03861660009081526003602090815260408083203384529091529020555b6103ee8585856108eb565b506001949350505050565b600080546001600160a01b0316331461044e5760405162461bcd60e51b815260206004820152601260248201527143524544493a4e4f545f54494d454c4f434b60701b60448201526064015b60405180910390fd5b61037e8383610a00565b60006104643383610a92565b506001919050565b600061037e3384846108eb565b6000546001600160a01b031633146104c85760405162461bcd60e51b815260206004820152601260248201527143524544493a4e4f545f54494d454c4f434b60701b6044820152606401610445565b6104d181610b1e565b50565b428410156105195760405162461bcd60e51b815260206004820152601260248201527110d49151124e9055551217d156141254915160721b6044820152606401610445565b6001600160a01b0387811660008181526004602081815260408084205481517f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981850152808301879052968d166060880152608087018c905260a0870181905260c08088018c90528251808903909101815260e0909701909152855195820195909520939092529052906105ae906001610ef1565b6001600160a01b0389166000908152600460205260409020556105d48882868686610b66565b6105df888888610889565b5050505050505050565b8542116106385760405162461bcd60e51b815260206004820152601860248201527f43524544493a415554485f4e4f545f5945545f56414c494400000000000000006044820152606401610445565b84421061067c5760405162461bcd60e51b815260206004820152601260248201527110d49151124e9055551217d156141254915160721b6044820152606401610445565b6001600160a01b038916600090815260056020908152604080832087845290915290205460ff16156106f05760405162461bcd60e51b815260206004820152601760248201527f43524544493a415554485f414c52454144595f555345440000000000000000006044820152606401610445565b604080517f7c7c6cdb67a18743f49ec6fa9b35f50d52ed05cbed4cc592e13b44501c1a22676020808301919091526001600160a01b038c8116838501528b166060830152608082018a905260a0820189905260c0820188905260e08083018890528351808403909101815261010090920190925280519101206107768a82868686610b66565b6001600160a01b038a166000818152600560209081526040808320898452909152808220805460ff19166001179055518792917f98de503528ee59b575ef0c0a2576a82497bfc029a5685b209e9ec333479b10a591a36107d78a8a8a6108eb565b50505050505050505050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f7f3c5eac0879bc46be0fe2a2701e57d8e6edcaa427c79074f4513eb9572ff505077fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc646604080516020810195909552840192909252606083015260808201523060a082015260c00160405160208183030381529060405280519060200120905090565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038216301480159061090c57506001600160a01b03821615155b6109585760405162461bcd60e51b815260206004820152601f60248201527f43524544493a52454345495645525f49535f544f4b454e5f4f525f5a45524f006044820152606401610445565b6001600160a01b03831660009081526002602052604090205461097c908290610eda565b6001600160a01b0380851660009081526002602052604080822093909355908416815220546109ac908290610ef1565b6001600160a01b0380841660008181526002602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906108de9085815260200190565b80600154610a0e9190610ef1565b6001556001600160a01b038216600090815260026020526040902054610a35908290610ef1565b6001600160a01b0383166000818152600260205260408082209390935591519091907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610a869085815260200190565b60405180910390a35050565b6001600160a01b038216600090815260026020526040902054610ab6908290610eda565b6001600160a01b038316600090815260026020526040902055600154610add908290610eda565b6001556040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001610a86565b600080546001600160a01b0319166001600160a01b038316908117825560405190917fc046b9e8f0cd9b70a3b838962e9c229277fbb7abee68ea0fad4acf2898ed2ca991a250565b6000610b706107e3565b60405161190160f01b602082015260228101919091526042810186905260620160408051601f198184030181528282528051602091820120600080855291840180845281905260ff88169284019290925260608301869052608083018590529092509060019060a0016020604051602081039080840390855afa158015610bfb573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b03811615801590610c315750866001600160a01b0316816001600160a01b0316145b610c7d5760405162461bcd60e51b815260206004820152601760248201527f43524544493a494e56414c49445f5349474e41545552450000000000000000006044820152606401610445565b50505050505050565b600060208083528351808285015260005b81811015610cb357858101830151858201604001528201610c97565b81811115610cc5576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b0381168114610cf257600080fd5b919050565b60008060408385031215610d0a57600080fd5b610d1383610cdb565b946020939093013593505050565b600080600060608486031215610d3657600080fd5b610d3f84610cdb565b9250610d4d60208501610cdb565b9150604084013590509250925092565b600060208284031215610d6f57600080fd5b5035919050565b600060208284031215610d8857600080fd5b610d9182610cdb565b9392505050565b803560ff81168114610cf257600080fd5b600080600080600080600060e0888a031215610dc457600080fd5b610dcd88610cdb565b9650610ddb60208901610cdb565b95506040880135945060608801359350610df760808901610d98565b925060a0880135915060c0880135905092959891949750929550565b60008060408385031215610e2657600080fd5b610e2f83610cdb565b9150610e3d60208401610cdb565b90509250929050565b60008060008060008060008060006101208a8c031215610e6557600080fd5b610e6e8a610cdb565b9850610e7c60208b01610cdb565b975060408a0135965060608a0135955060808a0135945060a08a01359350610ea660c08b01610d98565b925060e08a013591506101008a013590509295985092959850929598565b634e487b7160e01b600052601160045260246000fd5b600082821015610eec57610eec610ec4565b500390565b60008219821115610f0457610f04610ec4565b50019056fea2646970667358221220d5c79857ded01c5b06d9ee300348324db417c47309c8fb32bea7b7fdd0b80a2164736f6c634300080a0033

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

00000000000000000000000019068f0cfe9ac76434b097ff1d87a262ca1a5ada

-----Decoded View---------------
Arg [0] : _timelock (address): 0x19068f0CfE9AC76434b097fF1D87a262cA1a5adA

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000019068f0cfe9ac76434b097ff1d87a262ca1a5ada


Deployed Bytecode Sourcemap

80:6797:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1360:37;;;;;;;;;;;;;;;-1:-1:-1;;;1360:37:0;;;;;;;;;;;;:::i;:::-;;;;;;;;2563:156;;;;;;:::i;:::-;;:::i;:::-;;;1218:14:2;;1211:22;1193:41;;1181:2;1166:18;2563:156:0;1053:187:2;1519:35:0;;;;;;;;;1391:25:2;;;1379:2;1364:18;1519:35:0;1245:177:2;2879:460:0;;;;;;:::i;:::-;;:::i;892:108::-;;934:66;892:108;;1448:35;;1481:2;1448:35;;;;;2114:4:2;2102:17;;;2084:36;;2072:2;2057:18;1448:35:0;1942:184:2;4704:185:0;4864:9;4704:185;;2304:132;;;;;;:::i;:::-;;:::i;2442:115::-;;;;;;:::i;:::-;;:::i;1561:53::-;;;;;;:::i;:::-;;;;;;;;;;;;;;1732:41;;;;;;:::i;:::-;;;;;;;;;;;;;;1216:137;;1287:66;1216:137;;2725:148;;;;;;:::i;:::-;;:::i;2190:108::-;;;;;;:::i;:::-;;:::i;:::-;;1490:23;;;;;-1:-1:-1;;;;;1490:23:0;;;;;;-1:-1:-1;;;;;2671:32:2;;;2653:51;;2641:2;2626:18;1490:23:0;2507:203:2;3345:518:0;;;;;;:::i;:::-;;:::i;1620:73::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;3869:829;;;;;;:::i;:::-;;:::i;1779:70::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;4895:178;;;:::i;2563:156::-;2639:4;2655:36;2664:10;2676:7;2685:5;2655:8;:36::i;:::-;-1:-1:-1;2708:4:0;2563:156;;;;:::o;2879:460::-;-1:-1:-1;;;;;3039:15:0;;2999:4;3039:15;;;:9;:15;;;;;;;;3055:10;3039:27;;;;;;;;-1:-1:-1;;3080:34:0;;3076:200;;3244:21;3260:5;3244:13;:21;:::i;:::-;-1:-1:-1;;;;;3214:15:0;;;;;;:9;:15;;;;;;;;3230:10;3214:27;;;;;;;:51;3076:200;3285:26;3295:4;3301:2;3305:5;3285:9;:26::i;:::-;-1:-1:-1;3328:4:0;;2879:460;-1:-1:-1;;;;2879:460:0:o;2304:132::-;2376:4;2054:8;;-1:-1:-1;;;;;2054:8:0;2032:10;:31;2024:62;;;;-1:-1:-1;;;2024:62:0;;5224:2:2;2024:62:0;;;5206:21:2;5263:2;5243:18;;;5236:30;-1:-1:-1;;;5282:18:2;;;5275:48;5340:18;;2024:62:0;;;;;;;;;2392:16:::1;2398:2;2402:5;2392;:16::i;2442:115::-:0;2489:4;2505:24;2511:10;2523:5;2505;:24::i;:::-;-1:-1:-1;2546:4:0;;2442:115;-1:-1:-1;2442:115:0:o;2725:148::-;2797:4;2813:32;2823:10;2835:2;2839:5;2813:9;:32::i;2190:108::-;2054:8;;-1:-1:-1;;;;;2054:8:0;2032:10;:31;2024:62;;;;-1:-1:-1;;;2024:62:0;;5224:2:2;2024:62:0;;;5206:21:2;5263:2;5243:18;;;5236:30;-1:-1:-1;;;5282:18:2;;;5275:48;5340:18;;2024:62:0;5022:342:2;2024:62:0;2265:26:::1;2281:9;2265:15;:26::i;:::-;2190:108:::0;:::o;3345:518::-;3558:15;3546:8;:27;;3538:58;;;;-1:-1:-1;;;3538:58:0;;5571:2:2;3538:58:0;;;5553:21:2;5610:2;5590:18;;;5583:30;-1:-1:-1;;;5629:18:2;;;5622:48;5687:18;;3538:58:0;5369:342:2;3538:58:0;-1:-1:-1;;;;;3689:13:0;;;3607:18;3689:13;;;:6;:13;;;;;;;;;3638:75;;934:66;3638:75;;;6003:25:2;6082:18;;;6075:43;;;6154:15;;;6134:18;;;6127:43;6186:18;;;6179:34;;;6229:19;;;6222:35;;;6273:19;;;;6266:35;;;3638:75:0;;;;;;;;;;5975:19:2;;;;3638:75:0;;;3628:86;;;;;;;;;3740:13;;;;;;3628:86;3740:17;;3756:1;3740:17;:::i;:::-;-1:-1:-1;;;;;3724:13:0;;;;;;:6;:13;;;;;:33;3767:47;3731:5;3794:10;3806:1;3809;3812;3767:19;:47::i;:::-;3825:31;3834:5;3841:7;3850:5;3825:8;:31::i;:::-;3528:335;3345:518;;;;;;;:::o;3869:829::-;4155:10;4137:15;:28;4129:65;;;;-1:-1:-1;;;4129:65:0;;6647:2:2;4129:65:0;;;6629:21:2;6686:2;6666:18;;;6659:30;6725:26;6705:18;;;6698:54;6769:18;;4129:65:0;6445:348:2;4129:65:0;4230:11;4212:15;:29;4204:60;;;;-1:-1:-1;;;4204:60:0;;5571:2:2;4204:60:0;;;5553:21:2;5610:2;5590:18;;;5583:30;-1:-1:-1;;;5629:18:2;;;5622:48;5687:18;;4204:60:0;5369:342:2;4204:60:0;-1:-1:-1;;;;;4283:24:0;;;;;;:18;:24;;;;;;;;:31;;;;;;;;;;;4282:32;4274:68;;;;-1:-1:-1;;;4274:68:0;;7000:2:2;4274:68:0;;;6982:21:2;7039:2;7019:18;;;7012:30;7078:25;7058:18;;;7051:53;7121:18;;4274:68:0;6798:347:2;4274:68:0;4397:97;;;1287:66;4397:97;;;;7465:25:2;;;;-1:-1:-1;;;;;7564:15:2;;;7544:18;;;7537:43;7616:15;;7596:18;;;7589:43;7648:18;;;7641:34;;;7691:19;;;7684:35;;;7735:19;;;7728:35;;;7779:19;;;;7772:35;;;4397:97:0;;;;;;;;;;7437:19:2;;;;4397:97:0;;;4374:130;;;;;4514:46;7564:15:2;4374:130:0;4552:1;4555;4558;4514:19;:46::i;:::-;-1:-1:-1;;;;;4571:24:0;;;;;;:18;:24;;;;;;;;:31;;;;;;;;;:38;;-1:-1:-1;;4571:38:0;4605:4;4571:38;;;4624:30;4596:5;;4571:24;4624:30;;;4665:26;4675:4;4681:2;4685:5;4665:9;:26::i;:::-;4119:579;3869:829;;;;;;;;;:::o;4895:178::-;4946:7;318:66;491;666;4864:9;4982:83;;;;;;8077:25:2;;;;8118:18;;8111:34;;;;8161:18;;;8154:34;8204:18;;;8197:34;5059:4:0;8247:19:2;;;8240:61;8049:19;;4982:83:0;;;;;;;;;;;;4972:94;;;;;;4965:101;;4895:178;:::o;6255:199::-;-1:-1:-1;;;;;6368:16:0;;;;;;;:9;:16;;;;;;;;:25;;;;;;;;;;;;;:33;;;6416:31;;1391:25:2;;;6416:31:0;;1364:18:2;6416:31:0;;;;;;;;6255:199;;;:::o;6460:415::-;-1:-1:-1;;;;;6576:19:0;;6590:4;6576:19;;;;:39;;-1:-1:-1;;;;;;6599:16:0;;;;6576:39;6568:83;;;;-1:-1:-1;;;6568:83:0;;8514:2:2;6568:83:0;;;8496:21:2;8553:2;8533:18;;;8526:30;8592:33;8572:18;;;8565:61;8643:18;;6568:83:0;8312:355:2;6568:83:0;-1:-1:-1;;;;;6758:15:0;;;;;;:9;:15;;;;;;:23;;6776:5;;6758:23;:::i;:::-;-1:-1:-1;;;;;6740:15:0;;;;;;;:9;:15;;;;;;:41;;;;6807:13;;;;;;;:21;;6823:5;;6807:21;:::i;:::-;-1:-1:-1;;;;;6791:13:0;;;;;;;:9;:13;;;;;;;:37;;;;6843:25;;;;;;;;;;6862:5;1391:25:2;;1379:2;1364:18;;1245:177;5769:194:0;5858:5;5844:11;;:19;;;;:::i;:::-;5830:11;:33;-1:-1:-1;;;;;5889:13:0;;;;;;:9;:13;;;;;;:21;;5905:5;;5889:21;:::i;:::-;-1:-1:-1;;;;;5873:13:0;;;;;;:9;:13;;;;;;:37;;;;5925:31;;5873:13;;;5925:31;;;;5950:5;1391:25:2;;1379:2;1364:18;;1245:177;5925:31:0;;;;;;;;5769:194;;:::o;5969:280::-;-1:-1:-1;;;;;6128:15:0;;;;;;:9;:15;;;;;;:23;;6146:5;;6128:23;:::i;:::-;-1:-1:-1;;;;;6110:15:0;;;;;;:9;:15;;;;;:41;6175:11;;:19;;6189:5;;6175:19;:::i;:::-;6161:11;:33;6209;;1391:25:2;;;6232:1:0;;-1:-1:-1;;;;;6209:33:0;;;;;1379:2:2;1364:18;6209:33:0;1245:177:2;5079:131:0;5142:8;:20;;-1:-1:-1;;;;;;5142:20:0;-1:-1:-1;;;;;5142:20:0;;;;;;;5177:26;;5142:20;;5177:26;;;5079:131;:::o;5216:547::-;5382:14;5438:20;:18;:20::i;:::-;5409:62;;-1:-1:-1;;;5409:62:0;;;8930:27:2;8973:11;;;8966:27;;;;9009:12;;;9002:28;;;9046:12;;5409:62:0;;;-1:-1:-1;;5409:62:0;;;;;;;;;5399:73;;5409:62;5399:73;;;;5482:24;5509:26;;;;;;;;;9296:25:2;;;9369:4;9357:17;;9337:18;;;9330:45;;;;9391:18;;;9384:34;;;9434:18;;;9427:34;;;5399:73:0;;-1:-1:-1;5482:24:0;5509:26;;9268:19:2;;5509:26:0;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5509:26:0;;-1:-1:-1;;5509:26:0;;;-1:-1:-1;;;;;;;5668:30:0;;;;;;:60;;;5722:6;-1:-1:-1;;;;;5702:26:0;:16;-1:-1:-1;;;;;5702:26:0;;5668:60;5660:96;;;;-1:-1:-1;;;5660:96:0;;9674:2:2;5660:96:0;;;9656:21:2;9713:2;9693:18;;;9686:30;9752:25;9732:18;;;9725:53;9795:18;;5660:96:0;9472:347:2;5660:96:0;5372:391;;5216:547;;;;;:::o;14:597:2:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:2;574:15;-1:-1:-1;;570:29:2;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:2:o;616:173::-;684:20;;-1:-1:-1;;;;;733:31:2;;723:42;;713:70;;779:1;776;769:12;713:70;616:173;;;:::o;794:254::-;862:6;870;923:2;911:9;902:7;898:23;894:32;891:52;;;939:1;936;929:12;891:52;962:29;981:9;962:29;:::i;:::-;952:39;1038:2;1023:18;;;;1010:32;;-1:-1:-1;;;794:254:2:o;1427:328::-;1504:6;1512;1520;1573:2;1561:9;1552:7;1548:23;1544:32;1541:52;;;1589:1;1586;1579:12;1541:52;1612:29;1631:9;1612:29;:::i;:::-;1602:39;;1660:38;1694:2;1683:9;1679:18;1660:38;:::i;:::-;1650:48;;1745:2;1734:9;1730:18;1717:32;1707:42;;1427:328;;;;;:::o;2131:180::-;2190:6;2243:2;2231:9;2222:7;2218:23;2214:32;2211:52;;;2259:1;2256;2249:12;2211:52;-1:-1:-1;2282:23:2;;2131:180;-1:-1:-1;2131:180:2:o;2316:186::-;2375:6;2428:2;2416:9;2407:7;2403:23;2399:32;2396:52;;;2444:1;2441;2434:12;2396:52;2467:29;2486:9;2467:29;:::i;:::-;2457:39;2316:186;-1:-1:-1;;;2316:186:2:o;2715:156::-;2781:20;;2841:4;2830:16;;2820:27;;2810:55;;2861:1;2858;2851:12;2876:606;2987:6;2995;3003;3011;3019;3027;3035;3088:3;3076:9;3067:7;3063:23;3059:33;3056:53;;;3105:1;3102;3095:12;3056:53;3128:29;3147:9;3128:29;:::i;:::-;3118:39;;3176:38;3210:2;3199:9;3195:18;3176:38;:::i;:::-;3166:48;;3261:2;3250:9;3246:18;3233:32;3223:42;;3312:2;3301:9;3297:18;3284:32;3274:42;;3335:37;3367:3;3356:9;3352:19;3335:37;:::i;:::-;3325:47;;3419:3;3408:9;3404:19;3391:33;3381:43;;3471:3;3460:9;3456:19;3443:33;3433:43;;2876:606;;;;;;;;;;:::o;3487:260::-;3555:6;3563;3616:2;3604:9;3595:7;3591:23;3587:32;3584:52;;;3632:1;3629;3622:12;3584:52;3655:29;3674:9;3655:29;:::i;:::-;3645:39;;3703:38;3737:2;3726:9;3722:18;3703:38;:::i;:::-;3693:48;;3487:260;;;;;:::o;3752:744::-;3881:6;3889;3897;3905;3913;3921;3929;3937;3945;3998:3;3986:9;3977:7;3973:23;3969:33;3966:53;;;4015:1;4012;4005:12;3966:53;4038:29;4057:9;4038:29;:::i;:::-;4028:39;;4086:38;4120:2;4109:9;4105:18;4086:38;:::i;:::-;4076:48;;4171:2;4160:9;4156:18;4143:32;4133:42;;4222:2;4211:9;4207:18;4194:32;4184:42;;4273:3;4262:9;4258:19;4245:33;4235:43;;4325:3;4314:9;4310:19;4297:33;4287:43;;4349:37;4381:3;4370:9;4366:19;4349:37;:::i;:::-;4339:47;;4433:3;4422:9;4418:19;4405:33;4395:43;;4485:3;4474:9;4470:19;4457:33;4447:43;;3752:744;;;;;;;;;;;:::o;4760:127::-;4821:10;4816:3;4812:20;4809:1;4802:31;4852:4;4849:1;4842:15;4876:4;4873:1;4866:15;4892:125;4932:4;4960:1;4957;4954:8;4951:34;;;4965:18;;:::i;:::-;-1:-1:-1;5002:9:2;;4892:125::o;6312:128::-;6352:3;6383:1;6379:6;6376:1;6373:13;6370:39;;;6389:18;;:::i;:::-;-1:-1:-1;6425:9:2;;6312:128::o

Swarm Source

ipfs://d5c79857ded01c5b06d9ee300348324db417c47309c8fb32bea7b7fdd0b80a21

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

OVERVIEW

Credefi connects crypto lenders with SME borrowers from the fiat economy. Their platform enables decentralized and secured lending to portfolios of businesses, protecting lenders while providing them fixed APY that is uncorrelated with crypto markets’ volatility.

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]

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