ETH Price: $2,953.84 (+0.57%)

Contract

0x6feCd2f4798D37fBe64BFDe1eBeCaE3B3fB1Ab9B

Overview

ETH Balance

Linea Mainnet LogoLinea Mainnet LogoLinea Mainnet Logo0 ETH

ETH Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Block
From
To

There are no matching entries

> 10 Internal Transactions found.

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
282709472026-01-24 20:19:2012 mins ago1769285960
0x6feCd2f4...B3fB1Ab9B
0 ETH
282709472026-01-24 20:19:2012 mins ago1769285960
0x6feCd2f4...B3fB1Ab9B
0 ETH
282709472026-01-24 20:19:2012 mins ago1769285960
0x6feCd2f4...B3fB1Ab9B
0 ETH
282709472026-01-24 20:19:2012 mins ago1769285960
0x6feCd2f4...B3fB1Ab9B
0 ETH
282709472026-01-24 20:19:2012 mins ago1769285960
0x6feCd2f4...B3fB1Ab9B
0 ETH
282707152026-01-24 20:10:3420 mins ago1769285434
0x6feCd2f4...B3fB1Ab9B
0 ETH
282707152026-01-24 20:10:3420 mins ago1769285434
0x6feCd2f4...B3fB1Ab9B
0 ETH
282707152026-01-24 20:10:3420 mins ago1769285434
0x6feCd2f4...B3fB1Ab9B
0 ETH
282707152026-01-24 20:10:3420 mins ago1769285434
0x6feCd2f4...B3fB1Ab9B
0 ETH
282707152026-01-24 20:10:3420 mins ago1769285434
0x6feCd2f4...B3fB1Ab9B
0 ETH
282706832026-01-24 20:09:2422 mins ago1769285364
0x6feCd2f4...B3fB1Ab9B
0 ETH
282706832026-01-24 20:09:2422 mins ago1769285364
0x6feCd2f4...B3fB1Ab9B
0 ETH
282706832026-01-24 20:09:2422 mins ago1769285364
0x6feCd2f4...B3fB1Ab9B
0 ETH
282706832026-01-24 20:09:2422 mins ago1769285364
0x6feCd2f4...B3fB1Ab9B
0 ETH
282706832026-01-24 20:09:2422 mins ago1769285364
0x6feCd2f4...B3fB1Ab9B
0 ETH
282706562026-01-24 20:08:2622 mins ago1769285306
0x6feCd2f4...B3fB1Ab9B
0 ETH
282706562026-01-24 20:08:2622 mins ago1769285306
0x6feCd2f4...B3fB1Ab9B
0 ETH
282706562026-01-24 20:08:2622 mins ago1769285306
0x6feCd2f4...B3fB1Ab9B
0 ETH
282706562026-01-24 20:08:2622 mins ago1769285306
0x6feCd2f4...B3fB1Ab9B
0 ETH
282706562026-01-24 20:08:2622 mins ago1769285306
0x6feCd2f4...B3fB1Ab9B
0 ETH
282706142026-01-24 20:07:0024 mins ago1769285220
0x6feCd2f4...B3fB1Ab9B
0 ETH
282706142026-01-24 20:07:0024 mins ago1769285220
0x6feCd2f4...B3fB1Ab9B
0 ETH
282706142026-01-24 20:07:0024 mins ago1769285220
0x6feCd2f4...B3fB1Ab9B
0 ETH
282706142026-01-24 20:07:0024 mins ago1769285220
0x6feCd2f4...B3fB1Ab9B
0 ETH
282706142026-01-24 20:07:0024 mins ago1769285220
0x6feCd2f4...B3fB1Ab9B
0 ETH
View All Internal Transactions
Cross-Chain Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Api3AggregatorDeviationAdaptor

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
// SPDX-License-Identifier: MIT
pragma solidity 0.8.17;

import "@api3/contracts/v0.8/interfaces/IProxy.sol";
import {AggregatorV3Interface} from "@chainlink/contracts/src/v0.8/shared/interfaces/AggregatorV3Interface.sol";

