Contract 0xb505e826C1D4A17c2745CD7e80A9fdaBC3bEBaE4 1

 

Contract Overview

Balance:
0 MATIC

MATIC Value:
$0.00

Token:
 
Txn Hash
Method
Block
From
To
Value [Txn Fee]
0xcf95220e8622fbbf05f94fa96c04687d239dda664d8dd88d34abe6f8f25a27e0Toggle Router430702692023-05-24 0:01:308 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.01678746 470
0x1afadf9956753f79115999e12351a06bddaf2924984c6215aa1c50dd5db399a3DCA Result Batch430702672023-05-24 0:01:268 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.03717277 470
0x015a05b9d5d713f136ed330bdbc8ce8d7554e85f72aff311587279ebf95407a9Toggle Router430702602023-05-24 0:01:128 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.01678746 470
0x58aa1e75823f298f7d5c46f9d6a0b85d109fb25b8c81f854e25c2fe88483a52aToggle Router424726652023-05-09 0:02:4923 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.01678746 470
0xca84f3d471dc91166f0ee23065e93f910cc6a4f091ac4fd40a98556c52ecef06DCA Result Batch424726602023-05-09 0:02:3923 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.04652577 470
0x3fbc5117c7926dc29d742f85955ca7a0e4727f72e5167ce5b6df7503a1d00d0bToggle Router424726542023-05-09 0:02:2523 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.01678746 470
0x55efe9ff4f6e2ac298829f758fe673b887a52bcb9dd427c40e6d5952f1ffc173Toggle Router424726412023-05-09 0:01:5923 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.01678746 470
0xbc93a18d53cabbe8b8a67ea112c36d3cb5af3ab4f85b81ec7ff2c39146f62108DCA Result Batch418828062023-04-24 0:03:4638 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.06560542 470
0xa0396a0d66513af93f612409463f5b43e9f932c710a2de9612cfeac88948d111DCA Execute Batc...418827992023-04-24 0:03:3038 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.06212319 470
0x113ceba33fc41ebd57e851371f1b6e1527f189f6f57a29cf8f47ea63da8812edToggle Router418827912023-04-24 0:03:1438 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.01678746 470
0x9da93877fe9f0b5e49c8fb70be4252431a645cee2b5ec27fcd25a38ec6bf0d37Create DCA418824332023-04-23 23:49:3038 days 7 hrs ago0x544f96434f77437425d5ac40fd4755c0cf39399a IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.058649055708 378.437159762
0xcf801cb7226baf046d83fbfa5085b474b66676592e3c803536ca5b43a115a0a0Toggle Router416527782023-04-18 0:03:4144 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.01678746 470
0xed6661e4764ac781fe48c1829512e486b4c64b87b6e10664acc84bfec95b193aDCA Result Batch416527742023-04-18 0:03:2544 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.08574868 470
0x92a8ed38785a0d397bc7cf78ec6db70ea5929763788fb59b8bb5790d317218c0Toggle Router416527692023-04-18 0:03:0544 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.01678746 470
0x6a30313e192d2501c9b794849d919c5d98aa6a5a53d9241a48fe9a61fa059e47Toggle Router414637632023-04-13 0:04:0649 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.01678746 470
0xee7dd36e739e96b721b459fba18205f66081182f114292a35938031ab768efc6DCA Result Batch414637602023-04-13 0:04:0049 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.09604168 470
0x3545e4f58714f941edd1025b89ca160a67b78cf5f707aa1cc0a16be358bda487Toggle Router414637532023-04-13 0:03:4449 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.01678746 470
0x65af668068288682b3caca4d8744376cecb196ca83f843a543c8b50e8df74d6eToggle Router414637452023-04-13 0:03:2849 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.01678746 470
0x515728d073ebb2670a2dabfd5dc4c83e824cbdfcb90b1da39970e1cee91abaf3Toggle Router414637392023-04-13 0:03:1449 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.01678746 470
0x8aad2646422f8b2cd74fe183a07fe10de745642531bad844b35a338b21e4cdefToggle Router413865262023-04-11 0:03:1751 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.01678746 470
0x2073eef5e74965db6df8c88fa4e5be61ad633dcfe727da48e2b43e7766da74d0DCA Result Batch413865192023-04-11 0:03:0351 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.03717277 470
0xc5595d002e1c2bd32e6e614bdffd275e6663ea627a8cc0c6bf60f9a3333e6a8bToggle Router413865132023-04-11 0:02:5151 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.01678746 470
0xbe4b692c3159209adb66d4e651959c44e015231b507673cae7b9b74cf50378efToggle Router411912432023-04-06 0:02:5956 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.01678746 470
0xa6f3cafefd2c328c0c1bdf9be703e0870d902bffe2adae47c932a7bf49745223DCA Result Batch411912402023-04-06 0:02:5356 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.03717277 470
0xc0c2ff5528c223d065eb2fa3eb7735a7eb082de230a0e73edd51bfc0c7c32a01Toggle Router411912342023-04-06 0:02:4156 days 7 hrs ago0x68b4db8f3824ba3b21806dd7cfd332437dcee665 IN  0xb505e826c1d4a17c2745cd7e80a9fdabc3bebae40 MATIC0.01678746 470
[ Download CSV Export 
Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
NProxy_V2in

Compiler Version
v0.8.16+commit.07a7930e

Optimization Enabled:
Yes with 1000000 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at polygonscan.com on 2022-11-17
*/

/*
                                            ......                                        
                                         ............                                     
                                       ............:....                                  
                                    .................:.....                               
                                  ......................:.....                            
                                ........ .................::.....                         
                             ......... .....................::.....                       
                           ........  .........................:::.....                    
                         ........  ........       ...:..........:::.....                  
                      ......... ........            ...::.........::::.....               
                    ........  ........       ....     ...::..........:::.....             
                  ........ ........        ........     ...:::.........::::.....          
               ........  ........       ...       ....     ...:::........:::::....        
             ........  .......       ....           .....    ...::::........::::....      
           .......   .......       ...                ..:...   ...:::::......:::-:...     
          .......   ......       ...                    ..::..   ...::::......:::-:...    
          .......    .....     ...                        ..::.   ..::-:......::--....    
           .......   ......    ...                        ..::.  ...:::.......:-::...     
            .......   ......     ..                      .::......::::.......:-:....      
             ........  ......     ...                   .::......:::.......::-:....       
              ...:..... .......    ...                ..::......:-:.......:-::....        
                ...:.........:...   ....             .::......::::.......:-:....          
                 ...:.........::..   ..:..          .::......:-::......:--:....           
                  ...::.........:...  ..:..       ..::......:-:.......:-::....            
                   ...::.........:...  ..::.     .:::.....::::.......:-:....              
                    ....:.........::..  ..::.. ..::......:-::......::-:....               
                     ....:.........::... ...::::::......:-::......:--:....                
                      ....::........::.......:--:.....::-:.......:-::...                  
                        ...::........:::... ..:......:-::......::-:....                   
                         ...:::.......:::...     ...:-::......:--:....                    
                          ...:::........:::... ...::-::......:-::....                     
                           ....:::.......::::...::-::......::-:....                       
                            ....:::.......::-::::-::......:--:....                        
                              ...:::.......::-:--::......:--:....                         
                               ....:::......::-::......::-::...                           
                                ....:::...............:--::...                            
                                 ....:-:.............:--:....                             
                                  ....:-::.........::--:....                              
                                   ....:--::.....:::-::...                                
                                     ...::-:::::::--::...                                 
                                      ...::--::::--::...                                  
                                       ....:--:---:...                                    
                                         ...::--::...                                     
                                          ....:.....                                      
                                             ....                                         
                                                                                          
                           +%#  -%#    %%%%%#    *%%%#=    *%*  +%+                         
                           +%%= -%#    %%+...   +%#.-%%.   *%%- +%+                         
                           +%%# -%#    %%=      +%# :%%:   *%%# +%+                         
                           +%#%=-%#    %%*--    +%# :%%:   *%#%-+%+                         
                           +%++%+%#    %%###    +%# :%%:   *%=*#+%+                         
                           +%+.%%%#    %%=      +%# :%%:   *%=:%%%+                         
                           +%+ +%%#    %%=      +%# :%%:   *%= *%%+                         
                           +%+  #%#    %%*===   -%%=+%#    *%= .%%+                         
                           -+=  -++    ++++++    -+**+.    ++-  =+=                                                                                                                
*/

// File: tools/interfaces/IProtocol_in.sol

//SPDX-License-Identifier: MIT
pragma solidity 0.8.16;

interface INDCA_V2in {
    /* STRUCT*/
    struct dashboardStruct{
        bool dcaActive;
        uint256 pairId;
        uint256 srcTokenAmount;
        uint256 tau;
        uint256 nextDcaTime;
        uint256 lastDcaTimeOk;
        uint256 destTokenEarned;
        uint256 exeRequired;//0 = Unlimited
        uint256 exeCompleted;
        uint averageBuyPrice;
        uint code;
        uint userError;
        bool allowanceOK;
        bool balanceOK;
    }
    /* WRITE METHODS*/
    function toggleRouter() external;//restricted to Proxy
    function createDCA(uint256 _pairId, address _userAddress, uint256 _srcTokenAmount, uint256 _tau, uint256 _exeRequired, bool _exeNow) external;//restricted to Proxy
    function closeDCA(uint256 _pairId, address _userAddress) external;//restricted to Proxy
    function DCAExecute(uint256 _dcaId) external;//restricted to Proxy
    function DCAResult(uint256 _dcaId, uint256 _destTokenAmount, uint _code, uint _unitaryPrice) external;//restricted to Proxy
    /* VIEW METHODS*/
    function numberDCAs() external view returns(uint256 actives, uint256 totals);//restricted to Proxy
    function neonStatus() external view returns(bool netActive, bool routerBusy);//restricted to Proxy
    function DCAChecks(uint256 _dcaId) external view returns(bool execute, bool allowanceOK, bool balanceOK);//restricted to Proxy
    function DCAInfo(uint256 _dcaId) external view returns(
        address srcToken,
        uint256 srcDecimals,
        address destToken,
        uint256 destDecimals,
        address reciever,
        uint256 typeAMM,
        uint256 srcTokenAmount
    );//restricted to Proxy
    function getDetails(uint256 _pairId, address _userAddress) external view returns(dashboardStruct memory);//restricted to Proxy
}

interface INHistorian_V2in {
    /* STRUCT*/
    struct detailStruct{
        uint256 pairId;
        uint256 closedDcaTime;
        uint256 destTokenEarned;
        uint reason; // (0 = Completed, 1 = User Close DCA, 2 = Insufficient User Approval or Balance)
    }
    /* WRITE METHODS*/
    function store(address _userAddress, detailStruct calldata _struct) external;//restricted to NDCA
    function deleteStore(address _userAddress, uint256 _storeId) external;//restricted to NDCA & Proxy
    /* VIEW METHODS*/
    function getHistoryDataBatch(address _userAddress) external view returns(detailStruct[] memory);//restricted to Proxy
    function getHistoryData(address _userAddress, uint256 _storeId) external view returns(uint256 closedDcaTime, uint256 destTokenEarned, uint reason, bool stored);//restricted to Proxy
}

interface INPairPool_V2in {
    /* VIEW METHODS*/
    function numberListedPairs() external view returns(uint256);
    function pairListed(uint256 _id) external view returns(address srcToken, uint256 srcDecimals, address destToken, uint256  destDecimals, uint typeAMM);
}
// File: @openzeppelin/contracts/utils/Context.sol


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

pragma solidity ^0.8.0;

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

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

// File: @openzeppelin/contracts/access/Ownable.sol


// OpenZeppelin Contracts (last updated v4.7.0) (access/Ownable.sol)

pragma solidity ^0.8.0;


/**
 * @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 Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        _checkOwner();
        _;
    }

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

    /**
     * @dev Throws if the sender is not the owner.
     */
    function _checkOwner() internal view virtual {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
    }

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

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

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

// File: NProxy-V2in.sol


pragma solidity 0.8.16;






contract NProxy_V2in is Ownable {
    struct resultStruct{
        uint256 dcaId;
        uint256 destTokenAmount;
        uint code;
        uint unitaryPrice;
    }
    
    address private NRouter;
    address private NPairPool;
    address private NHistorian;
    address private NDCA;

    /**
     * @dev Throws if called by any account other than the Router.
     */
    modifier onlyRouter() {
        require(msg.sender == NRouter, "NEON: Only Router is allowed");
        _;
    }
    /*
    * Constructor
    * () will be defined the unit of measure
    * @param _NDCA address of the NDCA
    * @param _NHistorian address of the NHistorian
    * @param _NRouter address of the NRouter
    * @param _NPairPool address of the NPairPool
    */
    constructor(address _NDCA, address _NHistorian, address _NRouter, address _NPairPool){
        NDCA = _NDCA;
        NHistorian = _NHistorian;
        NRouter = _NRouter;
        NPairPool = _NPairPool;
    }
    /* WRITE METHODS*/
    /*
    * @dev Define router address
    * () will be defined the unit of measure
    * @param _NRouter parameter to be modified, if 0 will be ignored
    * @param _NPairPool parameter to be modified, if 0 will be ignored
    * @param _NHistorian parameter to be modified, if 0 will be ignored
    * @param _NDCA parameter to be modified, if 0 will be ignored
    */
    function addressSettings(address _NDCA, address _NHistorian, address _NRouter, address _NPairPool) external onlyOwner {
        NDCA = _NDCA != address(0) ? _NDCA : NDCA;
        NHistorian = _NHistorian != address(0) ? _NHistorian : NHistorian;
        NRouter = _NRouter != address(0) ? _NRouter : NRouter;
        NPairPool = _NPairPool != address(0) ? _NPairPool : NPairPool;
    }
    /* UI*/
    /*
    * @user Create DCA
    * () will be defined the unit of measure
    * @param _pairId pair where will create a DCA
    * @param _srcTokenAmount (wei) amount to be sell every tau with all decimals
    * @param _tau execution frequency
    * @param _exeRequired number of execution required (0 = unlimited)
    * @param _exeNow if true the first execution will be at first router scan (in the day)
    */ 
    function createDCA(uint256 _pairId, uint256 _srcTokenAmount, uint256 _tau, uint256 _exeRequired, bool _exeNow) external {
        INDCA_V2in(NDCA).createDCA(_pairId, msg.sender, _srcTokenAmount, _tau, _exeRequired, _exeNow);
    }
    /*
    * @user Close DCA
    * () will be defined the unit of measure
    * @param _pairId pair where DCA will be closed
    */ 
    function closeDCA(uint256 _pairId) external {
        INDCA_V2in(NDCA).closeDCA(_pairId, msg.sender);
    }
    /*
    * @user Delete Stored data
    * @param _storeId data id to be deleted
    */
    function deleteStore(uint256 _storeId) external {
        INHistorian_V2in(NHistorian).deleteStore(msg.sender, _storeId);
    }
    /* ROUTER*/
    /*
    * @router Toggle Router Status
    * () will be defined the unit of measure
    */
    function toggleRouter() external onlyRouter {
        INDCA_V2in(NDCA).toggleRouter();
    }
    /*
    * @router DCA-in Execute (pre-execution)
    * () will be defined the unit of measure
    * @param _dcaIds array of ids to execute the DCA (e.g. [1, 2, ..x])
    * @return array of bool (true = fund transfered, false = not)
    */ 
    function DCAExecuteBatch(uint256[] calldata _dcaIds) external onlyRouter {
        uint256 length = _dcaIds.length;
        for(uint256 i; i < length; i++){
            INDCA_V2in(NDCA).DCAExecute(_dcaIds[i]);
        }
    }
    /*
    * @router DCA-in Result (post-execution)
    * () will be defined the unit of measure
    * @param array of _data for dcas executed (e.g. [[1, 69, 200, 6],[2, 69, 200, 6]])
    */
    function DCAResultBatch(resultStruct[] calldata _data) external onlyRouter {
        uint256 length = _data.length;
        for(uint256 i; i < length; i++){
            INDCA_V2in(NDCA).DCAResult(_data[i].dcaId, _data[i].destTokenAmount, _data[i].code, _data[i].unitaryPrice);
        }
    }
    /* VIEW METHODS*/
    /*
    * @user Check if all related contract are defined
    * () will be defined the unit of measure
    * @return true if all related contract are defined
    */
    function isSettingsCompleted() external view returns(bool){
        return NRouter != address(0) && NPairPool != address(0) && NHistorian != address(0) && NDCA != address(0) ? true : false;
    }
    /*
    * @user Network Status
    * () will be defined the unit of measure
    * @return netActive true if network active
    * @return routerBusy true if router busy
    */
    function neonStatus() external view returns(bool netActive, bool routerBusy){
        return INDCA_V2in(NDCA).neonStatus();
    }
    /*
    * @user Check Pair blacklisted
    * () will be defined the unit of measure
    * @param _pairId id of the pair
    * @return true if blacklisted
    */
    function isBlackListed(uint256 _pairId) external view returns(bool){
        (address srcToken, , , , ) = INPairPool_V2in(NPairPool).pairListed(_pairId);
        return srcToken == address(0);
    }
    /*
    * @user Neon DCAs numbers
    * () will be defined the unit of measure
    * @return actives total Active DCAs
    * @return totals total DCAs Created
    */
    function numberDCAs() external view returns(uint256 actives, uint256 totals){
        return INDCA_V2in(NDCA).numberDCAs();
    }
    /* UI*/
    /*
    * @user Get info of current DCA (for creating)
    * () will be defined the unit of measure
    * @param _pairId id of the pair
    * @return dcaActive true if active
    * @return srcToken address of the selected token DCA
    * @return srcDecimals decimals of selected token DCA
    */
    function getCurrentInfo(uint256 _pairId) external view returns(bool dcaActive, address srcToken, uint256 srcDecimals){
        (srcToken, srcDecimals, , , ) = INPairPool_V2in(NPairPool).pairListed(_pairId);
        INDCA_V2in.dashboardStruct memory tempData = INDCA_V2in(NDCA).getDetails(_pairId, msg.sender);
        dcaActive = tempData.dcaActive;
    }
    /*
    * @user Details info for the user
    * () will be defined the unit of measure
    * @return concat array of dashboardStruct (each DCA detail occupies 13 positions, first parameter "false" = no DCAs found)
    */
    function getDetailsBatch() external view returns(INDCA_V2in.dashboardStruct[] memory){
        uint256 totalPairs = INPairPool_V2in(NPairPool).numberListedPairs();
        INDCA_V2in.dashboardStruct[] memory data = new INDCA_V2in.dashboardStruct[](totalPairs);
        uint256 id;
        for(uint256 i=1; i<=totalPairs; i++){
            INDCA_V2in.dashboardStruct memory tempData = INDCA_V2in(NDCA).getDetails(i, msg.sender);
            if(tempData.dcaActive){
                data[id] = tempData;
                id += 1;
            }
        }
        return data;
    }
    /*
    * @user History info for the user
    * () will be defined the unit of measure
    * @return concat array of detailStruct (each DCA history occupies 4 positions, "empty obj = no DCAs found)
    */
    function getHistoryDataBatch() external view returns(INHistorian_V2in.detailStruct[] memory){
        return INHistorian_V2in(NHistorian).getHistoryDataBatch(msg.sender);
    }
    /* ROUTER*/
    /*
    * @router Pre-Check for DCA execution [Router]
    * () will be defined the unit of measure
    * @param _dcaId DCA id
    * @return execute true when need to be execute & DCA active
    * @return allowanceOK true when allowance OK
    * @return balanceOK true when balance OK
    */
    function DCAChecks(uint256 _dcaId) external view onlyRouter returns(bool execute, bool allowanceOK, bool balanceOK){
        return INDCA_V2in(NDCA).DCAChecks(_dcaId);
    }
    /*
    * @router Info to execute DCA [Router]
    * () will be defined the unit of measure
    * @param _dcaId DCA id
    * @return srcToken address of the token
    * @return srcDecimals number of decimals
    * @return destToken address of the token
    * @return destDecimals number of decimals
    * @return reciever address user for DCA
    * @return typeAMM AMM that will execute the swap
    * @return srcTokenAmount amount to be swapped
    */
    function DCAInfo(uint256 _dcaId) external view onlyRouter returns(
        address srcToken,
        uint256 srcDecimals,
        address destToken,
        uint256 destDecimals,
        address reciever,
        uint256 typeAMM,
        uint256 srcTokenAmount
    ){
        return INDCA_V2in(NDCA).DCAInfo(_dcaId);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_NDCA","type":"address"},{"internalType":"address","name":"_NHistorian","type":"address"},{"internalType":"address","name":"_NRouter","type":"address"},{"internalType":"address","name":"_NPairPool","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[{"internalType":"uint256","name":"_dcaId","type":"uint256"}],"name":"DCAChecks","outputs":[{"internalType":"bool","name":"execute","type":"bool"},{"internalType":"bool","name":"allowanceOK","type":"bool"},{"internalType":"bool","name":"balanceOK","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"_dcaIds","type":"uint256[]"}],"name":"DCAExecuteBatch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_dcaId","type":"uint256"}],"name":"DCAInfo","outputs":[{"internalType":"address","name":"srcToken","type":"address"},{"internalType":"uint256","name":"srcDecimals","type":"uint256"},{"internalType":"address","name":"destToken","type":"address"},{"internalType":"uint256","name":"destDecimals","type":"uint256"},{"internalType":"address","name":"reciever","type":"address"},{"internalType":"uint256","name":"typeAMM","type":"uint256"},{"internalType":"uint256","name":"srcTokenAmount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"uint256","name":"dcaId","type":"uint256"},{"internalType":"uint256","name":"destTokenAmount","type":"uint256"},{"internalType":"uint256","name":"code","type":"uint256"},{"internalType":"uint256","name":"unitaryPrice","type":"uint256"}],"internalType":"struct NProxy_V2in.resultStruct[]","name":"_data","type":"tuple[]"}],"name":"DCAResultBatch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_NDCA","type":"address"},{"internalType":"address","name":"_NHistorian","type":"address"},{"internalType":"address","name":"_NRouter","type":"address"},{"internalType":"address","name":"_NPairPool","type":"address"}],"name":"addressSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_pairId","type":"uint256"}],"name":"closeDCA","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_pairId","type":"uint256"},{"internalType":"uint256","name":"_srcTokenAmount","type":"uint256"},{"internalType":"uint256","name":"_tau","type":"uint256"},{"internalType":"uint256","name":"_exeRequired","type":"uint256"},{"internalType":"bool","name":"_exeNow","type":"bool"}],"name":"createDCA","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_storeId","type":"uint256"}],"name":"deleteStore","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_pairId","type":"uint256"}],"name":"getCurrentInfo","outputs":[{"internalType":"bool","name":"dcaActive","type":"bool"},{"internalType":"address","name":"srcToken","type":"address"},{"internalType":"uint256","name":"srcDecimals","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDetailsBatch","outputs":[{"components":[{"internalType":"bool","name":"dcaActive","type":"bool"},{"internalType":"uint256","name":"pairId","type":"uint256"},{"internalType":"uint256","name":"srcTokenAmount","type":"uint256"},{"internalType":"uint256","name":"tau","type":"uint256"},{"internalType":"uint256","name":"nextDcaTime","type":"uint256"},{"internalType":"uint256","name":"lastDcaTimeOk","type":"uint256"},{"internalType":"uint256","name":"destTokenEarned","type":"uint256"},{"internalType":"uint256","name":"exeRequired","type":"uint256"},{"internalType":"uint256","name":"exeCompleted","type":"uint256"},{"internalType":"uint256","name":"averageBuyPrice","type":"uint256"},{"internalType":"uint256","name":"code","type":"uint256"},{"internalType":"uint256","name":"userError","type":"uint256"},{"internalType":"bool","name":"allowanceOK","type":"bool"},{"internalType":"bool","name":"balanceOK","type":"bool"}],"internalType":"struct INDCA_V2in.dashboardStruct[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getHistoryDataBatch","outputs":[{"components":[{"internalType":"uint256","name":"pairId","type":"uint256"},{"internalType":"uint256","name":"closedDcaTime","type":"uint256"},{"internalType":"uint256","name":"destTokenEarned","type":"uint256"},{"internalType":"uint256","name":"reason","type":"uint256"}],"internalType":"struct INHistorian_V2in.detailStruct[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_pairId","type":"uint256"}],"name":"isBlackListed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isSettingsCompleted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"neonStatus","outputs":[{"internalType":"bool","name":"netActive","type":"bool"},{"internalType":"bool","name":"routerBusy","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"numberDCAs","outputs":[{"internalType":"uint256","name":"actives","type":"uint256"},{"internalType":"uint256","name":"totals","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"toggleRouter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040523480156200001157600080fd5b5060405162001f1a38038062001f1a833981016040819052620000349162000100565b6200003f3362000093565b600480546001600160a01b039586166001600160a01b03199182161790915560038054948616948216949094179093556001805492851692841692909217909155600280549190931691161790556200015d565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80516001600160a01b0381168114620000fb57600080fd5b919050565b600080600080608085870312156200011757600080fd5b6200012285620000e3565b93506200013260208601620000e3565b92506200014260408601620000e3565b91506200015260608601620000e3565b905092959194509250565b611dad806200016d6000396000f3fe608060405234801561001057600080fd5b50600436106101515760003560e01c80637490da0a116100cd578063e837523911610081578063f2fde38b11610066578063f2fde38b14610352578063f43d713f14610365578063fbce5e7c1461037857600080fd5b8063e83752391461031e578063e9953bae1461033d57600080fd5b80638da5cb5b116100b25780638da5cb5b146102d0578063b95250f1146102f8578063c656e78e1461030b57600080fd5b80637490da0a146102aa5780637cc69325146102bd57600080fd5b8063481ab73011610124578063595137bd11610109578063595137bd146102245780636a30fa8f1461028f578063715018a6146102a257600080fd5b8063481ab730146101c7578063524521f8146101df57600080fd5b806309e82c1a1461015657806318e8a50114610178578063196268081461018257806338b4ee7814610195575b600080fd5b61015e61038d565b604080519283526020830191909152015b60405180910390f35b610180610428565b005b61018061019036600461159f565b610531565b6101a86101a3366004611614565b610658565b604080519315158452911515602084015215159082015260600161016f565b6101cf61077e565b604051901515815260200161016f565b6101f26101ed366004611614565b610817565b60408051931515845273ffffffffffffffffffffffffffffffffffffffff90921660208401529082015260600161016f565b610237610232366004611614565b61095e565b6040805173ffffffffffffffffffffffffffffffffffffffff98891681526020810197909752948716948601949094526060850192909252909316608083015260a082019290925260c081019190915260e00161016f565b61018061029d36600461163b565b610a96565b610180610b42565b6101806102b8366004611614565b610b56565b6101806102cb366004611614565b610be2565b60005460405173ffffffffffffffffffffffffffffffffffffffff909116815260200161016f565b6101cf610306366004611614565b610c3f565b6101806103193660046116aa565b610cf9565b610326610ebc565b60408051921515835290151560208301520161016f565b610345610f4f565b60405161016f9190611706565b6101806103603660046117db565b6111a8565b6101806103733660046117ff565b61125f565b6103806113f4565b60405161016f9190611862565b60048054604080517f09e82c1a0000000000000000000000000000000000000000000000000000000081528151600094859473ffffffffffffffffffffffffffffffffffffffff16936309e82c1a93808301939192908290030181865afa1580156103fc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061042091906118b9565b915091509091565b60015473ffffffffffffffffffffffffffffffffffffffff1633146104ae576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4e454f4e3a204f6e6c7920526f7574657220697320616c6c6f7765640000000060448201526064015b60405180910390fd5b60048054604080517f18e8a501000000000000000000000000000000000000000000000000000000008152905173ffffffffffffffffffffffffffffffffffffffff909216926318e8a50192828201926000929082900301818387803b15801561051757600080fd5b505af115801561052b573d6000803e3d6000fd5b50505050565b60015473ffffffffffffffffffffffffffffffffffffffff1633146105b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4e454f4e3a204f6e6c7920526f7574657220697320616c6c6f7765640000000060448201526064016104a5565b8060005b8181101561052b5760045473ffffffffffffffffffffffffffffffffffffffff1663684e1c5d8585848181106105ee576105ee6118dd565b905060200201356040518263ffffffff1660e01b815260040161061391815260200190565b600060405180830381600087803b15801561062d57600080fd5b505af1158015610641573d6000803e3d6000fd5b5050505080806106509061193b565b9150506105b6565b6001546000908190819073ffffffffffffffffffffffffffffffffffffffff1633146106e0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4e454f4e3a204f6e6c7920526f7574657220697320616c6c6f7765640000000060448201526064016104a5565b600480546040517f38b4ee7800000000000000000000000000000000000000000000000000000000815291820186905273ffffffffffffffffffffffffffffffffffffffff16906338b4ee7890602401606060405180830381865afa15801561074d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107719190611983565b9250925092509193909250565b60015460009073ffffffffffffffffffffffffffffffffffffffff16158015906107bf575060025473ffffffffffffffffffffffffffffffffffffffff1615155b80156107e2575060035473ffffffffffffffffffffffffffffffffffffffff1615155b8015610805575060045473ffffffffffffffffffffffffffffffffffffffff1615155b61080f5750600090565b60015b905090565b6002546040517fc3683038000000000000000000000000000000000000000000000000000000008152600481018390526000918291829173ffffffffffffffffffffffffffffffffffffffff169063c36830389060240160a060405180830381865afa15801561088b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108af91906119d0565b5050600480546040517f9115abf400000000000000000000000000000000000000000000000000000000815291820189905233602483015293955091935060009273ffffffffffffffffffffffffffffffffffffffff1691639115abf491506044016101c060405180830381865afa15801561092f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109539190611aef565b519592945090925050565b60015460009081908190819081908190819073ffffffffffffffffffffffffffffffffffffffff1633146109ee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4e454f4e3a204f6e6c7920526f7574657220697320616c6c6f7765640000000060448201526064016104a5565b600480546040517f595137bd0000000000000000000000000000000000000000000000000000000081529182018a905273ffffffffffffffffffffffffffffffffffffffff169063595137bd9060240160e060405180830381865afa158015610a5b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a7f9190611bb6565b959e949d50929b5090995097509550909350915050565b600480546040517f4be3a42000000000000000000000000000000000000000000000000000000000815291820187905233602483015260448201869052606482018590526084820184905282151560a483015273ffffffffffffffffffffffffffffffffffffffff1690634be3a4209060c401600060405180830381600087803b158015610b2357600080fd5b505af1158015610b37573d6000803e3d6000fd5b505050505050505050565b610b4a6114a9565b610b54600061152a565b565b600480546040517fb9c3a56800000000000000000000000000000000000000000000000000000000815291820183905233602483015273ffffffffffffffffffffffffffffffffffffffff169063b9c3a568906044015b600060405180830381600087803b158015610bc757600080fd5b505af1158015610bdb573d6000803e3d6000fd5b5050505050565b6003546040517f6e6c097c0000000000000000000000000000000000000000000000000000000081523360048201526024810183905273ffffffffffffffffffffffffffffffffffffffff90911690636e6c097c90604401610bad565b6002546040517fc368303800000000000000000000000000000000000000000000000000000000815260048101839052600091829173ffffffffffffffffffffffffffffffffffffffff9091169063c36830389060240160a060405180830381865afa158015610cb3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cd791906119d0565b5050505073ffffffffffffffffffffffffffffffffffffffff16159392505050565b610d016114a9565b73ffffffffffffffffffffffffffffffffffffffff8416610d3a5760045473ffffffffffffffffffffffffffffffffffffffff16610d3c565b835b600480547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9283161790558316610da15760035473ffffffffffffffffffffffffffffffffffffffff16610da3565b825b600380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9283161790558216610e085760015473ffffffffffffffffffffffffffffffffffffffff16610e0a565b815b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9283161790558116610e6f5760025473ffffffffffffffffffffffffffffffffffffffff16610e71565b805b600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9290921691909117905550505050565b60048054604080517fe83752390000000000000000000000000000000000000000000000000000000081528151600094859473ffffffffffffffffffffffffffffffffffffffff169363e837523993808301939192908290030181865afa158015610f2b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104209190611c2a565b60606000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c7d204ab6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610fc0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fe49190611c64565b905060008167ffffffffffffffff81111561100157611001611a24565b6040519080825280602002602001820160405280156110aa57816020015b611097604051806101c0016040528060001515815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000151581526020016000151581525090565b81526020019060019003908161101f5790505b509050600060015b83811161119f57600480546040517f9115abf400000000000000000000000000000000000000000000000000000000815291820183905233602483015260009173ffffffffffffffffffffffffffffffffffffffff90911690639115abf4906044016101c060405180830381865afa158015611132573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111569190611aef565b80519091501561118c5780848481518110611173576111736118dd565b6020908102919091010152611189600184611c7d565b92505b50806111978161193b565b9150506110b2565b50909392505050565b6111b06114a9565b73ffffffffffffffffffffffffffffffffffffffff8116611253576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016104a5565b61125c8161152a565b50565b60015473ffffffffffffffffffffffffffffffffffffffff1633146112e0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4e454f4e3a204f6e6c7920526f7574657220697320616c6c6f7765640000000060448201526064016104a5565b8060005b8181101561052b5760045473ffffffffffffffffffffffffffffffffffffffff1663ecf10a4785858481811061131c5761131c6118dd565b90506080020160000135868685818110611338576113386118dd565b90506080020160200135878786818110611354576113546118dd565b90506080020160400135888887818110611370576113706118dd565b905060800201606001356040518563ffffffff1660e01b81526004016113af949392919093845260208401929092526040830152606082015260800190565b600060405180830381600087803b1580156113c957600080fd5b505af11580156113dd573d6000803e3d6000fd5b5050505080806113ec9061193b565b9150506112e4565b6003546040517f6df7f2e900000000000000000000000000000000000000000000000000000000815233600482015260609173ffffffffffffffffffffffffffffffffffffffff1690636df7f2e990602401600060405180830381865afa158015611463573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526108129190810190611c96565b60005473ffffffffffffffffffffffffffffffffffffffff163314610b54576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016104a5565b6000805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600080602083850312156115b257600080fd5b823567ffffffffffffffff808211156115ca57600080fd5b818501915085601f8301126115de57600080fd5b8135818111156115ed57600080fd5b8660208260051b850101111561160257600080fd5b60209290920196919550909350505050565b60006020828403121561162657600080fd5b5035919050565b801515811461125c57600080fd5b600080600080600060a0868803121561165357600080fd5b85359450602086013593506040860135925060608601359150608086013561167a8161162d565b809150509295509295909350565b73ffffffffffffffffffffffffffffffffffffffff8116811461125c57600080fd5b600080600080608085870312156116c057600080fd5b84356116cb81611688565b935060208501356116db81611688565b925060408501356116eb81611688565b915060608501356116fb81611688565b939692955090935050565b602080825282518282018190526000919060409081850190868401855b828110156117ce57815180511515855286810151878601528581015186860152606080820151908601526080808201519086015260a0808201519086015260c0808201519086015260e080820151908601526101008082015190860152610120808201519086015261014080820151908601526101608082015190860152610180808201511515908601526101a0908101511515908501526101c09093019290850190600101611723565b5091979650505050505050565b6000602082840312156117ed57600080fd5b81356117f881611688565b9392505050565b6000806020838503121561181257600080fd5b823567ffffffffffffffff8082111561182a57600080fd5b818501915085601f83011261183e57600080fd5b81358181111561184d57600080fd5b8660208260071b850101111561160257600080fd5b602080825282518282018190526000919060409081850190868401855b828110156117ce5781518051855286810151878601528581015186860152606090810151908501526080909301929085019060010161187f565b600080604083850312156118cc57600080fd5b505080516020909101519092909150565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361196c5761196c61190c565b5060010190565b805161197e8161162d565b919050565b60008060006060848603121561199857600080fd5b83516119a38161162d565b60208501519093506119b48161162d565b60408501519092506119c58161162d565b809150509250925092565b600080600080600060a086880312156119e857600080fd5b85516119f381611688565b602087015160408801519196509450611a0b81611688565b6060870151608090970151959894975095949392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040516101c0810167ffffffffffffffff81118282101715611a7757611a77611a24565b60405290565b6040516080810167ffffffffffffffff81118282101715611a7757611a77611a24565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611ae757611ae7611a24565b604052919050565b60006101c08284031215611b0257600080fd5b611b0a611a53565b611b1383611973565b81526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e0820152610100808401518183015250610120808401518183015250610140808401518183015250610160808401518183015250610180611b99818501611973565b908201526101a0611bab848201611973565b908201529392505050565b600080600080600080600060e0888a031215611bd157600080fd5b8751611bdc81611688565b602089015160408a01519198509650611bf481611688565b606089015160808a01519196509450611c0c81611688565b8093505060a0880151915060c0880151905092959891949750929550565b60008060408385031215611c3d57600080fd5b8251611c488161162d565b6020840151909250611c598161162d565b809150509250929050565b600060208284031215611c7657600080fd5b5051919050565b80820180821115611c9057611c9061190c565b92915050565b60006020808385031215611ca957600080fd5b825167ffffffffffffffff80821115611cc157600080fd5b818501915085601f830112611cd557600080fd5b815181811115611ce757611ce7611a24565b611cf5848260051b01611aa0565b818152848101925060079190911b830184019087821115611d1557600080fd5b928401925b81841015611d6c5760808489031215611d335760008081fd5b611d3b611a7d565b8451815285850151868201526040808601519082015260608086015190820152835260809093019291840191611d1a565b97965050505050505056fea264697066735822122053e6ca1b68959d4f47124e9840caee52114a67155093c2531ae0eb8c62e27e9664736f6c63430008100033000000000000000000000000902c671b551dd21ac6c246337cc00461911f15a80000000000000000000000000032c78246d9bb5a03c3e060bfbe336565edf7bd00000000000000000000000068b4db8f3824ba3b21806dd7cfd332437dcee6650000000000000000000000001cf7569a09d944f8d70f896b35458193b73f301d

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

000000000000000000000000902c671b551dd21ac6c246337cc00461911f15a80000000000000000000000000032c78246d9bb5a03c3e060bfbe336565edf7bd00000000000000000000000068b4db8f3824ba3b21806dd7cfd332437dcee6650000000000000000000000001cf7569a09d944f8d70f896b35458193b73f301d

-----Decoded View---------------
Arg [0] : _NDCA (address): 0x902c671b551dd21ac6c246337cc00461911f15a8
Arg [1] : _NHistorian (address): 0x0032c78246d9bb5a03c3e060bfbe336565edf7bd
Arg [2] : _NRouter (address): 0x68b4db8f3824ba3b21806dd7cfd332437dcee665
Arg [3] : _NPairPool (address): 0x1cf7569a09d944f8d70f896b35458193b73f301d

-----Encoded View---------------
4 Constructor Arguments found :
Arg [0] : 000000000000000000000000902c671b551dd21ac6c246337cc00461911f15a8
Arg [1] : 0000000000000000000000000032c78246d9bb5a03c3e060bfbe336565edf7bd
Arg [2] : 00000000000000000000000068b4db8f3824ba3b21806dd7cfd332437dcee665
Arg [3] : 0000000000000000000000001cf7569a09d944f8d70f896b35458193b73f301d


Deployed ByteCode Sourcemap

11881:8773:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17308:131;;;:::i;:::-;;;;188:25:1;;;244:2;229:18;;222:34;;;;161:18;17308:131:0;;;;;;;;14952:94;;;:::i;:::-;;15301:230;;;;;;:::i;:::-;;:::i;19670:175::-;;;;;;:::i;:::-;;:::i;:::-;;;;1377:14:1;;1370:22;1352:41;;1436:14;;1429:22;1424:2;1409:18;;1402:50;1495:14;1488:22;1468:18;;;1461:50;1340:2;1325:18;19670:175:0;1168:349:1;16232:197:0;;;:::i;:::-;;;1687:14:1;;1680:22;1662:41;;1650:2;1635:18;16232:197:0;1522:187:1;17765:359:0;;;;;;:::i;:::-;;:::i;:::-;;;;1935:14:1;;1928:22;1910:41;;1999:42;1987:55;;;1982:2;1967:18;;1960:83;2059:18;;;2052:34;1898:2;1883:18;17765:359:0;1714:378:1;20319:332:0;;;;;;:::i;:::-;;:::i;:::-;;;;2422:42:1;2491:15;;;2473:34;;2538:2;2523:18;;2516:34;;;;2586:15;;;2566:18;;;2559:43;;;;2633:2;2618:18;;2611:34;;;;2682:15;;;2676:3;2661:19;;2654:44;2729:3;2714:19;;2707:35;;;;2773:3;2758:19;;2751:35;;;;2399:3;2384:19;20319:332:0;2097:695:1;14118:232:0;;;;;;:::i;:::-;;:::i;10997:103::-;;;:::i;14494:109::-;;;;;;:::i;:::-;;:::i;14702:129::-;;;;;;:::i;:::-;;:::i;10349:87::-;10395:7;10422:6;10349:87;;10422:6;;;;3586:74:1;;3574:2;3559:18;10349:87:0;3440:226:1;16926:201:0;;;;;;:::i;:::-;;:::i;13286:390::-;;;;;;:::i;:::-;;:::i;16619:131::-;;;:::i;:::-;;;;4693:14:1;;4686:22;4668:41;;4752:14;;4745:22;4740:2;4725:18;;4718:50;4641:18;16619:131:0;4506:268:1;18359:588:0;;;:::i;:::-;;;;;;;:::i;11255:201::-;;;;;;:::i;:::-;;:::i;15733:297::-;;;;;;:::i;:::-;;:::i;19166:178::-;;;:::i;:::-;;;;;;;:::i;17308:131::-;17413:4;;;17402:29;;;;;;;;17352:15;;;;17413:4;;;17402:27;;:29;;;;;;;;;;;;17413:4;17402:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17395:36;;;;17308:131;;:::o;14952:94::-;12330:7;;;;12316:10;:21;12308:62;;;;;;;8960:2:1;12308:62:0;;;8942:21:1;8999:2;8979:18;;;8972:30;9038;9018:18;;;9011:58;9086:18;;12308:62:0;;;;;;;;;15018:4:::1;::::0;;15007:31:::1;::::0;;;;;;;15018:4:::1;::::0;;::::1;::::0;15007:29:::1;::::0;:31;;::::1;::::0;15018:4:::1;::::0;15007:31;;;;;;15018:4;;15007:31;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;14952:94::o:0;15301:230::-;12330:7;;;;12316:10;:21;12308:62;;;;;;;8960:2:1;12308:62:0;;;8942:21:1;8999:2;8979:18;;;8972:30;9038;9018:18;;;9011:58;9086:18;;12308:62:0;8758:352:1;12308:62:0;15402:7;15385:14:::1;15427:97;15446:6;15442:1;:10;15427:97;;;15484:4;::::0;::::1;;15473:27;15501:7:::0;;15509:1;15501:10;;::::1;;;;;:::i;:::-;;;;;;;15473:39;;;;;;;;;;;;;9450:25:1::0;;9438:2;9423:18;;9304:177;15473:39:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;15454:3;;;;;:::i;:::-;;;;15427:97;;19670:175:::0;12330:7;;19738:12;;;;;;12330:7;;12316:10;:21;12308:62;;;;;;;8960:2:1;12308:62:0;;;8942:21:1;8999:2;8979:18;;;8972:30;9038;9018:18;;;9011:58;9086:18;;12308:62:0;8758:352:1;12308:62:0;19814:4:::1;::::0;;19803:34:::1;::::0;;;;;;::::1;9450:25:1::0;;;19814:4:0::1;;::::0;19803:26:::1;::::0;9423:18:1;;19803:34:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19796:41;;;;;;19670:175:::0;;;;;:::o;16232:197::-;16308:7;;16285:4;;16308:21;:7;:21;;;;:48;;-1:-1:-1;16333:9:0;;:23;:9;:23;;16308:48;:76;;;;-1:-1:-1;16360:10:0;;:24;:10;:24;;16308:76;:98;;;;-1:-1:-1;16388:4:0;;:18;:4;:18;;16308:98;:113;;-1:-1:-1;16416:5:0;;16232:197::o;16308:113::-;16409:4;16308:113;16301:120;;16232:197;:::o;17765:359::-;17941:9;;17925:46;;;;;;;;9450:25:1;;;17828:14:0;;;;;;17941:9;;;17925:37;;9423:18:1;;17925:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;18038:4:0;;;18027:48;;;;;;;;11267:25:1;;;18064:10:0;11308:18:1;;;11301:83;17893:78:0;;-1:-1:-1;17893:78:0;;-1:-1:-1;17982:42:0;;18038:4;;;18027:27;;-1:-1:-1;11240:18:1;;18027:48:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18098:18;;17765:359;;-1:-1:-1;17765:359:0;;-1:-1:-1;;17765:359:0:o;20319:332::-;12330:7;;20395:16;;;;;;;;;;;;;;12330:7;;12316:10;:21;12308:62;;;;;;;8960:2:1;12308:62:0;;;8942:21:1;8999:2;8979:18;;;8972:30;9038;9018:18;;;9011:58;9086:18;;12308:62:0;8758:352:1;12308:62:0;20622:4:::1;::::0;;20611:32:::1;::::0;;;;;;::::1;9450:25:1::0;;;20622:4:0::1;;::::0;20611:24:::1;::::0;9423:18:1;;20611:32:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20604:39:::0;;;;-1:-1:-1;20604:39:0;;-1:-1:-1;20604:39:0;;-1:-1:-1;20604:39:0;-1:-1:-1;20604:39:0;-1:-1:-1;20604:39:0;;-1:-1:-1;20319:332:0;-1:-1:-1;;20319:332:0:o;14118:232::-;14260:4;;;14249:93;;;;;;;;14742:25:1;;;14285:10:0;14783:18:1;;;14776:83;14875:18;;;14868:34;;;14918:18;;;14911:34;;;14961:19;;;14954:35;;;15033:14;;15026:22;15005:19;;;14998:51;14260:4:0;;;14249:26;;14714:19:1;;14249:93:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14118:232;;;;;:::o;10997:103::-;10235:13;:11;:13::i;:::-;11062:30:::1;11089:1;11062:18;:30::i;:::-;10997:103::o:0;14494:109::-;14560:4;;;14549:46;;;;;;;;11267:25:1;;;14584:10:0;11308:18:1;;;11301:83;14560:4:0;;;14549:25;;11240:18:1;;14549:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14494:109;:::o;14702:129::-;14778:10;;14761:62;;;;;14802:10;14761:62;;;15234:74:1;15324:18;;;15317:34;;;14778:10:0;;;;;14761:40;;15207:18:1;;14761:62:0;15060:297:1;16926:201:0;17049:9;;17033:46;;;;;;;;9450:25:1;;;16988:4:0;;;;17049:9;;;;;17033:37;;9423:18:1;;17033:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;17097:22:0;;;;;-1:-1:-1;;;16926:201:0:o;13286:390::-;10235:13;:11;:13::i;:::-;13422:19:::1;::::0;::::1;:34;;13452:4;::::0;::::1;;13422:34;;;13444:5;13422:34;13415:4;:41:::0;;;::::1;;::::0;;::::1;;::::0;;13480:25;::::1;:52;;13522:10;::::0;::::1;;13480:52;;;13508:11;13480:52;13467:10;:65:::0;;;::::1;;::::0;;::::1;;::::0;;13553:22;::::1;:43;;13589:7;::::0;::::1;;13553:43;;;13578:8;13553:43;13543:7;:53:::0;;;::::1;;::::0;;::::1;;::::0;;13619:24;::::1;:49;;13659:9;::::0;::::1;;13619:49;;;13646:10;13619:49;13607:9;:61:::0;;;::::1;;::::0;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;;;;13286:390:0:o;16619:131::-;16724:4;;;16713:29;;;;;;;;16663:14;;;;16724:4;;;16713:27;;:29;;;;;;;;;;;;16724:4;16713:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;18359:588::-;18408:35;18455:18;18492:9;;;;;;;;;;;18476:44;;;:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18455:67;;18533:40;18609:10;18576:44;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18576:44:0;;;;;;;;;;;;;;;;-1:-1:-1;18533:87:0;-1:-1:-1;18631:10:0;18666:1;18652:266;18672:10;18669:1;:13;18652:266;;18759:4;;;18748:42;;;;;;;;11267:25:1;;;18779:10:0;11308:18:1;;;11301:83;18703:42:0;;18759:4;;;;;18748:27;;11240:18:1;;18748:42:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18808:18;;18703:87;;-1:-1:-1;18805:102:0;;;18857:8;18846:4;18851:2;18846:8;;;;;;;;:::i;:::-;;;;;;;;;;:19;18884:7;18890:1;18884:7;;:::i;:::-;;;18805:102;-1:-1:-1;18684:3:0;;;;:::i;:::-;;;;18652:266;;;-1:-1:-1;18935:4:0;;18359:588;-1:-1:-1;;;18359:588:0:o;11255:201::-;10235:13;:11;:13::i;:::-;11344:22:::1;::::0;::::1;11336:73;;;::::0;::::1;::::0;;16261:2:1;11336:73:0::1;::::0;::::1;16243:21:1::0;16300:2;16280:18;;;16273:30;16339:34;16319:18;;;16312:62;16410:8;16390:18;;;16383:36;16436:19;;11336:73:0::1;16059:402:1::0;11336:73:0::1;11420:28;11439:8;11420:18;:28::i;:::-;11255:201:::0;:::o;15733:297::-;12330:7;;;;12316:10;:21;12308:62;;;;;;;8960:2:1;12308:62:0;;;8942:21:1;8999:2;8979:18;;;8972:30;9038;9018:18;;;9011:58;9086:18;;12308:62:0;8758:352:1;12308:62:0;15836:5;15819:14:::1;15859:164;15878:6;15874:1;:10;15859:164;;;15916:4;::::0;::::1;;15905:26;15932:5:::0;;15938:1;15932:8;;::::1;;;;;:::i;:::-;;;;;;:14;;;15948:5;;15954:1;15948:8;;;;;;;:::i;:::-;;;;;;:24;;;15974:5;;15980:1;15974:8;;;;;;;:::i;:::-;;;;;;:13;;;15989:5;;15995:1;15989:8;;;;;;;:::i;:::-;;;;;;:21;;;15905:106;;;;;;;;;;;;;;;;;16697:25:1::0;;;16753:2;16738:18;;16731:34;;;;16796:2;16781:18;;16774:34;16839:2;16824:18;;16817:34;16684:3;16669:19;;16466:391;15905:106:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;15886:3;;;;;:::i;:::-;;;;15859:164;;19166:178:::0;19293:10;;19276:60;;;;;19325:10;19276:60;;;3586:74:1;19219:38:0;;19293:10;;;19276:48;;3559:18:1;;19276:60:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;10514:132::-;10395:7;10422:6;10578:23;10422:6;8980:10;10578:23;10570:68;;;;;;;18453:2:1;10570:68:0;;;18435:21:1;;;18472:18;;;18465:30;18531:34;18511:18;;;18504:62;18583:18;;10570:68:0;18251:356:1;11616:191:0;11690:16;11709:6;;;11726:17;;;;;;;;;;11759:40;;11709:6;;;;;;;11759:40;;11690:16;11759:40;11679:128;11616:191;:::o;267:615:1:-;353:6;361;414:2;402:9;393:7;389:23;385:32;382:52;;;430:1;427;420:12;382:52;470:9;457:23;499:18;540:2;532:6;529:14;526:34;;;556:1;553;546:12;526:34;594:6;583:9;579:22;569:32;;639:7;632:4;628:2;624:13;620:27;610:55;;661:1;658;651:12;610:55;701:2;688:16;727:2;719:6;716:14;713:34;;;743:1;740;733:12;713:34;796:7;791:2;781:6;778:1;774:14;770:2;766:23;762:32;759:45;756:65;;;817:1;814;807:12;756:65;848:2;840:11;;;;;870:6;;-1:-1:-1;267:615:1;;-1:-1:-1;;;;267:615:1:o;887:180::-;946:6;999:2;987:9;978:7;974:23;970:32;967:52;;;1015:1;1012;1005:12;967:52;-1:-1:-1;1038:23:1;;887:180;-1:-1:-1;887:180:1:o;2797:118::-;2883:5;2876:13;2869:21;2862:5;2859:32;2849:60;;2905:1;2902;2895:12;2920:515;3012:6;3020;3028;3036;3044;3097:3;3085:9;3076:7;3072:23;3068:33;3065:53;;;3114:1;3111;3104:12;3065:53;3150:9;3137:23;3127:33;;3207:2;3196:9;3192:18;3179:32;3169:42;;3258:2;3247:9;3243:18;3230:32;3220:42;;3309:2;3298:9;3294:18;3281:32;3271:42;;3363:3;3352:9;3348:19;3335:33;3377:28;3399:5;3377:28;:::i;:::-;3424:5;3414:15;;;2920:515;;;;;;;;:::o;3671:154::-;3757:42;3750:5;3746:54;3739:5;3736:65;3726:93;;3815:1;3812;3805:12;3830:671;3916:6;3924;3932;3940;3993:3;3981:9;3972:7;3968:23;3964:33;3961:53;;;4010:1;4007;4000:12;3961:53;4049:9;4036:23;4068:31;4093:5;4068:31;:::i;:::-;4118:5;-1:-1:-1;4175:2:1;4160:18;;4147:32;4188:33;4147:32;4188:33;:::i;:::-;4240:7;-1:-1:-1;4299:2:1;4284:18;;4271:32;4312:33;4271:32;4312:33;:::i;:::-;4364:7;-1:-1:-1;4423:2:1;4408:18;;4395:32;4436:33;4395:32;4436:33;:::i;:::-;3830:671;;;;-1:-1:-1;3830:671:1;;-1:-1:-1;;3830:671:1:o;4779:1885::-;5012:2;5064:21;;;5134:13;;5037:18;;;5156:22;;;4983:4;;5012:2;5197;;5215:18;;;;5256:15;;;4983:4;5299:1339;5313:6;5310:1;5307:13;5299:1339;;;5372:13;;5414:9;;1142:13;1135:21;1123:34;;5469:11;;;5463:18;5449:12;;;5442:40;5522:11;;;5516:18;5502:12;;;5495:40;5558:4;5602:11;;;5596:18;5582:12;;;5575:40;5638:4;5682:11;;;5676:18;5662:12;;;5655:40;5718:4;5762:11;;;5756:18;5742:12;;;5735:40;5798:4;5842:11;;;5836:18;5822:12;;;5815:40;5878:4;5922:11;;;5916:18;5902:12;;;5895:40;5958:6;6004:11;;;5998:18;5984:12;;;5977:40;6041:6;6088:12;;;6082:19;6067:13;;;6060:42;6126:6;6173:12;;;6167:19;6152:13;;;6145:42;6211:6;6258:12;;;6252:19;6237:13;;;6230:42;6296:6;6341:12;;;6335:19;1142:13;1135:21;6397:13;;;1123:34;6435:6;6482:12;;;6476:19;1142:13;1135:21;6540:13;;;1123:34;6583:6;6574:16;;;;6613:15;;;;5335:1;5328:9;5299:1339;;;-1:-1:-1;6655:3:1;;4779:1885;-1:-1:-1;;;;;;;4779:1885:1:o;6669:247::-;6728:6;6781:2;6769:9;6760:7;6756:23;6752:32;6749:52;;;6797:1;6794;6787:12;6749:52;6836:9;6823:23;6855:31;6880:5;6855:31;:::i;:::-;6905:5;6669:247;-1:-1:-1;;;6669:247:1:o;6921:646::-;7038:6;7046;7099:2;7087:9;7078:7;7074:23;7070:32;7067:52;;;7115:1;7112;7105:12;7067:52;7155:9;7142:23;7184:18;7225:2;7217:6;7214:14;7211:34;;;7241:1;7238;7231:12;7211:34;7279:6;7268:9;7264:22;7254:32;;7324:7;7317:4;7313:2;7309:13;7305:27;7295:55;;7346:1;7343;7336:12;7295:55;7386:2;7373:16;7412:2;7404:6;7401:14;7398:34;;;7428:1;7425;7418:12;7398:34;7481:7;7476:2;7466:6;7463:1;7459:14;7455:2;7451:23;7447:32;7444:45;7441:65;;;7502:1;7499;7492:12;7572:931;7801:2;7853:21;;;7923:13;;7826:18;;;7945:22;;;7772:4;;7801:2;7986;;8004:18;;;;8045:15;;;7772:4;8088:389;8102:6;8099:1;8096:13;8088:389;;;8161:13;;8199:9;;8187:22;;8249:11;;;8243:18;8229:12;;;8222:40;8302:11;;;8296:18;8282:12;;;8275:40;8338:4;8382:11;;;8376:18;8362:12;;;8355:40;8424:4;8415:14;;;;8452:15;;;;8124:1;8117:9;8088:389;;8508:245;8587:6;8595;8648:2;8636:9;8627:7;8623:23;8619:32;8616:52;;;8664:1;8661;8654:12;8616:52;-1:-1:-1;;8687:16:1;;8743:2;8728:18;;;8722:25;8687:16;;8722:25;;-1:-1:-1;8508:245:1:o;9115:184::-;9167:77;9164:1;9157:88;9264:4;9261:1;9254:15;9288:4;9285:1;9278:15;9486:184;9538:77;9535:1;9528:88;9635:4;9632:1;9625:15;9659:4;9656:1;9649:15;9675:195;9714:3;9745:66;9738:5;9735:77;9732:103;;9815:18;;:::i;:::-;-1:-1:-1;9862:1:1;9851:13;;9675:195::o;9875:132::-;9951:13;;9973:28;9951:13;9973:28;:::i;:::-;9875:132;;;:::o;10012:501::-;10091:6;10099;10107;10160:2;10148:9;10139:7;10135:23;10131:32;10128:52;;;10176:1;10173;10166:12;10128:52;10208:9;10202:16;10227:28;10249:5;10227:28;:::i;:::-;10324:2;10309:18;;10303:25;10274:5;;-1:-1:-1;10337:30:1;10303:25;10337:30;:::i;:::-;10438:2;10423:18;;10417:25;10386:7;;-1:-1:-1;10451:30:1;10417:25;10451:30;:::i;:::-;10500:7;10490:17;;;10012:501;;;;;:::o;10518:570::-;10624:6;10632;10640;10648;10656;10709:3;10697:9;10688:7;10684:23;10680:33;10677:53;;;10726:1;10723;10716:12;10677:53;10758:9;10752:16;10777:31;10802:5;10777:31;:::i;:::-;10872:2;10857:18;;10851:25;10921:2;10906:18;;10900:25;10827:5;;-1:-1:-1;10851:25:1;-1:-1:-1;10934:33:1;10900:25;10934:33;:::i;:::-;11033:2;11018:18;;11012:25;11077:3;11062:19;;;11056:26;10518:570;;;;-1:-1:-1;10986:7:1;11012:25;11056:26;10518:570;-1:-1:-1;;;10518:570:1:o;11395:184::-;11447:77;11444:1;11437:88;11544:4;11541:1;11534:15;11568:4;11565:1;11558:15;11584:252;11656:2;11650:9;11698:3;11686:16;;11732:18;11717:34;;11753:22;;;11714:62;11711:88;;;11779:18;;:::i;:::-;11815:2;11808:22;11584:252;:::o;11841:253::-;11913:2;11907:9;11955:4;11943:17;;11990:18;11975:34;;12011:22;;;11972:62;11969:88;;;12037:18;;:::i;12099:334::-;12170:2;12164:9;12226:2;12216:13;;12231:66;12212:86;12200:99;;12329:18;12314:34;;12350:22;;;12311:62;12308:88;;;12376:18;;:::i;:::-;12412:2;12405:22;12099:334;;-1:-1:-1;12099:334:1:o;12438:1246::-;12539:6;12592:3;12580:9;12571:7;12567:23;12563:33;12560:53;;;12609:1;12606;12599:12;12560:53;12635:22;;:::i;:::-;12680:37;12707:9;12680:37;:::i;:::-;12673:5;12666:52;12771:2;12760:9;12756:18;12750:25;12745:2;12738:5;12734:14;12727:49;12829:2;12818:9;12814:18;12808:25;12803:2;12796:5;12792:14;12785:49;12887:2;12876:9;12872:18;12866:25;12861:2;12854:5;12850:14;12843:49;12946:3;12935:9;12931:19;12925:26;12919:3;12912:5;12908:15;12901:51;13006:3;12995:9;12991:19;12985:26;12979:3;12972:5;12968:15;12961:51;13066:3;13055:9;13051:19;13045:26;13039:3;13032:5;13028:15;13021:51;13126:3;13115:9;13111:19;13105:26;13099:3;13092:5;13088:15;13081:51;13151:3;13207:2;13196:9;13192:18;13186:25;13181:2;13174:5;13170:14;13163:49;;13231:3;13287:2;13276:9;13272:18;13266:25;13261:2;13254:5;13250:14;13243:49;;13311:3;13367:2;13356:9;13352:18;13346:25;13341:2;13334:5;13330:14;13323:49;;13391:3;13447:2;13436:9;13432:18;13426:25;13421:2;13414:5;13410:14;13403:49;;13471:3;13506:46;13548:2;13537:9;13533:18;13506:46;:::i;:::-;13490:14;;;13483:70;13572:3;13607:46;13634:18;;;13607:46;:::i;:::-;13591:14;;;13584:70;13595:5;12438:1246;-1:-1:-1;;;12438:1246:1:o;13689:767::-;13813:6;13821;13829;13837;13845;13853;13861;13914:3;13902:9;13893:7;13889:23;13885:33;13882:53;;;13931:1;13928;13921:12;13882:53;13963:9;13957:16;13982:31;14007:5;13982:31;:::i;:::-;14077:2;14062:18;;14056:25;14126:2;14111:18;;14105:25;14032:5;;-1:-1:-1;14056:25:1;-1:-1:-1;14139:33:1;14105:25;14139:33;:::i;:::-;14238:2;14223:18;;14217:25;14287:3;14272:19;;14266:26;14191:7;;-1:-1:-1;14217:25:1;-1:-1:-1;14301:33:1;14266:26;14301:33;:::i;:::-;14353:7;14343:17;;;14400:3;14389:9;14385:19;14379:26;14369:36;;14445:3;14434:9;14430:19;14424:26;14414:36;;13689:767;;;;;;;;;;:::o;15362:373::-;15435:6;15443;15496:2;15484:9;15475:7;15471:23;15467:32;15464:52;;;15512:1;15509;15502:12;15464:52;15544:9;15538:16;15563:28;15585:5;15563:28;:::i;:::-;15660:2;15645:18;;15639:25;15610:5;;-1:-1:-1;15673:30:1;15639:25;15673:30;:::i;:::-;15722:7;15712:17;;;15362:373;;;;;:::o;15740:184::-;15810:6;15863:2;15851:9;15842:7;15838:23;15834:32;15831:52;;;15879:1;15876;15869:12;15831:52;-1:-1:-1;15902:16:1;;15740:184;-1:-1:-1;15740:184:1:o;15929:125::-;15994:9;;;16015:10;;;16012:36;;;16028:18;;:::i;:::-;15929:125;;;;:::o;16862:1384::-;16986:6;17017:2;17060;17048:9;17039:7;17035:23;17031:32;17028:52;;;17076:1;17073;17066:12;17028:52;17109:9;17103:16;17138:18;17179:2;17171:6;17168:14;17165:34;;;17195:1;17192;17185:12;17165:34;17233:6;17222:9;17218:22;17208:32;;17278:7;17271:4;17267:2;17263:13;17259:27;17249:55;;17300:1;17297;17290:12;17249:55;17329:2;17323:9;17351:2;17347;17344:10;17341:36;;;17357:18;;:::i;:::-;17397:36;17429:2;17424;17421:1;17417:10;17413:19;17397:36;:::i;:::-;17467:15;;;17498:12;;;;-1:-1:-1;17549:1:1;17545:10;;;;17537:19;;17533:28;;;17573:19;;;17570:39;;;17605:1;17602;17595:12;17570:39;17629:11;;;;17649:567;17665:6;17660:3;17657:15;17649:567;;;17747:4;17741:3;17732:7;17728:17;17724:28;17721:118;;;17793:1;17822:2;17818;17811:14;17721:118;17865:22;;:::i;:::-;17914:10;;17900:25;;17967:12;;;17961:19;17945:14;;;17938:43;18004:2;18048:12;;;18042:19;18026:14;;;18019:43;18085:2;18129:12;;;18123:19;18107:14;;;18100:43;18156:18;;17691:4;17682:14;;;;18194:12;;;;17649:567;;;18235:5;16862:1384;-1:-1:-1;;;;;;;16862:1384:1:o

Swarm Source

ipfs://53e6ca1b68959d4f47124e9840caee52114a67155093c2531ae0eb8c62e27e96
Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
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.