Contract 0x6d935caEE07c391DE59d3ff7C90fdd8Afea6caDF 2

 

Contract Overview

Balance:
0 FTM

FTM Value:
$0.00

Token:
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x46b530d0f3ed2179ce4c59fed16ebc916fc0b88e9592412b2abc609c7607d9beRedeem325644432022-03-04 21:22:35389 days 21 hrs ago0x0fc84ec81977c593daabf20450cfaa99f09907cb IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.100193605955
0xf04010d94cd47e2cc7cc4286907116dc3fd115ea0b75bab492fc5c3a391fdf54Redeem319688522022-02-25 22:56:06396 days 20 hrs ago0xfeefbfc07caf2f85d0a1255546ac964e1e22d522 IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.26345151863
0x977d3a0ce68d3388e2ce67da4e91823cd79b07ca1668d1f01fa1bcabdc588e9bRedeem318669042022-02-24 13:12:31398 days 5 hrs ago0xb71f5528aa87ac8571ecc7472c098e76a97a078f IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.390781262649
0x55934e174947894ed4f58b035620b2ec43d04f8edf17f7bfd10d9b2f5e151c07Redeem318504942022-02-24 7:39:42398 days 11 hrs ago0x05033d76a7ea9cf1cf86c2d2a78f9a5e21f38b3f IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.168344088136
0x464d09360f2779913446f623341dac8a4eb0777026303d7ceb313b911580f361Redeem318472102022-02-24 6:26:55398 days 12 hrs ago0x8d3cbcc982563e328649f4df83e2c989fbc69d65 IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.161454671638
0x810257e11efcb4073fcd01b198634ec371f1976719ce6999fe1c2a291da0c024Redeem318279302022-02-23 23:44:14398 days 19 hrs ago0x2e6d9adba8164dd78190ed387ee17dea4322e447 IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.108015389787
0xb4a48d2779c90bfd8d2eef1b81e2b9d978fe4ae91a5e03e9d10feb887678d299Redeem318198402022-02-23 21:33:47398 days 21 hrs ago0xd09e8a00ac566eb73f14c3f13e24757590ee035a IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.091591171761
0xf7121cbfe075852e678f1069d8622873cead0659d9c3a83c2f3226d9ffc9c0f6Redeem318169762022-02-23 20:50:07398 days 22 hrs ago0x8b58d9c2d6a08899fe99fe2a186c68005e5f800c IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.094793830857
0x7a8f436c7cb7814513d51d2471d594243c939a7d59482a8cf6ccf592f266a052Redeem318039672022-02-23 17:02:11399 days 2 hrs ago0x8e12c09b53173d44c015c9a918787b33b08a7cdd IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.131437161822
0x5873f0645ad1340ca3cbf01f05d766856964c5ecd392e4b711cea1142a851fcbRedeem318017122022-02-23 16:16:38399 days 2 hrs ago0xf6b2d928f306037b5e5cda3037a05620ca1cc2b9 IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.133158093084
0x4399420a0f1b94efb681063274d82e0d7001acdc0192c69fb0b313135e70b747Redeem318014242022-02-23 16:09:58399 days 2 hrs ago0x3ae353984534586711997aa90021750cc6169752 IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.124876060568
0x0c2ecd2b9297ba1f2b686f5d1aafcb426760036b37f172c3debded3c7eeef781Redeem318005432022-02-23 15:50:54399 days 3 hrs ago0x3e4ebf3a7efd520e8d35a5feb24838d32d03f210 IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.098612195401
0xe198773d12875bf19f66ba448654f30dae11ac8ef58708c8f9a4da3593b510d2Redeem317999992022-02-23 15:38:49399 days 3 hrs ago0xe7843c8bb30775d71f8b16dc1e79763c7e5c9eb1 IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.107835702643
0x5017186aa926e98be4be921b10464e045726962414349518a3f77492a262ae4bRedeem317998782022-02-23 15:36:00399 days 3 hrs ago0x8951e1cac28c07148e7b048959865dd6d894516a IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.107516168491
0x00a71899ba91359bcc24b3e7655c79412ddab7b399c6fbbd3d56e82b96b4df2cRedeem317996962022-02-23 15:31:46399 days 3 hrs ago0xc35134474d0037f05789fe0118d8861cc7cc9b8c IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.098636208708
0xdda09212f9a86d6627340e93e0a6e0f77e592593c1c737dcce9ad20d0a45d88bRedeem317977332022-02-23 14:44:29399 days 4 hrs ago0x4be9feb4a643dba1786d6d7eaaaceb74bc91d806 IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.081065082604
0xdf784b79c0c408acd405711685f7b90c373d2b595ee105ff7070f0d135540794Redeem317964862022-02-23 14:21:02399 days 4 hrs ago0x69e1d0d47e81ec78512c967989b6a315f38bc918 IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.08345288896
0x311cf3385b66b9417fc7e2fd54e1b74e9d24e7494144d110ed6fe13f46dd0cabRedeem317963692022-02-23 14:18:18399 days 4 hrs ago0x9bbbcc07b1c24218c534b8ca308aead63ffe1ce2 IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.094098498524
0x7ca6957eaa47009d1c996c59a5036b56f40b4d3170cdf1a1a9783be02c23c5b1Redeem317956622022-02-23 14:03:11399 days 5 hrs ago0x1f42ad4c83ff23fd1a7bf5527fd74b731083cfab IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.079433913608
0x5b83c9d49f80b29a8414acfa11e6049adbb86a86e5d0054db5eafc006cebfdf5Redeem317948582022-02-23 13:48:26399 days 5 hrs ago0x8a5edfbd7b43e73dba807112d1c1e099fdbb594c IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.066561809585
0x41032ce12922fcf2bf67e07764a9790f424aed8928ec0aa6a299ade258710522Redeem317926742022-02-23 12:58:54399 days 6 hrs ago0x654f4cd9be893e4ee05545ba0d5a6a3dfe29d58d IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.038573880289
0x2d40052335b28fa6030677c100f7f0ed6d9ab61bce9a266747b089e7f17a86f4Redeem317922742022-02-23 12:52:39399 days 6 hrs ago0x5b714b2d24883c6e4e3944fe07b7797049904adf IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.034730841824
0x23a5e86c5c6e220e3457402a91acbfbcb73ceed8d29ff1298ae764897a34e798Redeem317918842022-02-23 12:46:33399 days 6 hrs ago0x1f63a3753ded20a3765cc69aa02d91a14204c4f0 IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.035422627165
0xcc1f276b857322eac849837aefdf7c3e68f153d0e2cf9635629742006e8e87abRedeem317902602022-02-23 12:20:32399 days 6 hrs ago0x8fb3ad1ec94ec1ac13dec681cfd99686dfd72dbb IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.034070613529
0x9c0f4ee6506683304b14d191c89ba26328a3717a5a33d83ee62b1d5b5549ac44Redeem317894972022-02-23 12:09:07399 days 6 hrs ago0x30bb9badc2bdde062a3fc66e3460f91ffc04e171 IN  0x6d935caee07c391de59d3ff7c90fdd8afea6cadf0 FTM0.036514043625
[ Download CSV Export 
Latest 1 internal transaction
Parent Txn Hash Block From To Value
0x1eb4352b05b624ecf3b5fb8ccb905f503ac9732fd1e97c77b275c7991ea1ddac306597032022-02-11 16:00:42411 days 3 hrs ago 0x8b43eb774bae835b20ac8a222c5a91dcd339f376  Contract Creation0 FTM
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
CommunityOffering

Compiler Version
v0.8.5+commit.a4f2e591

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, GNU AGPLv3 license
/**
 *Submitted for verification at FtmScan.com on 2022-02-11
*/

pragma solidity 0.8.5;

// OpenZeppelin Contracts v4.4.1 (utils/Context.sol)



/**
 * @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;
    }
}

// OpenZeppelin Contracts v4.4.1 (access/Ownable.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);
    }
}

// SPDX-License-Identifier: AGPL-3.0-or-later




//NRT is like a private stock
//can only be traded with the issuer who remains in control of the market
//until he opens the redemption window
contract CommunityOfferingNRT is Ownable {
    uint256 private _issuedSupply;
    uint256 private _outstandingSupply;
    uint256 private _decimals;
    string private _symbol;

    mapping(address => uint256) private _balances;

    event Issued(address account, uint256 amount);
    event Redeemed(address account, uint256 amount);

    constructor(string memory __symbol, uint256 __decimals) {
        _symbol = __symbol;
        _decimals = __decimals;
        _issuedSupply = 0;
        _outstandingSupply = 0;
    }

    // Creates amount NRT and assigns them to account
    function issue(address account, uint256 amount) public onlyOwner {
        require(account != address(0), "zero address");

        _issuedSupply += amount;
        _outstandingSupply += amount;
        _balances[account] += amount;

        emit Issued(account, amount);
    }

    //redeem, caller handles transfer of created value
    function redeem(address account, uint256 amount) public onlyOwner {
        require(account != address(0), "zero address");
        require(_balances[account] >= amount, "Insufficent balance");

        _balances[account] -= amount;
        _outstandingSupply -= amount;

        emit Redeemed(account, amount);
    }

    function balanceOf(address account) public view returns (uint256) {
        return _balances[account];
    }

    function symbol() public view returns (string memory) {
        return _symbol;
    }

    function decimals() public view returns (uint256) {
        return _decimals;
    }

    function issuedSupply() public view returns (uint256) {
        return _issuedSupply;
    }

    function outstandingSupply() public view returns (uint256) {
        return _outstandingSupply;
    }
}

// OpenZeppelin Contracts v4.4.1 (token/ERC20/IERC20.sol)

/**
 * @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);
}




// *********************************
// Fair Launch pool
// *********************************
// cap increases gradually over time
// this allows a maximum number of participants and still fill the round

contract CommunityOffering is Ownable {
    
    // the token address the cash is raised in
    // assume decimals is 18
    address public investToken;
    // the token to be launched
    address public launchToken;
    // proceeds go to treasury
    address public treasury;
    // the certificate
    CommunityOfferingNRT public nrt;
    // fixed single price
    uint256 public price = 8;
    // ratio quote in 100
    uint256 public priceQuote = 100;
    // the cap at the beginning
    uint256 public initialCap;
    // maximum cap
    uint256 public maxCap;
    // the total amount in stables to be raised
    uint256 public totalraiseCap;
    // how much was raised
    uint256 public totalraised;
    // how much was issued
    uint256 public totalissued;
    // how much was redeemed
    uint256 public totalredeem;
    // start of the sale
    uint256 public startTime;
    // total duration
    uint256 public duration;
    // length of each epoch
    uint256 public epochTime;
    // end of the sale    
    uint256 public endTime;
    // sale has started
    bool public saleEnabled;
    // redeem is possible
    bool public redeemEnabled;
    // minimum amount
    uint256 public mininvest;
    //MAG decimals = 9, MIM decimals = 18
    uint256 public launchDecimals = 9; 
    //
    uint256 public numWhitelisted = 0;
    //
    uint256 public numInvested = 0;
    
    event SaleEnabled(bool enabled, uint256 time);
    event RedeemEnabled(bool enabled, uint256 time);
    event Invest(address investor, uint256 amount);
    event Redeem(address investor, uint256 amount);

    struct InvestorInfo {
        uint256 amountInvested; // Amount deposited by user
        bool claimed; // has claimed MAG
    }

    // user is whitelisted
    mapping(address => bool) public whitelisted;

    mapping(address => InvestorInfo) public investorInfoMap;
    
    constructor(
        address _investToken,
        uint256 _startTime,  
        uint256 _duration,  
        uint256 _epochTime,
        uint256 _initialCap,     
        uint256 _totalraiseCap,
        uint256 _minInvest,
        address _treasury,
        address _nrtAddress
    ) {
        investToken = _investToken;
        startTime = _startTime;
        duration = _duration;
        epochTime = _epochTime;
        initialCap = _initialCap;        
        totalraiseCap = _totalraiseCap;
        mininvest = _minInvest; 
        treasury = _treasury;
        require(duration < 7 days, "duration too long");
        endTime = startTime + duration;
        nrt = CommunityOfferingNRT(_nrtAddress);
        redeemEnabled = false;
        saleEnabled = false;
        maxCap = 800 * 10 ** 18; // Per Person maximum contribution is 800 USDC
    }

    // adds an address to the whitelist
    function addWhitelist(address _address) external onlyOwner {        
        //require(!whitelisted[_address], "already whitelisted");
        whitelisted[_address] = true;
        numWhitelisted+=1; 
    }

    // adds multiple addresses
    function addMultipleWhitelist(address[] calldata _addresses) external onlyOwner {        
        require(_addresses.length <= 1000, "too many addresses");
        for (uint256 i = 0; i < _addresses.length; i++) {
            whitelisted[_addresses[i]] = true;  
            numWhitelisted+=1;          
        }
    }

    // removes a single address from the sale
    function removeWhitelist(address _address) external onlyOwner {        
        whitelisted[_address] = false;
    }

    function currentEpoch() public view returns (uint256){     
        if(block.timestamp < startTime)
            return 0;    
        else       
            return (block.timestamp - startTime)/epochTime;
    }

    // the current cap. increases exponentially
    function currentCap() public view returns (uint256){   
        uint256 epochs = currentEpoch();
        uint256 cap = initialCap * (2 ** epochs);
        if (cap > maxCap){
            return maxCap;
        } else {
            return cap;
        }
    }
    
    // invest up to current cap
    function invest(uint256 investAmount) public {
        require(block.timestamp >= startTime, "not started yet");
        require(saleEnabled, "not enabled yet");
        require(whitelisted[msg.sender] == true, 'msg.sender is not whitelisted');
        require(totalraised + investAmount <= totalraiseCap, "over total raise");
        require(investAmount >= mininvest, "below minimum invest");
        require(block.timestamp <= endTime, "sales ended");

        uint256 xcap = currentCap();

        InvestorInfo storage investor = investorInfoMap[msg.sender];

        require(investor.amountInvested + investAmount <= xcap, "above cap");        

        require(
            IERC20(investToken).transferFrom(
                msg.sender,
                address(this),
                investAmount
            ),
            "transfer failed"
        );

        //Frock decimals = 9, USDC decimals = 6
        uint256 issueAmount = investAmount * 10**launchDecimals * priceQuote / price / 10**6 ;                


        nrt.issue(msg.sender, issueAmount);

        totalraised += investAmount;
        totalissued += issueAmount;
        if (investor.amountInvested == 0){
            numInvested += 1;
        }
        investor.amountInvested += investAmount;
        
        emit Invest(msg.sender, investAmount);
    }

    // redeem all tokens
    function redeem() public {        
        require(redeemEnabled, "redeem not enabled");
        require(block.timestamp > endTime, "not redeemable yet");
        uint256 redeemAmount = nrt.balanceOf(msg.sender);
        require(redeemAmount > 0, "no amount issued");
        InvestorInfo storage investor = investorInfoMap[msg.sender];
        require(!investor.claimed, "already claimed");
        require(
            IERC20(launchToken).transfer(
                msg.sender,
                redeemAmount
            ),
            "transfer failed"
        );

        nrt.redeem(msg.sender, redeemAmount);

        totalredeem += redeemAmount;        
        emit Redeem(msg.sender, redeemAmount);
        investor.claimed = true;
    }

    // -- admin functions --

    // define the launch token to be redeemed
    function setLaunchToken(address _launchToken) public onlyOwner {
        launchToken = _launchToken;
    }

    function depositLaunchtoken(uint256 amount) public onlyOwner {
        require(
            IERC20(launchToken).transferFrom(msg.sender, address(this), amount),
            "transfer failed"
        );
    }

    // withdraw in case some tokens were not redeemed
    function withdrawLaunchtoken(uint256 amount) public onlyOwner {
        require(
            IERC20(launchToken).transfer(msg.sender, amount),
            "transfer failed"
        );
    }

    // withdraw funds to treasury
    function withdrawTreasury(uint256 amount) public onlyOwner {
        //uint256 b = IERC20(investToken).balanceOf(address(this));
        require(
            IERC20(investToken).transfer(treasury, amount),
            "transfer failed"
        );
    }

    function enableSale() public onlyOwner {
        saleEnabled = true;
        emit SaleEnabled(true, block.timestamp);
    }

    function enableRedeem() public onlyOwner { 
        require(launchToken != address(0), "launch token not set");
        redeemEnabled = true;
        emit RedeemEnabled(true, block.timestamp);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_investToken","type":"address"},{"internalType":"uint256","name":"_startTime","type":"uint256"},{"internalType":"uint256","name":"_duration","type":"uint256"},{"internalType":"uint256","name":"_epochTime","type":"uint256"},{"internalType":"uint256","name":"_initialCap","type":"uint256"},{"internalType":"uint256","name":"_totalraiseCap","type":"uint256"},{"internalType":"uint256","name":"_minInvest","type":"uint256"},{"internalType":"address","name":"_treasury","type":"address"},{"internalType":"address","name":"_nrtAddress","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"investor","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Invest","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"investor","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Redeem","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"},{"indexed":false,"internalType":"uint256","name":"time","type":"uint256"}],"name":"RedeemEnabled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"},{"indexed":false,"internalType":"uint256","name":"time","type":"uint256"}],"name":"SaleEnabled","type":"event"},{"inputs":[{"internalType":"address[]","name":"_addresses","type":"address[]"}],"name":"addMultipleWhitelist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"addWhitelist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"currentCap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"currentEpoch","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"depositLaunchtoken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"duration","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"enableRedeem","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"enableSale","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"endTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"epochTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"initialCap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"investAmount","type":"uint256"}],"name":"invest","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"investToken","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"investorInfoMap","outputs":[{"internalType":"uint256","name":"amountInvested","type":"uint256"},{"internalType":"bool","name":"claimed","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchDecimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchToken","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxCap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"mininvest","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nrt","outputs":[{"internalType":"contract CommunityOfferingNRT","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"numInvested","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"numWhitelisted","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"price","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"priceQuote","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"redeem","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"redeemEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"removeWhitelist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"saleEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_launchToken","type":"address"}],"name":"setLaunchToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalissued","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalraiseCap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalraised","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalredeem","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"treasury","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"whitelisted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdrawLaunchtoken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdrawTreasury","outputs":[],"stateMutability":"nonpayable","type":"function"}]

6080604052600860055560646006556009601355600060145560006015553480156200002a57600080fd5b506040516200182f3803806200182f8339810160408190526200004d91620001ba565b62000058336200014d565b600180546001600160a01b03808c166001600160a01b031992831617909255600d8a9055600e899055600f889055600787905560098690556012859055600380549285169290911691909117905562093a808710620000f15760405162461bcd60e51b81526020600482015260116024820152706475726174696f6e20746f6f206c6f6e6760781b604482015260640160405180910390fd5b600e54600d546200010391906200023f565b601055600480546001600160a01b0319166001600160a01b039290921691909117905550506011805461ffff191690555050682b5e3af16b18800000600855506200026692505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80516001600160a01b0381168114620001b557600080fd5b919050565b60008060008060008060008060006101208a8c031215620001da57600080fd5b620001e58a6200019d565b985060208a0151975060408a0151965060608a0151955060808a0151945060a08a0151935060c08a015192506200021f60e08b016200019d565b9150620002306101008b016200019d565b90509295985092959850929598565b600082198211156200026157634e487b7160e01b600052601160045260246000fd5b500190565b6115b980620002766000396000f3fe608060405234801561001057600080fd5b50600436106102485760003560e01c80638a5396a31161013b578063be040fb0116100b8578063f2fde38b1161007c578063f2fde38b14610448578063f703f36f1461045b578063f80f5dd51461049a578063f9fd3ba2146104ad578063ff16e750146104c057600080fd5b8063be040fb0146103f0578063c683d8e4146103f8578063d2f8253614610400578063d936547e14610412578063e545338c1461043557600080fd5b8063b5224c44116100ff578063b5224c44146103b9578063b811215e146103c2578063badf822b146103cb578063bc284c5c146103de578063bc5c619a146103e757600080fd5b80638a5396a31461037a5780638da5cb5b14610383578063a035b1fe14610394578063a28a4d861461039d578063a4197afc146103b057600080fd5b8063604a85da116101c9578063766718081161018d578063766718081461034557806378c8cda71461034d57806378e9792514610360578063856ed70314610369578063861d8e131461037157600080fd5b8063604a85da146102cf57806361d027b3146102e2578063715018a61461030d57806371b9b64614610315578063729413161461033257600080fd5b806323548b8b1161021057806323548b8b146102985780632afcf480146102a15780633197cbb6146102b45780635053e461146102bd57806354dacb96146102c657600080fd5b8063061873e81461024d5780630b1258a0146102575780630fb5a6b41461027357806311f1fc991461027c57806322e274031461028f575b600080fd5b6102556104d3565b005b61026060135481565b6040519081526020015b60405180910390f35b610260600e5481565b61025561028a366004611351565b6105a0565b610260600c5481565b61026060085481565b6102556102af366004611351565b610672565b61026060105481565b610260600f5481565b61026060145481565b6102556102dd36600461128a565b610a99565b6003546102f5906001600160a01b031681565b6040516001600160a01b03909116815260200161026a565b610255610ae5565b6011546103229060ff1681565b604051901515815260200161026a565b6102556103403660046112ba565b610b1b565b610260610c2b565b61025561035b36600461128a565b610c5c565b610260600d5481565b610260610ca7565b61026060155481565b610260600a5481565b6000546001600160a01b03166102f5565b61026060055481565b6002546102f5906001600160a01b031681565b610260600b5481565b61026060095481565b61026060075481565b6001546102f5906001600160a01b031681565b61026060125481565b61026060065481565b610255610cea565b610255611000565b60115461032290610100900460ff1681565b61032261042036600461128a565b60166020526000908152604090205460ff1681565b6004546102f5906001600160a01b031681565b61025561045636600461128a565b61106f565b61048561046936600461128a565b6017602052600090815260409020805460019091015460ff1682565b6040805192835290151560208301520161026a565b6102556104a836600461128a565b611107565b6102556104bb366004611351565b611172565b6102556104ce366004611351565b6111d9565b6000546001600160a01b031633146105065760405162461bcd60e51b81526004016104fd90611383565b60405180910390fd5b6002546001600160a01b03166105555760405162461bcd60e51b81526020600482015260146024820152731b185d5b98da081d1bdad95b881b9bdd081cd95d60621b60448201526064016104fd565b6011805461ff00191661010017905560408051600181524260208201527fef5fd91dc9b012f3e4b41e00dc71466a39c83d97c3cc3879de5b9193f456c63091015b60405180910390a1565b6000546001600160a01b031633146105ca5760405162461bcd60e51b81526004016104fd90611383565b60015460035460405163a9059cbb60e01b81526001600160a01b0391821660048201526024810184905291169063a9059cbb906044015b602060405180830381600087803b15801561061b57600080fd5b505af115801561062f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610653919061132f565b61066f5760405162461bcd60e51b81526004016104fd906113b8565b50565b600d544210156106b65760405162461bcd60e51b815260206004820152600f60248201526e1b9bdd081cdd185c9d1959081e595d608a1b60448201526064016104fd565b60115460ff166106fa5760405162461bcd60e51b815260206004820152600f60248201526e1b9bdd08195b98589b1959081e595d608a1b60448201526064016104fd565b3360009081526016602052604090205460ff16151560011461075e5760405162461bcd60e51b815260206004820152601d60248201527f6d73672e73656e646572206973206e6f742077686974656c697374656400000060448201526064016104fd565b60095481600a5461076f91906113e1565b11156107b05760405162461bcd60e51b815260206004820152601060248201526f6f76657220746f74616c20726169736560801b60448201526064016104fd565b6012548110156107f95760405162461bcd60e51b815260206004820152601460248201527318995b1bddc81b5a5b9a5b5d5b481a5b9d995cdd60621b60448201526064016104fd565b6010544211156108395760405162461bcd60e51b815260206004820152600b60248201526a1cd85b195cc8195b99195960aa1b60448201526064016104fd565b6000610843610ca7565b33600090815260176020526040902080549192509082906108659085906113e1565b111561089f5760405162461bcd60e51b8152602060048201526009602482015268061626f7665206361760bc1b60448201526064016104fd565b6001546040516323b872dd60e01b8152336004820152306024820152604481018590526001600160a01b03909116906323b872dd90606401602060405180830381600087803b1580156108f157600080fd5b505af1158015610905573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610929919061132f565b6109455760405162461bcd60e51b81526004016104fd906113b8565b6000620f4240600554600654601354600a610960919061145e565b61096a9088611506565b6109749190611506565b61097e91906113f9565b61098891906113f9565b6004805460405163219e412d60e21b81523392810192909252602482018390529192506001600160a01b039091169063867904b490604401600060405180830381600087803b1580156109da57600080fd5b505af11580156109ee573d6000803e3d6000fd5b5050505083600a6000828254610a0491906113e1565b9250508190555080600b6000828254610a1d91906113e1565b90915550508154610a4157600160156000828254610a3b91906113e1565b90915550505b83826000016000828254610a5591906113e1565b909155505060408051338152602081018690527fd90d253a9de34d2fdd5a75ae49ea17fcb43af32fc8ea08cc6d2341991dd3872e910160405180910390a150505050565b6000546001600160a01b03163314610ac35760405162461bcd60e51b81526004016104fd90611383565b600280546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610b0f5760405162461bcd60e51b81526004016104fd90611383565b610b19600061123a565b565b6000546001600160a01b03163314610b455760405162461bcd60e51b81526004016104fd90611383565b6103e8811115610b8c5760405162461bcd60e51b8152602060048201526012602482015271746f6f206d616e792061646472657373657360701b60448201526064016104fd565b60005b81811015610c2657600160166000858585818110610baf57610baf61156d565b9050602002016020810190610bc4919061128a565b6001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff021916908315150217905550600160146000828254610c0e91906113e1565b90915550819050610c1e8161153c565b915050610b8f565b505050565b6000600d54421015610c3d5750600090565b600f54600d54610c4d9042611525565b610c5791906113f9565b905090565b6000546001600160a01b03163314610c865760405162461bcd60e51b81526004016104fd90611383565b6001600160a01b03166000908152601660205260409020805460ff19169055565b600080610cb2610c2b565b90506000610cc182600261145e565b600754610cce9190611506565b9050600854811115610ce4576008549250505090565b92915050565b601154610100900460ff16610d365760405162461bcd60e51b81526020600482015260126024820152711c995919595b481b9bdd08195b98589b195960721b60448201526064016104fd565b6010544211610d7c5760405162461bcd60e51b81526020600482015260126024820152711b9bdd081c995919595b58589b19481e595d60721b60448201526064016104fd565b600480546040516370a0823160e01b815233928101929092526000916001600160a01b03909116906370a082319060240160206040518083038186803b158015610dc557600080fd5b505afa158015610dd9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dfd919061136a565b905060008111610e425760405162461bcd60e51b815260206004820152601060248201526f1b9bc8185b5bdd5b9d081a5cdcdd595960821b60448201526064016104fd565b336000908152601760205260409020600181015460ff1615610e985760405162461bcd60e51b815260206004820152600f60248201526e185b1c9958591e4818db185a5b5959608a1b60448201526064016104fd565b60025460405163a9059cbb60e01b8152336004820152602481018490526001600160a01b039091169063a9059cbb90604401602060405180830381600087803b158015610ee457600080fd5b505af1158015610ef8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f1c919061132f565b610f385760405162461bcd60e51b81526004016104fd906113b8565b600480546040516301e9a69560e41b81523392810192909252602482018490526001600160a01b031690631e9a695090604401600060405180830381600087803b158015610f8557600080fd5b505af1158015610f99573d6000803e3d6000fd5b5050505081600c6000828254610faf91906113e1565b909155505060408051338152602081018490527f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6910160405180910390a16001908101805460ff1916909117905550565b6000546001600160a01b0316331461102a5760405162461bcd60e51b81526004016104fd90611383565b6011805460ff19166001908117909155604080519182524260208301527f020b56eb5031e351b28c7914a3185d679342016d533b3fe0d056b43fe5ecb8689101610596565b6000546001600160a01b031633146110995760405162461bcd60e51b81526004016104fd90611383565b6001600160a01b0381166110fe5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104fd565b61066f8161123a565b6000546001600160a01b031633146111315760405162461bcd60e51b81526004016104fd90611383565b6001600160a01b0381166000908152601660205260408120805460ff19166001908117909155601480549192909161116a9084906113e1565b909155505050565b6000546001600160a01b0316331461119c5760405162461bcd60e51b81526004016104fd90611383565b6002546040516323b872dd60e01b8152336004820152306024820152604481018390526001600160a01b03909116906323b872dd90606401610601565b6000546001600160a01b031633146112035760405162461bcd60e51b81526004016104fd90611383565b60025460405163a9059cbb60e01b8152336004820152602481018390526001600160a01b039091169063a9059cbb90604401610601565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60006020828403121561129c57600080fd5b81356001600160a01b03811681146112b357600080fd5b9392505050565b600080602083850312156112cd57600080fd5b823567ffffffffffffffff808211156112e557600080fd5b818501915085601f8301126112f957600080fd5b81358181111561130857600080fd5b8660208260051b850101111561131d57600080fd5b60209290920196919550909350505050565b60006020828403121561134157600080fd5b815180151581146112b357600080fd5b60006020828403121561136357600080fd5b5035919050565b60006020828403121561137c57600080fd5b5051919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6020808252600f908201526e1d1c985b9cd9995c8819985a5b1959608a1b604082015260600190565b600082198211156113f4576113f4611557565b500190565b60008261141657634e487b7160e01b600052601260045260246000fd5b500490565b600181815b8085111561145657816000190482111561143c5761143c611557565b8085161561144957918102915b93841c9390800290611420565b509250929050565b60006112b3838360008261147457506001610ce4565b8161148157506000610ce4565b816001811461149757600281146114a1576114bd565b6001915050610ce4565b60ff8411156114b2576114b2611557565b50506001821b610ce4565b5060208310610133831016604e8410600b84101617156114e0575081810a610ce4565b6114ea838361141b565b80600019048211156114fe576114fe611557565b029392505050565b600081600019048311821515161561152057611520611557565b500290565b60008282101561153757611537611557565b500390565b600060001982141561155057611550611557565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fdfea2646970667358221220fe2c63c504b4bf66206b8b0670d302a7b53f2f61fe32ac7a307862405425763064736f6c6343000805003300000000000000000000000004068da6c83afcfa0e13ba15a6696662335d5b75000000000000000000000000000000000000000000000000000000006207d980000000000000000000000000000000000000000000000000000000000001518000000000000000000000000000000000000000000000000000000000000054600000000000000000000000000000000000000000000000000000000005f5e10000000000000000000000000000000000000000000000000000000002540be40000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b7b7ae45bc137ea0a36422eac5bc52e7657a225000000000000000000000000f12ebb3f1135d6afe03016acf595d2942161c9f5

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

00000000000000000000000004068da6c83afcfa0e13ba15a6696662335d5b75000000000000000000000000000000000000000000000000000000006207d980000000000000000000000000000000000000000000000000000000000001518000000000000000000000000000000000000000000000000000000000000054600000000000000000000000000000000000000000000000000000000005f5e10000000000000000000000000000000000000000000000000000000002540be40000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b7b7ae45bc137ea0a36422eac5bc52e7657a225000000000000000000000000f12ebb3f1135d6afe03016acf595d2942161c9f5

-----Decoded View---------------
Arg [0] : _investToken (address): 0x04068da6c83afcfa0e13ba15a6696662335d5b75
Arg [1] : _startTime (uint256): 1644681600
Arg [2] : _duration (uint256): 86400
Arg [3] : _epochTime (uint256): 21600
Arg [4] : _initialCap (uint256): 100000000
Arg [5] : _totalraiseCap (uint256): 10000000000
Arg [6] : _minInvest (uint256): 0
Arg [7] : _treasury (address): 0x0b7b7ae45bc137ea0a36422eac5bc52e7657a225
Arg [8] : _nrtAddress (address): 0xf12ebb3f1135d6afe03016acf595d2942161c9f5

-----Encoded View---------------
9 Constructor Arguments found :
Arg [0] : 00000000000000000000000004068da6c83afcfa0e13ba15a6696662335d5b75
Arg [1] : 000000000000000000000000000000000000000000000000000000006207d980
Arg [2] : 0000000000000000000000000000000000000000000000000000000000015180
Arg [3] : 0000000000000000000000000000000000000000000000000000000000005460
Arg [4] : 0000000000000000000000000000000000000000000000000000000005f5e100
Arg [5] : 00000000000000000000000000000000000000000000000000000002540be400
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [7] : 0000000000000000000000000b7b7ae45bc137ea0a36422eac5bc52e7657a225
Arg [8] : 000000000000000000000000f12ebb3f1135d6afe03016acf595d2942161c9f5


Deployed ByteCode Sourcemap

8317:7686:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15798:202;;;:::i;:::-;;9612:33;;;;;;;;;8893:25:1;;;8881:2;8866:18;9612:33:0;;;;;;;;9254:23;;;;;;15398:258;;;;;;:::i;:::-;;:::i;9141:26::-;;;;;;8877:21;;;;;;12519:1368;;;;;;:::i;:::-;;:::i;9372:22::-;;;;;;9313:24;;;;;;9661:33;;;;;;14770:108;;;;;;:::i;:::-;;:::i;8577:23::-;;;;;-1:-1:-1;;;;;8577:23:0;;;;;;-1:-1:-1;;;;;1745:32:1;;;1727:51;;1715:2;1700:18;8577:23:0;1682:102:1;2475:103:0;;;:::i;9426:23::-;;;;;;;;;;;;2613:14:1;;2606:22;2588:41;;2576:2;2561:18;9426:23:0;2543:92:1;11430:325:0;;;;;;:::i;:::-;;:::i;11936:216::-;;;:::i;11810:118::-;;;;;;:::i;:::-;;:::i;9200:24::-;;;;;;12209:265;;;:::i;9709:30::-;;;;;;9017:26;;;;;;1824:87;1870:7;1897:6;-1:-1:-1;;;;;1897:6:0;1824:87;;8696:24;;;;;;8512:26;;;;;-1:-1:-1;;;;;8512:26:0;;;9078;;;;;;8954:28;;;;;;8825:25;;;;;;8446:26;;;;;-1:-1:-1;;;;;8446:26:0;;;9538:24;;;;;;8754:31;;;;;;13921:762;;;:::i;15664:126::-;;;:::i;9483:25::-;;;;;;;;;;;;10133:43;;;;;;:::i;:::-;;;;;;;;;;;;;;;;8631:31;;;;;-1:-1:-1;;;;;8631:31:0;;;2733:201;;;;;;:::i;:::-;;:::i;10185:55::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;9097:25:1;;;9165:14;;9158:22;9153:2;9138:18;;9131:50;9070:18;10185:55:0;9052:135:1;11180:210:0;;;;;;:::i;:::-;;:::i;14886:212::-;;;;;;:::i;:::-;;:::i;15161:194::-;;;;;;:::i;:::-;;:::i;15798:202::-;1870:7;1897:6;-1:-1:-1;;;;;1897:6:0;706:10;2044:23;2036:68;;;;-1:-1:-1;;;2036:68:0;;;;;;;:::i;:::-;;;;;;;;;15859:11:::1;::::0;-1:-1:-1;;;;;15859:11:0::1;15851:58;;;::::0;-1:-1:-1;;;15851:58:0;;3341:2:1;15851:58:0::1;::::0;::::1;3323:21:1::0;3380:2;3360:18;;;3353:30;-1:-1:-1;;;3399:18:1;;;3392:50;3459:18;;15851:58:0::1;3313:170:1::0;15851:58:0::1;15920:13;:20:::0;;-1:-1:-1;;15920:20:0::1;;;::::0;;15956:36:::1;::::0;;-1:-1:-1;2808:41:1;;15976:15:0::1;2880:2:1::0;2865:18;;2858:34;15956:36:0::1;::::0;2781:18:1;15956:36:0::1;;;;;;;;15798:202::o:0;15398:258::-;1870:7;1897:6;-1:-1:-1;;;;;1897:6:0;706:10;2044:23;2036:68;;;;-1:-1:-1;;;2036:68:0;;;;;;;:::i;:::-;15566:11:::1;::::0;15588:8:::1;::::0;15559:46:::1;::::0;-1:-1:-1;;;15559:46:0;;-1:-1:-1;;;;;15588:8:0;;::::1;15559:46;::::0;::::1;2343:51:1::0;2410:18;;;2403:34;;;15566:11:0;::::1;::::0;15559:28:::1;::::0;2316:18:1;;15559:46:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15537:111;;;;-1:-1:-1::0;;;15537:111:0::1;;;;;;;:::i;:::-;15398:258:::0;:::o;12519:1368::-;12602:9;;12583:15;:28;;12575:56;;;;-1:-1:-1;;;12575:56:0;;6531:2:1;12575:56:0;;;6513:21:1;6570:2;6550:18;;;6543:30;-1:-1:-1;;;6589:18:1;;;6582:45;6644:18;;12575:56:0;6503:165:1;12575:56:0;12650:11;;;;12642:39;;;;-1:-1:-1;;;12642:39:0;;6875:2:1;12642:39:0;;;6857:21:1;6914:2;6894:18;;;6887:30;-1:-1:-1;;;6933:18:1;;;6926:45;6988:18;;12642:39:0;6847:165:1;12642:39:0;12712:10;12700:23;;;;:11;:23;;;;;;;;:31;;:23;:31;12692:73;;;;-1:-1:-1;;;12692:73:0;;4039:2:1;12692:73:0;;;4021:21:1;4078:2;4058:18;;;4051:30;4117:31;4097:18;;;4090:59;4166:18;;12692:73:0;4011:179:1;12692:73:0;12814:13;;12798:12;12784:11;;:26;;;;:::i;:::-;:43;;12776:72;;;;-1:-1:-1;;;12776:72:0;;5488:2:1;12776:72:0;;;5470:21:1;5527:2;5507:18;;;5500:30;-1:-1:-1;;;5546:18:1;;;5539:46;5602:18;;12776:72:0;5460:166:1;12776:72:0;12883:9;;12867:12;:25;;12859:58;;;;-1:-1:-1;;;12859:58:0;;3690:2:1;12859:58:0;;;3672:21:1;3729:2;3709:18;;;3702:30;-1:-1:-1;;;3748:18:1;;;3741:50;3808:18;;12859:58:0;3662:170:1;12859:58:0;12955:7;;12936:15;:26;;12928:50;;;;-1:-1:-1;;;12928:50:0;;4804:2:1;12928:50:0;;;4786:21:1;4843:2;4823:18;;;4816:30;-1:-1:-1;;;4862:18:1;;;4855:41;4913:18;;12928:50:0;4776:161:1;12928:50:0;12991:12;13006;:10;:12::i;:::-;13079:10;13031:29;13063:27;;;:15;:27;;;;;13111:23;;12991:27;;-1:-1:-1;13063:27:0;12991;;13111:38;;13137:12;;13111:38;:::i;:::-;:46;;13103:68;;;;-1:-1:-1;;;13103:68:0;;5833:2:1;13103:68:0;;;5815:21:1;5872:1;5852:18;;;5845:29;-1:-1:-1;;;5890:18:1;;;5883:39;5939:18;;13103:68:0;5805:158:1;13103:68:0;13221:11;;13214:139;;-1:-1:-1;;;13214:139:0;;13265:10;13214:139;;;2029:34:1;13302:4:0;2079:18:1;;;2072:43;2131:18;;;2124:34;;;-1:-1:-1;;;;;13221:11:0;;;;13214:32;;1964:18:1;;13214:139:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13192:204;;;;-1:-1:-1;;;13192:204:0;;;;;;;:::i;:::-;13458:19;13537:5;13529;;13516:10;;13499:14;;13495:2;:18;;;;:::i;:::-;13480:33;;:12;:33;:::i;:::-;:46;;;;:::i;:::-;:54;;;;:::i;:::-;:62;;;;:::i;:::-;13574:3;;;:34;;-1:-1:-1;;;13574:34:0;;13584:10;13574:34;;;2343:51:1;;;;2410:18;;;2403:34;;;13458:84:0;;-1:-1:-1;;;;;;13574:3:0;;;;:9;;2316:18:1;;13574:34:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13636:12;13621:11;;:27;;;;;;;:::i;:::-;;;;;;;;13674:11;13659;;:26;;;;;;;:::i;:::-;;;;-1:-1:-1;;13700:23:0;;13696:76;;13759:1;13744:11;;:16;;;;;;;:::i;:::-;;;;-1:-1:-1;;13696:76:0;13809:12;13782:8;:23;;;:39;;;;;;;:::i;:::-;;;;-1:-1:-1;;13847:32:0;;;13854:10;2343:51:1;;2425:2;2410:18;;2403:34;;;13847:32:0;;2316:18:1;13847:32:0;;;;;;;12564:1323;;;12519:1368;:::o;14770:108::-;1870:7;1897:6;-1:-1:-1;;;;;1897:6:0;706:10;2044:23;2036:68;;;;-1:-1:-1;;;2036:68:0;;;;;;;:::i;:::-;14844:11:::1;:26:::0;;-1:-1:-1;;;;;;14844:26:0::1;-1:-1:-1::0;;;;;14844:26:0;;;::::1;::::0;;;::::1;::::0;;14770:108::o;2475:103::-;1870:7;1897:6;-1:-1:-1;;;;;1897:6:0;706:10;2044:23;2036:68;;;;-1:-1:-1;;;2036:68:0;;;;;;;:::i;:::-;2540:30:::1;2567:1;2540:18;:30::i;:::-;2475:103::o:0;11430:325::-;1870:7;1897:6;-1:-1:-1;;;;;1897:6:0;706:10;2044:23;2036:68;;;;-1:-1:-1;;;2036:68:0;;;;;;;:::i;:::-;11558:4:::1;11537:25:::0;::::1;;11529:56;;;::::0;-1:-1:-1;;;11529:56:0;;7219:2:1;11529:56:0::1;::::0;::::1;7201:21:1::0;7258:2;7238:18;;;7231:30;-1:-1:-1;;;7277:18:1;;;7270:48;7335:18;;11529:56:0::1;7191:168:1::0;11529:56:0::1;11601:9;11596:152;11616:21:::0;;::::1;11596:152;;;11688:4;11659:11;:26;11671:10;;11682:1;11671:13;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11659:26:0::1;-1:-1:-1::0;;;;;11659:26:0::1;;;;;;;;;;;;;:33;;;;;;;;;;;;;;;;;;11725:1;11709:14;;:17;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;11639:3:0;;-1:-1:-1;11639:3:0::1;::::0;::::1;:::i;:::-;;;;11596:152;;;;11430:325:::0;;:::o;11936:216::-;11981:7;12026:9;;12008:15;:27;12005:139;;;-1:-1:-1;12057:1:0;;11936:216::o;12005:139::-;12135:9;;12124;;12106:27;;:15;:27;:::i;:::-;12105:39;;;;:::i;:::-;12098:46;;11936:216;:::o;11810:118::-;1870:7;1897:6;-1:-1:-1;;;;;1897:6:0;706:10;2044:23;2036:68;;;;-1:-1:-1;;;2036:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;11891:21:0::1;11915:5;11891:21:::0;;;:11:::1;:21;::::0;;;;:29;;-1:-1:-1;;11891:29:0::1;::::0;;11810:118::o;12209:265::-;12252:7;12274:14;12291;:12;:14::i;:::-;12274:31;-1:-1:-1;12316:11:0;12344;12274:31;12344:1;:11;:::i;:::-;12330:10;;:26;;;;:::i;:::-;12316:40;;12377:6;;12371:3;:12;12367:100;;;12406:6;;12399:13;;;;12209:265;:::o;12367:100::-;12452:3;12209:265;-1:-1:-1;;12209:265:0:o;13921:762::-;13973:13;;;;;;;13965:44;;;;-1:-1:-1;;;13965:44:0;;8602:2:1;13965:44:0;;;8584:21:1;8641:2;8621:18;;;8614:30;-1:-1:-1;;;8660:18:1;;;8653:48;8718:18;;13965:44:0;8574:168:1;13965:44:0;14046:7;;14028:15;:25;14020:56;;;;-1:-1:-1;;;14020:56:0;;7910:2:1;14020:56:0;;;7892:21:1;7949:2;7929:18;;;7922:30;-1:-1:-1;;;7968:18:1;;;7961:48;8026:18;;14020:56:0;7882:168:1;14020:56:0;14110:3;;;:25;;-1:-1:-1;;;14110:25:0;;14124:10;14110:25;;;1727:51:1;;;;14087:20:0;;-1:-1:-1;;;;;14110:3:0;;;;:13;;1700:18:1;;14110:25:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14087:48;;14169:1;14154:12;:16;14146:45;;;;-1:-1:-1;;;14146:45:0;;8257:2:1;14146:45:0;;;8239:21:1;8296:2;8276:18;;;8269:30;-1:-1:-1;;;8315:18:1;;;8308:46;8371:18;;14146:45:0;8229:166:1;14146:45:0;14250:10;14202:29;14234:27;;;:15;:27;;;;;14281:16;;;;;;14280:17;14272:45;;;;-1:-1:-1;;;14272:45:0;;5144:2:1;14272:45:0;;;5126:21:1;5183:2;5163:18;;;5156:30;-1:-1:-1;;;5202:18:1;;;5195:45;5257:18;;14272:45:0;5116:165:1;14272:45:0;14357:11;;14350:103;;-1:-1:-1;;;14350:103:0;;14397:10;14350:103;;;2343:51:1;2410:18;;;2403:34;;;-1:-1:-1;;;;;14357:11:0;;;;14350:28;;2316:18:1;;14350:103:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14328:168;;;;-1:-1:-1;;;14328:168:0;;;;;;;:::i;:::-;14509:3;;;:36;;-1:-1:-1;;;14509:36:0;;14520:10;14509:36;;;2343:51:1;;;;2410:18;;;2403:34;;;-1:-1:-1;;;;;14509:3:0;;:10;;2316:18:1;;14509:36:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14573:12;14558:11;;:27;;;;;;;:::i;:::-;;;;-1:-1:-1;;14609:32:0;;;14616:10;2343:51:1;;2425:2;2410:18;;2403:34;;;14609:32:0;;2316:18:1;14609:32:0;;;;;;;14671:4;14652:16;;;:23;;-1:-1:-1;;14652:23:0;;;;;;-1:-1:-1;13921:762:0:o;15664:126::-;1870:7;1897:6;-1:-1:-1;;;;;1897:6:0;706:10;2044:23;2036:68;;;;-1:-1:-1;;;2036:68:0;;;;;;;:::i;:::-;15714:11:::1;:18:::0;;-1:-1:-1;;15714:18:0::1;15728:4;15714:18:::0;;::::1;::::0;;;15748:34:::1;::::0;;2808:41:1;;;15766:15:0::1;2880:2:1::0;2865:18;;2858:34;15748::0::1;::::0;2781:18:1;15748:34:0::1;2763:135:1::0;2733:201:0;1870:7;1897:6;-1:-1:-1;;;;;1897:6:0;706:10;2044:23;2036:68;;;;-1:-1:-1;;;2036:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2822:22:0;::::1;2814:73;;;::::0;-1:-1:-1;;;2814:73:0;;4397:2:1;2814:73:0::1;::::0;::::1;4379:21:1::0;4436:2;4416:18;;;4409:30;4475:34;4455:18;;;4448:62;-1:-1:-1;;;4526:18:1;;;4519:36;4572:19;;2814:73:0::1;4369:228:1::0;2814:73:0::1;2898:28;2917:8;2898:18;:28::i;11180:210::-:0;1870:7;1897:6;-1:-1:-1;;;;;1897:6:0;706:10;2044:23;2036:68;;;;-1:-1:-1;;;2036:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;11325:21:0;::::1;;::::0;;;:11:::1;:21;::::0;;;;:28;;-1:-1:-1;;11325:28:0::1;11349:4;11325:28:::0;;::::1;::::0;;;11364:14:::1;:17:::0;;11349:4;;11364:14;;:17:::1;::::0;11349:4;;11364:17:::1;:::i;:::-;::::0;;;-1:-1:-1;;;11180:210:0:o;14886:212::-;1870:7;1897:6;-1:-1:-1;;;;;1897:6:0;706:10;2044:23;2036:68;;;;-1:-1:-1;;;2036:68:0;;;;;;;:::i;:::-;14987:11:::1;::::0;14980:67:::1;::::0;-1:-1:-1;;;14980:67:0;;15013:10:::1;14980:67;::::0;::::1;2029:34:1::0;15033:4:0::1;2079:18:1::0;;;2072:43;2131:18;;;2124:34;;;-1:-1:-1;;;;;14987:11:0;;::::1;::::0;14980:32:::1;::::0;1964:18:1;;14980:67:0::1;1946:218:1::0;15161:194:0;1870:7;1897:6;-1:-1:-1;;;;;1897:6:0;706:10;2044:23;2036:68;;;;-1:-1:-1;;;2036:68:0;;;;;;;:::i;:::-;15263:11:::1;::::0;15256:48:::1;::::0;-1:-1:-1;;;15256:48:0;;15285:10:::1;15256:48;::::0;::::1;2343:51:1::0;2410:18;;;2403:34;;;-1:-1:-1;;;;;15263:11:0;;::::1;::::0;15256:28:::1;::::0;2316:18:1;;15256:48:0::1;2298:145:1::0;3094:191:0;3168:16;3187:6;;-1:-1:-1;;;;;3204:17:0;;;-1:-1:-1;;;;;;3204:17:0;;;;;;3237:40;;3187:6;;;;;;;3237:40;;3168:16;3237:40;3157:128;3094:191;:::o;14:286:1:-;73:6;126:2;114:9;105:7;101:23;97:32;94:2;;;142:1;139;132:12;94:2;168:23;;-1:-1:-1;;;;;220:31:1;;210:42;;200:2;;266:1;263;256:12;200:2;289:5;84:216;-1:-1:-1;;;84:216:1:o;305:615::-;391:6;399;452:2;440:9;431:7;427:23;423:32;420:2;;;468:1;465;458:12;420:2;508:9;495:23;537:18;578:2;570:6;567:14;564:2;;;594:1;591;584:12;564:2;632:6;621:9;617:22;607:32;;677:7;670:4;666:2;662:13;658:27;648:2;;699:1;696;689:12;648:2;739;726:16;765:2;757:6;754:14;751:2;;;781:1;778;771:12;751:2;834:7;829:2;819:6;816:1;812:14;808:2;804:23;800:32;797:45;794:2;;;855:1;852;845:12;794:2;886;878:11;;;;;908:6;;-1:-1:-1;410:510:1;;-1:-1:-1;;;;410:510:1:o;925:277::-;992:6;1045:2;1033:9;1024:7;1020:23;1016:32;1013:2;;;1061:1;1058;1051:12;1013:2;1093:9;1087:16;1146:5;1139:13;1132:21;1125:5;1122:32;1112:2;;1168:1;1165;1158:12;1207:180;1266:6;1319:2;1307:9;1298:7;1294:23;1290:32;1287:2;;;1335:1;1332;1325:12;1287:2;-1:-1:-1;1358:23:1;;1277:110;-1:-1:-1;1277:110:1:o;1392:184::-;1462:6;1515:2;1503:9;1494:7;1490:23;1486:32;1483:2;;;1531:1;1528;1521:12;1483:2;-1:-1:-1;1554:16:1;;1473:103;-1:-1:-1;1473:103:1:o;5968:356::-;6170:2;6152:21;;;6189:18;;;6182:30;6248:34;6243:2;6228:18;;6221:62;6315:2;6300:18;;6142:182::o;7364:339::-;7566:2;7548:21;;;7605:2;7585:18;;;7578:30;-1:-1:-1;;;7639:2:1;7624:18;;7617:45;7694:2;7679:18;;7538:165::o;9192:128::-;9232:3;9263:1;9259:6;9256:1;9253:13;9250:2;;;9269:18;;:::i;:::-;-1:-1:-1;9305:9:1;;9240:80::o;9325:217::-;9365:1;9391;9381:2;;9435:10;9430:3;9426:20;9423:1;9416:31;9470:4;9467:1;9460:15;9498:4;9495:1;9488:15;9381:2;-1:-1:-1;9527:9:1;;9371:171::o;9547:422::-;9636:1;9679:5;9636:1;9693:270;9714:7;9704:8;9701:21;9693:270;;;9773:4;9769:1;9765:6;9761:17;9755:4;9752:27;9749:2;;;9782:18;;:::i;:::-;9832:7;9822:8;9818:22;9815:2;;;9852:16;;;;9815:2;9931:22;;;;9891:15;;;;9693:270;;;9697:3;9611:358;;;;;:::o;9974:131::-;10034:5;10063:36;10090:8;10084:4;10159:5;10189:8;10179:2;;-1:-1:-1;10230:1:1;10244:5;;10179:2;10278:4;10268:2;;-1:-1:-1;10315:1:1;10329:5;;10268:2;10360:4;10378:1;10373:59;;;;10446:1;10441:130;;;;10353:218;;10373:59;10403:1;10394:10;;10417:5;;;10441:130;10478:3;10468:8;10465:17;10462:2;;;10485:18;;:::i;:::-;-1:-1:-1;;10541:1:1;10527:16;;10556:5;;10353:218;;10655:2;10645:8;10642:16;10636:3;10630:4;10627:13;10623:36;10617:2;10607:8;10604:16;10599:2;10593:4;10590:12;10586:35;10583:77;10580:2;;;-1:-1:-1;10692:19:1;;;10724:5;;10580:2;10771:34;10796:8;10790:4;10771:34;:::i;:::-;10841:6;10837:1;10833:6;10829:19;10820:7;10817:32;10814:2;;;10852:18;;:::i;:::-;10890:20;;10169:747;-1:-1:-1;;;10169:747:1:o;10921:168::-;10961:7;11027:1;11023;11019:6;11015:14;11012:1;11009:21;11004:1;10997:9;10990:17;10986:45;10983:2;;;11034:18;;:::i;:::-;-1:-1:-1;11074:9:1;;10973:116::o;11094:125::-;11134:4;11162:1;11159;11156:8;11153:2;;;11167:18;;:::i;:::-;-1:-1:-1;11204:9:1;;11143:76::o;11224:135::-;11263:3;-1:-1:-1;;11284:17:1;;11281:2;;;11304:18;;:::i;:::-;-1:-1:-1;11351:1:1;11340:13;;11271:88::o;11364:127::-;11425:10;11420:3;11416:20;11413:1;11406:31;11456:4;11453:1;11446:15;11480:4;11477:1;11470:15;11496:127;11557:10;11552:3;11548:20;11545:1;11538:31;11588:4;11585:1;11578:15;11612:4;11609:1;11602:15

Swarm Source

ipfs://fe2c63c504b4bf66206b8b0670d302a7b53f2f61fe32ac7a3078624054257630
Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Validator ID :
0 FTM

Amount Staked
0

Amount Delegated
0

Staking Total
0

Staking Start Epoch
0

Staking Start Time
0

Proof of Importance
0

Origination Score
0

Validation Score
0

Active
0

Online
0

Downtime
0 s
Address Amount claimed Rewards Created On Epoch Created On
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.