contract Api3AggregatorDeviationAdaptor {  

   // Updating the proxy address is a security-critical action which is why
   // we have made it immutable.
   address public immutable api3Proxy;
   uint256 public immutable upperBoundRatio;
   uint256 public immutable lowerBoundRatio;
   AggregatorV3Interface immutable chainlinkDatafeed;

   constructor(address _proxy, uint256 _upperBoundRatio, uint256 _lowerBoundRatio, address _chainlinkDatafeed) {
       api3Proxy = _proxy;
       upperBoundRatio = _upperBoundRatio;
       lowerBoundRatio = _lowerBoundRatio;
       chainlinkDatafeed = AggregatorV3Interface(_chainlinkDatafeed);
   }

    function convertDecimals(int256 answer, uint8 input, uint8 output) internal pure returns (int256) {
        if (input == output) return answer;
        if (input < output) return answer * int256(10 ** (output - input));
        return answer / int256(10 ** (input - output));
    }

    /**
     * @notice Test reported asset price against anchor price
     * @param reportedPrice The price to be tested
     * @custom:error Missing error thrown if asset config is not set
     * @custom:error Price error thrown if anchor price is not valid
     */
    function validatePriceWithAnchorPrice(
        uint256 reportedPrice,
        uint256 anchorPrice
    ) public view returns (bool) {
        if (upperBoundRatio == 0) revert("validation config not exist");
        if (anchorPrice == 0) revert("anchor price is not valid");
        return _isWithinAnchor(reportedPrice, anchorPrice);
    }

    /**
     * @notice Test whether the reported price is within the valid bounds
     * @param reportedPrice The price to be tested
     * @param anchorPrice The reported price must be within the the valid bounds of this price
     */
    function _isWithinAnchor(uint256 reportedPrice, uint256 anchorPrice) private view returns (bool) {
        if (reportedPrice != 0) {
            // we need to multiply anchorPrice by 1e18 to make the ratio 18 decimals
            uint256 anchorRatio = (anchorPrice * 1e18) / reportedPrice;
            return anchorRatio <= upperBoundRatio && anchorRatio >= lowerBoundRatio;
        }
        return false;
    }

    function getLatestChainlinkData() public view returns (int256, uint256) {
        (, int256 answer,, uint256 updatedAt,) = chainlinkDatafeed.latestRoundData();
        return (convertDecimals(answer, chainlinkDatafeed.decimals(), 18) ,updatedAt);
    }

   function latestAnswer() external view returns (int256 value) {
       (value, ) = readDataFeed();
   }

   function latestTimestamp() external view returns (uint256 timestamp) {
       ( , timestamp) = readDataFeed();
   }
   
   function decimals() external view returns (uint8) {
       return 18;
   }

   function readDataFeed()
       internal
       view
       returns (int256,uint256)
   {
       (int256 api3value,uint256 api3timestamp) = IProxy(api3Proxy).read();
       (int256 latestChainlinkValue, uint256 latestChainlinkTimestamp) = getLatestChainlinkData();

       if(validatePriceWithAnchorPrice(uint256(api3value), uint256(latestChainlinkValue)))
            return (api3value, api3timestamp);
       else 
            return (latestChainlinkValue,latestChainlinkTimestamp);

       // If you have any assumptions about `value` and `timestamp`, make sure
       // to validate them right after reading from the proxy. For example,
       // if the value you are reading is the spot price of an asset, you may
       // want to reject non-positive values...
       // require(value > 0, "Value not positive");
       // ...and if the data feed is being updated with a one day-heartbeat
       // interval, you may want to check for that.
       // require(
       //     timestamp + 1 days > block.timestamp,
       //     "Timestamp older than one day"
       // );
       // Try to be strict about validations, but be wary of:
       // (1) Overly strict validation that may invalidate valid values
       // (2) Mutable validation parameters that are controlled by a trusted
       // party (eliminates the trust-minimization guarantees of first-party
       // oracles)
       // (3) Validation parameters that need to be tuned according to
       // external conditions (if these are forgotten to be handled, it will
       // result in (1), look up the Venus Protocol exploit related to LUNA)

       // After validation, you can implement your contract logic here.
   }       

   function getTokenType() external pure returns (uint256) {
       return 1;
   }    
}

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

// solhint-disable-next-line interface-starts-with-i
interface AggregatorV3Interface {
  function decimals() external view returns (uint8);

  function description() external view returns (string memory);

  function version() external view returns (uint256);

  function getRoundData(
    uint80 _roundId
  ) external view returns (uint80 roundId, int256 answer, uint256 startedAt, uint256 updatedAt, uint80 answeredInRound);

  function latestRoundData()
    external
    view
    returns (uint80 roundId, int256 answer, uint256 startedAt, uint256 updatedAt, uint80 answeredInRound);
}

File 3 of 4 : IProxy.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import "@api3/airnode-protocol-v1/contracts/api3-server-v1/proxies/interfaces/IProxy.sol";

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

/// @dev See DapiProxy.sol for comments about usage
interface IProxy {
    function read() external view returns (int224 value, uint32 timestamp);

    function api3ServerV1() external view returns (address);
}

Settings
{
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "abi"
      ]
    }
  },
  "remappings": []
}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"address","name":"_proxy","type":"address"},{"internalType":"uint256","name":"_upperBoundRatio","type":"uint256"},{"internalType":"uint256","name":"_lowerBoundRatio","type":"uint256"},{"internalType":"address","name":"_chainlinkDatafeed","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"api3Proxy","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getLatestChainlinkData","outputs":[{"internalType":"int256","name":"","type":"int256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTokenType","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"latestAnswer","outputs":[{"internalType":"int256","name":"value","type":"int256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"latestTimestamp","outputs":[{"internalType":"uint256","name":"timestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lowerBoundRatio","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"upperBoundRatio","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"reportedPrice","type":"uint256"},{"internalType":"uint256","name":"anchorPrice","type":"uint256"}],"name":"validatePriceWithAnchorPrice","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"}]

61010060405234801561001157600080fd5b5060405161097e38038061097e8339810160408190526100309161006c565b6001600160a01b0393841660805260a09290925260c0521660e0526100b2565b80516001600160a01b038116811461006757600080fd5b919050565b6000806000806080858703121561008257600080fd5b61008b85610050565b935060208501519250604085015191506100a760608601610050565b905092959194509250565b60805160a05160c05160e05161087261010c600039600081816101a6015261023301526000818160bf015261054a01526000818161014a015281816102e7015261051f01526000818160f4015261043401526108726000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c806350d25bcd1161006657806350d25bcd1461013d5780635cfafca9146101455780638205bf6a1461016c578063c02f5a5714610174578063fcab18191461019757600080fd5b806304e365f41461009857806308c03b4c146100ba5780632f400b29146100ef578063313ce5671461012e575b600080fd5b6100a061019e565b604080519283526020830191909152015b60405180910390f35b6100e17f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b1565b6101167f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100b1565b604051601281526020016100b1565b6100e16102c3565b6100e17f000000000000000000000000000000000000000000000000000000000000000081565b6100e16102d3565b61018761018236600461057e565b6102e3565b60405190151581526020016100b1565b60016100e1565b6000806000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa158015610202573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061022691906105bf565b509350509250506102ba827f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa15801561028f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102b3919061060f565b60126103bb565b94909350915050565b60006102cd61042c565b50919050565b60006102dd61042c565b92915050565b60007f000000000000000000000000000000000000000000000000000000000000000060000361035a5760405162461bcd60e51b815260206004820152601b60248201527f76616c69646174696f6e20636f6e666967206e6f74206578697374000000000060448201526064015b60405180910390fd5b816000036103aa5760405162461bcd60e51b815260206004820152601960248201527f616e63686f72207072696365206973206e6f742076616c6964000000000000006044820152606401610351565b6103b483836104f4565b9392505050565b60008160ff168360ff16036103d15750826103b4565b8160ff168360ff161015610405576103e98383610648565b6103f490600a610745565b6103fe9085610754565b90506103b4565b61040f8284610648565b61041a90600a610745565b610424908561079a565b949350505050565b6000806000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166357de26a46040518163ffffffff1660e01b81526004016040805180830381865afa15801561048f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104b391906107c8565b63ffffffff169150601b0b91506000806104cb61019e565b915091506104d984836102e3565b156104e957509194909350915050565b909590945092505050565b600082156105755760008361051184670de0b6b3a7640000610811565b61051b9190610828565b90507f0000000000000000000000000000000000000000000000000000000000000000811115801561056d57507f00000000000000000000000000000000000000000000000000000000000000008110155b9150506102dd565b50600092915050565b6000806040838503121561059157600080fd5b50508035926020909101359150565b805169ffffffffffffffffffff811681146105ba57600080fd5b919050565b600080600080600060a086880312156105d757600080fd5b6105e0866105a0565b9450602086015193506040860151925060608601519150610603608087016105a0565b90509295509295909350565b60006020828403121561062157600080fd5b815160ff811681146103b457600080fd5b634e487b7160e01b600052601160045260246000fd5b60ff82811682821603908111156102dd576102dd610632565b600181815b8085111561069c57816000190482111561068257610682610632565b8085161561068f57918102915b93841c9390800290610666565b509250929050565b6000826106b3575060016102dd565b816106c0575060006102dd565b81600181146106d657600281146106e0576106fc565b60019150506102dd565b60ff8411156106f1576106f1610632565b50506001821b6102dd565b5060208310610133831016604e8410600b841016171561071f575081810a6102dd565b6107298383610661565b806000190482111561073d5761073d610632565b029392505050565b60006103b460ff8416836106a4565b80820260008212600160ff1b8414161561077057610770610632565b81810583148215176102dd576102dd610632565b634e487b7160e01b600052601260045260246000fd5b6000826107a9576107a9610784565b600160ff1b8214600019841416156107c3576107c3610632565b500590565b600080604083850312156107db57600080fd5b825180601b0b81146107ec57600080fd5b602084015190925063ffffffff8116811461080657600080fd5b809150509250929050565b80820281158282048414176102dd576102dd610632565b60008261083757610837610784565b50049056fea264697066735822122078c952264418db46f05dffb215d5cd69debd50edf0926aa9eb034eaae946062464736f6c63430008110033000000000000000000000000c30e51c9edd92b9eef45f281c712faaaf59912ba0000000000000000000000000000000000000000000000000df27a2cdf4480000000000000000000000000000000000000000000000000000dcef33a6f838000000000000000000000000000eedf0b095b5dfe75f3881cb26c19da209a27463a

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100935760003560e01c806350d25bcd1161006657806350d25bcd1461013d5780635cfafca9146101455780638205bf6a1461016c578063c02f5a5714610174578063fcab18191461019757600080fd5b806304e365f41461009857806308c03b4c146100ba5780632f400b29146100ef578063313ce5671461012e575b600080fd5b6100a061019e565b604080519283526020830191909152015b60405180910390f35b6100e17f0000000000000000000000000000000000000000000000000dcef33a6f83800081565b6040519081526020016100b1565b6101167f000000000000000000000000c30e51c9edd92b9eef45f281c712faaaf59912ba81565b6040516001600160a01b0390911681526020016100b1565b604051601281526020016100b1565b6100e16102c3565b6100e17f0000000000000000000000000000000000000000000000000df27a2cdf44800081565b6100e16102d3565b61018761018236600461057e565b6102e3565b60405190151581526020016100b1565b60016100e1565b6000806000807f000000000000000000000000eedf0b095b5dfe75f3881cb26c19da209a27463a6001600160a01b031663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa158015610202573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061022691906105bf565b509350509250506102ba827f000000000000000000000000eedf0b095b5dfe75f3881cb26c19da209a27463a6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa15801561028f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102b3919061060f565b60126103bb565b94909350915050565b60006102cd61042c565b50919050565b60006102dd61042c565b92915050565b60007f0000000000000000000000000000000000000000000000000df27a2cdf44800060000361035a5760405162461bcd60e51b815260206004820152601b60248201527f76616c69646174696f6e20636f6e666967206e6f74206578697374000000000060448201526064015b60405180910390fd5b816000036103aa5760405162461bcd60e51b815260206004820152601960248201527f616e63686f72207072696365206973206e6f742076616c6964000000000000006044820152606401610351565b6103b483836104f4565b9392505050565b60008160ff168360ff16036103d15750826103b4565b8160ff168360ff161015610405576103e98383610648565b6103f490600a610745565b6103fe9085610754565b90506103b4565b61040f8284610648565b61041a90600a610745565b610424908561079a565b949350505050565b6000806000807f000000000000000000000000c30e51c9edd92b9eef45f281c712faaaf59912ba6001600160a01b03166357de26a46040518163ffffffff1660e01b81526004016040805180830381865afa15801561048f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104b391906107c8565b63ffffffff169150601b0b91506000806104cb61019e565b915091506104d984836102e3565b156104e957509194909350915050565b909590945092505050565b600082156105755760008361051184670de0b6b3a7640000610811565b61051b9190610828565b90507f0000000000000000000000000000000000000000000000000df27a2cdf448000811115801561056d57507f0000000000000000000000000000000000000000000000000dcef33a6f8380008110155b9150506102dd565b50600092915050565b6000806040838503121561059157600080fd5b50508035926020909101359150565b805169ffffffffffffffffffff811681146105ba57600080fd5b919050565b600080600080600060a086880312156105d757600080fd5b6105e0866105a0565b9450602086015193506040860151925060608601519150610603608087016105a0565b90509295509295909350565b60006020828403121561062157600080fd5b815160ff811681146103b457600080fd5b634e487b7160e01b600052601160045260246000fd5b60ff82811682821603908111156102dd576102dd610632565b600181815b8085111561069c57816000190482111561068257610682610632565b8085161561068f57918102915b93841c9390800290610666565b509250929050565b6000826106b3575060016102dd565b816106c0575060006102dd565b81600181146106d657600281146106e0576106fc565b60019150506102dd565b60ff8411156106f1576106f1610632565b50506001821b6102dd565b5060208310610133831016604e8410600b841016171561071f575081810a6102dd565b6107298383610661565b806000190482111561073d5761073d610632565b029392505050565b60006103b460ff8416836106a4565b80820260008212600160ff1b8414161561077057610770610632565b81810583148215176102dd576102dd610632565b634e487b7160e01b600052601260045260246000fd5b6000826107a9576107a9610784565b600160ff1b8214600019841416156107c3576107c3610632565b500590565b600080604083850312156107db57600080fd5b825180601b0b81146107ec57600080fd5b602084015190925063ffffffff8116811461080657600080fd5b809150509250929050565b80820281158282048414176102dd576102dd610632565b60008261083757610837610784565b50049056fea264697066735822122078c952264418db46f05dffb215d5cd69debd50edf0926aa9eb034eaae946062464736f6c63430008110033

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

000000000000000000000000c30e51c9edd92b9eef45f281c712faaaf59912ba0000000000000000000000000000000000000000000000000df27a2cdf4480000000000000000000000000000000000000000000000000000dcef33a6f838000000000000000000000000000eedf0b095b5dfe75f3881cb26c19da209a27463a

-----Decoded View---------------
Arg [0] : _proxy (address): 0xc30e51C9EDD92B9eeF45f281c712faaAf59912BA
Arg [1] : _upperBoundRatio (uint256): 1005000000000000000
Arg [2] : _lowerBoundRatio (uint256): 995000000000000000
Arg [3] : _chainlinkDatafeed (address): 0xEEDF0B095B5dfe75F3881Cb26c19DA209A27463a

-----Encoded View---------------
4 Constructor Arguments found :
Arg [0] : 000000000000000000000000c30e51c9edd92b9eef45f281c712faaaf59912ba
Arg [1] : 0000000000000000000000000000000000000000000000000df27a2cdf448000
Arg [2] : 0000000000000000000000000000000000000000000000000dcef33a6f838000
Arg [3] : 000000000000000000000000eedf0b095b5dfe75f3881cb26c19da209a27463a


Deployed Bytecode Sourcemap

224:4543:3:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2420:252;;;:::i;:::-;;;;186:25:4;;;242:2;227:18;;220:34;;;;159:18;2420:252:3;;;;;;;;465:40;;;;;;;;411:25:4;;;399:2;384:18;465:40:3;265:177:4;381:34:3;;;;;;;;-1:-1:-1;;;;;611:32:4;;;593:51;;581:2;566:18;381:34:3;447:203:4;2907:74:3;;;2973:2;797:36:4;;785:2;770:18;2907:74:3;655:184:4;2677:102:3;;;:::i;420:40::-;;;;;2784:115;;;:::i;1422:338::-;;;;;;:::i;:::-;;:::i;:::-;;;1442:14:4;;1435:22;1417:41;;1405:2;1390:18;1422:338:3;1277:187:4;4682:79:3;4754:1;4682:79;;2420:252;2475:6;2483:7;2505:13;2521:17;2543;-1:-1:-1;;;;;2543:33:3;;:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2502:76;;;;;;;2596:57;2612:6;2620:17;-1:-1:-1;;;;;2620:26:3;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2650:2;2596:15;:57::i;:::-;2588:77;2655:9;;-1:-1:-1;2420:252:3;-1:-1:-1;;2420:252:3:o;2677:102::-;2724:12;2759:14;:12;:14::i;:::-;-1:-1:-1;2747:26:3;2677:102;-1:-1:-1;2677:102:3:o;2784:115::-;2834:17;2879:14;:12;:14::i;:::-;2862:31;2784:115;-1:-1:-1;;2784:115:3:o;1422:338::-;1547:4;1567:15;1586:1;1567:20;1563:63;;1589:37;;-1:-1:-1;;;1589:37:3;;2611:2:4;1589:37:3;;;2593:21:4;2650:2;2630:18;;;2623:30;2689:29;2669:18;;;2662:57;2736:18;;1589:37:3;;;;;;;;1563:63;1640:11;1655:1;1640:16;1636:57;;1658:35;;-1:-1:-1;;;1658:35:3;;2967:2:4;1658:35:3;;;2949:21:4;3006:2;2986:18;;;2979:30;3045:27;3025:18;;;3018:55;3090:18;;1658:35:3;2765:349:4;1636:57:3;1710:43;1726:13;1741:11;1710:15;:43::i;:::-;1703:50;1422:338;-1:-1:-1;;;1422:338:3:o;868:281::-;958:6;989;980:15;;:5;:15;;;976:34;;-1:-1:-1;1004:6:3;997:13;;976:34;1032:6;1024:14;;:5;:14;;;1020:66;;;1070:14;1079:5;1070:6;:14;:::i;:::-;1063:22;;:2;:22;:::i;:::-;1047:39;;:6;:39;:::i;:::-;1040:46;;;;1020:66;1126:14;1134:6;1126:5;:14;:::i;:::-;1119:22;;:2;:22;:::i;:::-;1103:39;;:6;:39;:::i;:::-;1096:46;868:281;-1:-1:-1;;;;868:281:3:o;2986:1684::-;3054:6;3061:7;3083:16;3100:21;3132:9;-1:-1:-1;;;;;3125:22:3;;:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3082:67;;;;;;;;3159:27;3188:32;3224:24;:22;:24::i;:::-;3158:90;;;;3261:79;3298:9;3318:20;3261:28;:79::i;:::-;3258:210;;;-1:-1:-1;3362:9:3;;3373:13;;-1:-1:-1;2986:1684:3;-1:-1:-1;;2986:1684:3:o;3258:210::-;3422:20;;3443:24;;-1:-1:-1;2986:1684:3;-1:-1:-1;;;2986:1684:3:o;2002:412::-;2093:4;2113:18;;2109:277;;2232:19;2277:13;2255:18;:11;2269:4;2255:18;:::i;:::-;2254:36;;;;:::i;:::-;2232:58;;2326:15;2311:11;:30;;:64;;;;;2360:15;2345:11;:30;;2311:64;2304:71;;;;;2109:277;-1:-1:-1;2402:5:3;2002:412;;;;:::o;1024:248:4:-;1092:6;1100;1153:2;1141:9;1132:7;1128:23;1124:32;1121:52;;;1169:1;1166;1159:12;1121:52;-1:-1:-1;;1192:23:4;;;1262:2;1247:18;;;1234:32;;-1:-1:-1;1024:248:4:o;1469:179::-;1547:13;;1600:22;1589:34;;1579:45;;1569:73;;1638:1;1635;1628:12;1569:73;1469:179;;;:::o;1653:473::-;1756:6;1764;1772;1780;1788;1841:3;1829:9;1820:7;1816:23;1812:33;1809:53;;;1858:1;1855;1848:12;1809:53;1881:39;1910:9;1881:39;:::i;:::-;1871:49;;1960:2;1949:9;1945:18;1939:25;1929:35;;2004:2;1993:9;1989:18;1983:25;1973:35;;2048:2;2037:9;2033:18;2027:25;2017:35;;2071:49;2115:3;2104:9;2100:19;2071:49;:::i;:::-;2061:59;;1653:473;;;;;;;;:::o;2131:273::-;2199:6;2252:2;2240:9;2231:7;2227:23;2223:32;2220:52;;;2268:1;2265;2258:12;2220:52;2300:9;2294:16;2350:4;2343:5;2339:16;2332:5;2329:27;2319:55;;2370:1;2367;2360:12;3119:127;3180:10;3175:3;3171:20;3168:1;3161:31;3211:4;3208:1;3201:15;3235:4;3232:1;3225:15;3251:151;3341:4;3334:12;;;3320;;;3316:31;;3359:14;;3356:40;;;3376:18;;:::i;3407:422::-;3496:1;3539:5;3496:1;3553:270;3574:7;3564:8;3561:21;3553:270;;;3633:4;3629:1;3625:6;3621:17;3615:4;3612:27;3609:53;;;3642:18;;:::i;:::-;3692:7;3682:8;3678:22;3675:55;;;3712:16;;;;3675:55;3791:22;;;;3751:15;;;;3553:270;;;3557:3;3407:422;;;;;:::o;3834:806::-;3883:5;3913:8;3903:80;;-1:-1:-1;3954:1:4;3968:5;;3903:80;4002:4;3992:76;;-1:-1:-1;4039:1:4;4053:5;;3992:76;4084:4;4102:1;4097:59;;;;4170:1;4165:130;;;;4077:218;;4097:59;4127:1;4118:10;;4141:5;;;4165:130;4202:3;4192:8;4189:17;4186:43;;;4209:18;;:::i;:::-;-1:-1:-1;;4265:1:4;4251:16;;4280:5;;4077:218;;4379:2;4369:8;4366:16;4360:3;4354:4;4351:13;4347:36;4341:2;4331:8;4328:16;4323:2;4317:4;4314:12;4310:35;4307:77;4304:159;;;-1:-1:-1;4416:19:4;;;4448:5;;4304:159;4495:34;4520:8;4514:4;4495:34;:::i;:::-;4565:6;4561:1;4557:6;4553:19;4544:7;4541:32;4538:58;;;4576:18;;:::i;:::-;4614:20;;3834:806;-1:-1:-1;;;3834:806:4:o;4645:140::-;4703:5;4732:47;4773:4;4763:8;4759:19;4753:4;4732:47;:::i;4790:237::-;4862:9;;;4829:7;4887:9;;-1:-1:-1;;;4898:18:4;;4883:34;4880:60;;;4920:18;;:::i;:::-;4993:1;4984:7;4979:16;4976:1;4973:23;4969:1;4962:9;4959:38;4949:72;;5001:18;;:::i;5032:127::-;5093:10;5088:3;5084:20;5081:1;5074:31;5124:4;5121:1;5114:15;5148:4;5145:1;5138:15;5164:193;5203:1;5229;5219:35;;5234:18;;:::i;:::-;-1:-1:-1;;;5270:18:4;;-1:-1:-1;;5290:13:4;;5266:38;5263:64;;;5307:18;;:::i;:::-;-1:-1:-1;5341:10:4;;5164:193::o;5362:444::-;5439:6;5447;5500:2;5488:9;5479:7;5475:23;5471:32;5468:52;;;5516:1;5513;5506:12;5468:52;5548:9;5542:16;5602:5;5598:2;5587:21;5580:5;5577:32;5567:60;;5623:1;5620;5613:12;5567:60;5696:2;5681:18;;5675:25;5646:5;;-1:-1:-1;5744:10:4;5731:24;;5719:37;;5709:65;;5770:1;5767;5760:12;5709:65;5793:7;5783:17;;;5362:444;;;;;:::o;5811:168::-;5884:9;;;5915;;5932:15;;;5926:22;;5912:37;5902:71;;5953:18;;:::i;5984:120::-;6024:1;6050;6040:35;;6055:18;;:::i;:::-;-1:-1:-1;6089:9:4;;5984:120::o

Swarm Source

ipfs://78c952264418db46f05dffb215d5cd69debd50edf0926aa9eb034eaae9460624

Block Transaction Gas Used Reward
view all blocks sequenced

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

Validator Index Block Amount
View All Withdrawals

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

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