Moonbase Alpha Testnet

Contract

0xE5b8a37452501B381944199947f7Cc939BC5DA71

Overview

DEV Balance

Moonbase Alpha LogoMoonbase Alpha LogoMoonbase Alpha Logo0 DEV

Multichain Info

N/A
Transaction Hash
Method
Block
From
To
Value
Set Abs Max Ltv ...28634372022-09-19 5:35:06642 days ago1663565706IN
0xE5b8a374...39BC5DA71
0 DEV0.0032285267
Set Maintenance ...28634352022-09-19 5:34:42642 days ago1663565682IN
0xE5b8a374...39BC5DA71
0 DEV0.0032322167
Set Abs Max Ltv ...28634232022-09-19 5:32:00642 days ago1663565520IN
0xE5b8a374...39BC5DA71
0 DEV0.0032285267
Set Maintenance ...28634212022-09-19 5:31:36642 days ago1663565496IN
0xE5b8a374...39BC5DA71
0 DEV0.0032322167
Set Abs Max Ltv ...28634122022-09-19 5:29:24642 days ago1663565364IN
0xE5b8a374...39BC5DA71
0 DEV0.0032285267
Set Maintenance ...28634102022-09-19 5:29:00642 days ago1663565340IN
0xE5b8a374...39BC5DA71
0 DEV0.0032322167
Set Abs Max Ltv ...28633992022-09-19 5:26:18642 days ago1663565178IN
0xE5b8a374...39BC5DA71
0 DEV0.0032285267
Set Maintenance ...28633982022-09-19 5:25:54642 days ago1663565154IN
0xE5b8a374...39BC5DA71
0 DEV0.0032322167
Set Abs Max Ltv ...28633892022-09-19 5:23:42642 days ago1663565022IN
0xE5b8a374...39BC5DA71
0 DEV0.0032277267
Set Maintenance ...28633872022-09-19 5:23:12642 days ago1663564992IN
0xE5b8a374...39BC5DA71
0 DEV0.0032322167
Set Abs Max Ltv ...28633762022-09-19 5:20:42642 days ago1663564842IN
0xE5b8a374...39BC5DA71
0 DEV0.0032277267
Set Maintenance ...28633742022-09-19 5:20:18642 days ago1663564818IN
0xE5b8a374...39BC5DA71
0 DEV0.0032322167
Set Abs Max Ltv ...28633622022-09-19 5:17:42642 days ago1663564662IN
0xE5b8a374...39BC5DA71
0 DEV0.0032285267
Set Maintenance ...28633602022-09-19 5:17:18642 days ago1663564638IN
0xE5b8a374...39BC5DA71
0 DEV0.0032314167
Set Abs Max Ltv ...28633422022-09-19 5:13:18642 days ago1663564398IN
0xE5b8a374...39BC5DA71
0 DEV0.0032277267
Set Maintenance ...28633402022-09-19 5:12:48642 days ago1663564368IN
0xE5b8a374...39BC5DA71
0 DEV0.0032322167
Set Abs Max Ltv ...28633292022-09-19 5:10:18642 days ago1663564218IN
0xE5b8a374...39BC5DA71
0 DEV0.0032285267
Set Maintenance ...28633272022-09-19 5:09:48642 days ago1663564188IN
0xE5b8a374...39BC5DA71
0 DEV0.0032322167
Set Abs Max Ltv ...28633162022-09-19 5:07:12642 days ago1663564032IN
0xE5b8a374...39BC5DA71
0 DEV0.0032285267
Set Maintenance ...28633142022-09-19 5:06:48642 days ago1663564008IN
0xE5b8a374...39BC5DA71
0 DEV0.0032322167
Set Abs Max Ltv ...28633062022-09-19 5:04:36642 days ago1663563876IN
0xE5b8a374...39BC5DA71
0 DEV0.0032285267
Set Maintenance ...28633052022-09-19 5:04:18642 days ago1663563858IN
0xE5b8a374...39BC5DA71
0 DEV0.0032322167
Set Abs Max Ltv ...28632952022-09-19 5:02:06642 days ago1663563726IN
0xE5b8a374...39BC5DA71
0 DEV0.0032277267
Set Maintenance ...28632932022-09-19 5:01:42642 days ago1663563702IN
0xE5b8a374...39BC5DA71
0 DEV0.0032322167
Set Abs Max Ltv ...28632842022-09-19 4:59:24642 days ago1663563564IN
0xE5b8a374...39BC5DA71
0 DEV0.0032277267

Latest 25 internal transactions (View All)

Parent Transaction Hash Block From To Value
40857752023-04-05 14:12:24444 days ago1680703944
0xE5b8a374...39BC5DA71
0 DEV
40857752023-04-05 14:12:24444 days ago1680703944
0xE5b8a374...39BC5DA71
0 DEV
40857752023-04-05 14:12:24444 days ago1680703944
0xE5b8a374...39BC5DA71
0 DEV
40857752023-04-05 14:12:24444 days ago1680703944
0xE5b8a374...39BC5DA71
0 DEV
40857752023-04-05 14:12:24444 days ago1680703944
0xE5b8a374...39BC5DA71
0 DEV
40857752023-04-05 14:12:24444 days ago1680703944
0xE5b8a374...39BC5DA71
0 DEV
40857752023-04-05 14:12:24444 days ago1680703944
0xE5b8a374...39BC5DA71
0 DEV
40857752023-04-05 14:12:24444 days ago1680703944
0xE5b8a374...39BC5DA71
0 DEV
40857752023-04-05 14:12:24444 days ago1680703944
0xE5b8a374...39BC5DA71
0 DEV
40857752023-04-05 14:12:24444 days ago1680703944
0xE5b8a374...39BC5DA71
0 DEV
40857752023-04-05 14:12:24444 days ago1680703944
0xE5b8a374...39BC5DA71
0 DEV
30385162022-10-19 22:12:48612 days ago1666217568
0xE5b8a374...39BC5DA71
0 DEV
30385162022-10-19 22:12:48612 days ago1666217568
0xE5b8a374...39BC5DA71
0 DEV
30385162022-10-19 22:12:48612 days ago1666217568
0xE5b8a374...39BC5DA71
0 DEV
30385162022-10-19 22:12:48612 days ago1666217568
0xE5b8a374...39BC5DA71
0 DEV
30385162022-10-19 22:12:48612 days ago1666217568
0xE5b8a374...39BC5DA71
0 DEV
30385162022-10-19 22:12:48612 days ago1666217568
0xE5b8a374...39BC5DA71
0 DEV
30385162022-10-19 22:12:48612 days ago1666217568
0xE5b8a374...39BC5DA71
0 DEV
30385162022-10-19 22:12:48612 days ago1666217568
0xE5b8a374...39BC5DA71
0 DEV
29986132022-10-12 13:51:12619 days ago1665582672
0xE5b8a374...39BC5DA71
0 DEV
29986132022-10-12 13:51:12619 days ago1665582672
0xE5b8a374...39BC5DA71
0 DEV
29986132022-10-12 13:51:12619 days ago1665582672
0xE5b8a374...39BC5DA71
0 DEV
29986132022-10-12 13:51:12619 days ago1665582672
0xE5b8a374...39BC5DA71
0 DEV
29986132022-10-12 13:51:12619 days ago1665582672
0xE5b8a374...39BC5DA71
0 DEV
29986132022-10-12 13:51:12619 days ago1665582672
0xE5b8a374...39BC5DA71
0 DEV
View All Internal Transactions
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0x3A932643...Ef2b3b91a
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
CRMRouter

Compiler Version
v0.8.9+commit.e5eed63a

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity Standard Json-Input format)

File 1 of 8 : CRMRouter.sol
//SPDX-License-Identifier: Unlicense
pragma solidity ^0.8.4;

import "./interfaces/ICRMRouter.sol";
import "./CRMRouterAdmin.sol";
import "../interfaces/ICRM.sol";

contract CRMRouter is ICRMRouter, CRMRouterAdmin {
    constructor () {
        admin = msg.sender;
    }

    function getLoanMarketPremium(
        address masterLoanMarket,
        uint256 loanMarketUnderlyingChainId,
        address loanMarketUnderlying
    ) external override view returns (uint256 ratio, uint8 decimals) {
        return ICRM(routes[masterLoanMarket]).getLoanMarketPremium(
            masterLoanMarket,
            loanMarketUnderlyingChainId,
            loanMarketUnderlying
        );
    }

    function getMaintenanceCollateralFactor(
        uint256 chainId,
        address asset
    ) external override view returns (uint256 ratio, uint8 decimals) {
        return (maintenanceLtvRatios[chainId][asset], COLLATERAL_FACTOR_DECIMALS);
    }

    function getCollateralFactor(
        uint256 chainId,
        address asset
    ) external override view returns (uint256 ratio, uint8 decimals) {
        return (absMaxLtvRatios[chainId][asset], COLLATERAL_FACTOR_DECIMALS);
    }
}

File 2 of 8 : ICRMRouter.sol
//SPDX-License-Identifier: Unlicense
pragma solidity ^0.8.4;

interface ICRMRouter {
    function getLoanMarketPremium(
        address masterLoanMarket,
        uint256 loanMarketUnderlyingChainId,
        address loanMarketUnderlying
    ) external view returns (uint256 ratio, uint8 decimals);

    function getMaintenanceCollateralFactor(
        uint256 chainId,
        address asset
    ) external view returns (uint256 ratio, uint8 decimals);

    function getCollateralFactor(
        uint256 chainId,
        address asset
    ) external view returns (uint256 ratio, uint8 decimals);
}

File 3 of 8 : CRMRouterAdmin.sol
//SPDX-License-Identifier: Unlicense
pragma solidity ^0.8.4;

import "./CRMRouterModifiers.sol";
import "./CRMRouterEvents.sol";

abstract contract CRMRouterAdmin is CRMRouterModifiers, CRMRouterEvents {
    function setAbsMaxLtvRatio(
        uint256 chainId,
        address asset,
        uint256 maxLtvRatio
    ) external onlyAdmin() {
        absMaxLtvRatios[chainId][asset] = maxLtvRatio;
        emit AssetLtvRatioUpdated(chainId, asset, maxLtvRatio);
    }

    function setMaintenanceLtvRatio(
        uint256 chainId,
        address asset,
        uint256 maintenanceLtvRatio
    ) external onlyAdmin() {
        maintenanceLtvRatios[chainId][asset] = maintenanceLtvRatio;
        emit AssetMaintenanceLtvRatioUpdated(chainId, asset, maintenanceLtvRatio);
    }

    function addRoute(
        address masterLoanMarket,
        address newRoute
    ) external onlyAdmin() {
        if (routes[masterLoanMarket] != address(0)) revert RouteExists();
        emit RouteChanged(masterLoanMarket, routes[masterLoanMarket], newRoute);
        routes[masterLoanMarket] = newRoute;
    }

    function removeRoute(
        address masterLoanMarket
    ) external onlyAdmin() {
        emit RouteChanged(masterLoanMarket, routes[masterLoanMarket], address(0));
        routes[masterLoanMarket] = address(0);
    }

    function replaceRoute(
        address masterLoanMarket,
        address newRoute
    ) external onlyAdmin() {
        emit RouteChanged(masterLoanMarket, routes[masterLoanMarket], newRoute);
        routes[masterLoanMarket] = newRoute;
    }
}

File 4 of 8 : ICRM.sol
//SPDX-License-Identifier: Unlicense
pragma solidity ^0.8.4;

interface ICRM {
    function getLoanMarketPremium(
        address loanMarketOverlying,
        uint256 loanMarketUnderlyingChainId,
        address loanMarketUnderlying
    ) external view returns (uint256 ratio, uint8 decimals);
}

File 5 of 8 : CRMRouterModifiers.sol
//SPDX-License-Identifier: Unlicense
pragma solidity ^0.8.4;

import "./CRMRouterStorage.sol";
import "../../../util/CommonErrors.sol";

abstract contract CRMRouterModifiers is CRMRouterStorage, CommonErrors {
    modifier onlyAdmin() {
        if (msg.sender != admin) revert OnlyAdmin();
        _;
    }
}

File 6 of 8 : CRMRouterEvents.sol
//SPDX-License-Identifier: Unlicense
pragma solidity ^0.8.4;

abstract contract CRMRouterEvents {
    event AssetLtvRatioUpdated(
        uint256 chainId,
        address asset,
        uint256 ltvRatio
    );

    event AssetMaintenanceLtvRatioUpdated(
        uint256 chainId,
        address asset,
        uint256 maintenanceLtvRatio
    );

    event RouteChanged(
        address masterLoanMarket,
        address oldRoute,
        address newRoute
    );
}

File 7 of 8 : CRMRouterStorage.sol
//SPDX-License-Identifier: Unlicense
pragma solidity ^0.8.4;

abstract contract CRMRouterStorage {
    address internal admin;

    uint8 public constant COLLATERAL_FACTOR_DECIMALS = 8;

    mapping(address /* MasterLoanMarket */ => address /* CRM Contract */) internal routes;

    // slither-disable-next-line unused-state
    mapping(uint256 => mapping(address => uint256)) public maintenanceLtvRatios;

    // slither-disable-next-line unused-state
    mapping(uint256 => mapping(address => uint256)) public absMaxLtvRatios;
}

File 8 of 8 : CommonErrors.sol
//SPDX-License-Identifier: Unlicense
pragma solidity ^0.8.4;

abstract contract CommonErrors {
    error AccountNoAssets(address account);
    error AddressExpected();
    error AlreadyInitialized();
    error EccMessageAlreadyProcessed();
    error EccFailedToValidate();
    error ExpectedMintAmount();
    error ExpectedBridgeAmount();
    error ExpectedBorrowAmount();
    error ExpectedWithdrawAmount();
    error ExpectedRepayAmount();
    error ExpectedTradeAmount();
    error ExpectedDepositAmount();
    error ExpectedTransferAmount();
    error InsufficientReserves();
    error InvalidPayload();
    error InvalidPrice();
    error InvalidPrecision();
    error InvalidSelector();
    error MarketExists();
    error LoanMarketIsListed(bool status);
    error MarketIsPaused();
    error MarketNotListed();
    error MsgDataExpected();
    error NameExpected();
    error NothingToWithdraw();
    error NotInMarket(uint256 chainId, address token);
    error OnlyAdmin();
    error OnlyAuth();
    error OnlyGateway();
    error OnlyMiddleLayer();
    error OnlyMintAuth();
    error OnlyRoute();
    error OnlyRouter();
    error OnlyMasterState();
    error ParamOutOfBounds();
    error RouteExists();
    error Reentrancy();
    error EnterLoanMarketFailed();
    error EnterCollMarketFailed();
    error ExitLoanMarketFailed();
    error ExitCollMarketFailed();
    error RepayTooMuch(uint256 repayAmount, uint256 maxAmount);
    error WithdrawTooMuch();
    error NotEnoughBalance(address token, address who);
    error LiquidateDisallowed();
    error SeizeTooMuch();
    error SymbolExpected();
    error RouteNotSupported(address route);
    error MiddleLayerPaused();
    error PairNotSupported(address loanAsset, address tradeAsset);
    error TransferFailed(address from, address dest);
    error TransferPaused();
    error UnknownRevert();
    error UnexpectedValueDelta();
    error ExpectedValue();
    error UnexpectedDelta();
}

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

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"AccountNoAssets","type":"error"},{"inputs":[],"name":"AddressExpected","type":"error"},{"inputs":[],"name":"AlreadyInitialized","type":"error"},{"inputs":[],"name":"EccFailedToValidate","type":"error"},{"inputs":[],"name":"EccMessageAlreadyProcessed","type":"error"},{"inputs":[],"name":"EnterCollMarketFailed","type":"error"},{"inputs":[],"name":"EnterLoanMarketFailed","type":"error"},{"inputs":[],"name":"ExitCollMarketFailed","type":"error"},{"inputs":[],"name":"ExitLoanMarketFailed","type":"error"},{"inputs":[],"name":"ExpectedBorrowAmount","type":"error"},{"inputs":[],"name":"ExpectedBridgeAmount","type":"error"},{"inputs":[],"name":"ExpectedDepositAmount","type":"error"},{"inputs":[],"name":"ExpectedMintAmount","type":"error"},{"inputs":[],"name":"ExpectedRepayAmount","type":"error"},{"inputs":[],"name":"ExpectedTradeAmount","type":"error"},{"inputs":[],"name":"ExpectedTransferAmount","type":"error"},{"inputs":[],"name":"ExpectedValue","type":"error"},{"inputs":[],"name":"ExpectedWithdrawAmount","type":"error"},{"inputs":[],"name":"InsufficientReserves","type":"error"},{"inputs":[],"name":"InvalidPayload","type":"error"},{"inputs":[],"name":"InvalidPrecision","type":"error"},{"inputs":[],"name":"InvalidPrice","type":"error"},{"inputs":[],"name":"InvalidSelector","type":"error"},{"inputs":[],"name":"LiquidateDisallowed","type":"error"},{"inputs":[{"internalType":"bool","name":"status","type":"bool"}],"name":"LoanMarketIsListed","type":"error"},{"inputs":[],"name":"MarketExists","type":"error"},{"inputs":[],"name":"MarketIsPaused","type":"error"},{"inputs":[],"name":"MarketNotListed","type":"error"},{"inputs":[],"name":"MiddleLayerPaused","type":"error"},{"inputs":[],"name":"MsgDataExpected","type":"error"},{"inputs":[],"name":"NameExpected","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"who","type":"address"}],"name":"NotEnoughBalance","type":"error"},{"inputs":[{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"address","name":"token","type":"address"}],"name":"NotInMarket","type":"error"},{"inputs":[],"name":"NothingToWithdraw","type":"error"},{"inputs":[],"name":"OnlyAdmin","type":"error"},{"inputs":[],"name":"OnlyAuth","type":"error"},{"inputs":[],"name":"OnlyGateway","type":"error"},{"inputs":[],"name":"OnlyMasterState","type":"error"},{"inputs":[],"name":"OnlyMiddleLayer","type":"error"},{"inputs":[],"name":"OnlyMintAuth","type":"error"},{"inputs":[],"name":"OnlyRoute","type":"error"},{"inputs":[],"name":"OnlyRouter","type":"error"},{"inputs":[{"internalType":"address","name":"loanAsset","type":"address"},{"internalType":"address","name":"tradeAsset","type":"address"}],"name":"PairNotSupported","type":"error"},{"inputs":[],"name":"ParamOutOfBounds","type":"error"},{"inputs":[],"name":"Reentrancy","type":"error"},{"inputs":[{"internalType":"uint256","name":"repayAmount","type":"uint256"},{"internalType":"uint256","name":"maxAmount","type":"uint256"}],"name":"RepayTooMuch","type":"error"},{"inputs":[],"name":"RouteExists","type":"error"},{"inputs":[{"internalType":"address","name":"route","type":"address"}],"name":"RouteNotSupported","type":"error"},{"inputs":[],"name":"SeizeTooMuch","type":"error"},{"inputs":[],"name":"SymbolExpected","type":"error"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"dest","type":"address"}],"name":"TransferFailed","type":"error"},{"inputs":[],"name":"TransferPaused","type":"error"},{"inputs":[],"name":"UnexpectedDelta","type":"error"},{"inputs":[],"name":"UnexpectedValueDelta","type":"error"},{"inputs":[],"name":"UnknownRevert","type":"error"},{"inputs":[],"name":"WithdrawTooMuch","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"chainId","type":"uint256"},{"indexed":false,"internalType":"address","name":"asset","type":"address"},{"indexed":false,"internalType":"uint256","name":"ltvRatio","type":"uint256"}],"name":"AssetLtvRatioUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"chainId","type":"uint256"},{"indexed":false,"internalType":"address","name":"asset","type":"address"},{"indexed":false,"internalType":"uint256","name":"maintenanceLtvRatio","type":"uint256"}],"name":"AssetMaintenanceLtvRatioUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"masterLoanMarket","type":"address"},{"indexed":false,"internalType":"address","name":"oldRoute","type":"address"},{"indexed":false,"internalType":"address","name":"newRoute","type":"address"}],"name":"RouteChanged","type":"event"},{"inputs":[],"name":"COLLATERAL_FACTOR_DECIMALS","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"}],"name":"absMaxLtvRatios","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"masterLoanMarket","type":"address"},{"internalType":"address","name":"newRoute","type":"address"}],"name":"addRoute","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"address","name":"asset","type":"address"}],"name":"getCollateralFactor","outputs":[{"internalType":"uint256","name":"ratio","type":"uint256"},{"internalType":"uint8","name":"decimals","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"masterLoanMarket","type":"address"},{"internalType":"uint256","name":"loanMarketUnderlyingChainId","type":"uint256"},{"internalType":"address","name":"loanMarketUnderlying","type":"address"}],"name":"getLoanMarketPremium","outputs":[{"internalType":"uint256","name":"ratio","type":"uint256"},{"internalType":"uint8","name":"decimals","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"address","name":"asset","type":"address"}],"name":"getMaintenanceCollateralFactor","outputs":[{"internalType":"uint256","name":"ratio","type":"uint256"},{"internalType":"uint8","name":"decimals","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"}],"name":"maintenanceLtvRatios","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"masterLoanMarket","type":"address"}],"name":"removeRoute","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"masterLoanMarket","type":"address"},{"internalType":"address","name":"newRoute","type":"address"}],"name":"replaceRoute","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"address","name":"asset","type":"address"},{"internalType":"uint256","name":"maxLtvRatio","type":"uint256"}],"name":"setAbsMaxLtvRatio","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"address","name":"asset","type":"address"},{"internalType":"uint256","name":"maintenanceLtvRatio","type":"uint256"}],"name":"setMaintenanceLtvRatio","outputs":[],"stateMutability":"nonpayable","type":"function"}]

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100a95760003560e01c80637d6f1838116100715780637d6f18381461015857806396d64d1514610191578063bd993287146101ca578063c079c772146101dd578063c766ec0d14610208578063df640d791461021b57600080fd5b80632d0bec91146100ae5780632e37f9fb146100c35780633ebb2c391461011857806366e86a911461012b5780637109335914610145575b600080fd5b6100c16100bc3660046105de565b61022e565b005b6100fc6100d1366004610600565b60009182526002602090815260408084206001600160a01b0393909316845291905290205490600890565b6040805192835260ff9091166020830152015b60405180910390f35b6100c161012636600461062c565b6102d9565b610133600881565b60405160ff909116815260200161010f565b6100c161015336600461062c565b61038e565b6100fc610166366004610600565b60009182526003602090815260408084206001600160a01b0393909316845291905290205490600890565b6101bc61019f366004610600565b600260209081526000928352604080842090915290825290205481565b60405190815260200161010f565b6100c16101d8366004610656565b6103f2565b6101bc6101eb366004610600565b600360209081526000928352604080842090915290825290205481565b6100c1610216366004610656565b61048a565b6100fc61022936600461068b565b610519565b6000546001600160a01b0316331461025957604051634755657960e01b815260040160405180910390fd5b6001600160a01b038181166000818152600160209081526040808320548151948552909416908301528183015290517fd29ca1547222d7c1bc4cc9ffab58d96050e6cd0b42701be11f5c8a30609422ea9181900360600190a16001600160a01b0316600090815260016020526040902080546001600160a01b0319169055565b6000546001600160a01b0316331461030457604051634755657960e01b815260040160405180910390fd5b6001600160a01b038281166000818152600160209081526040918290205482519384528416908301529183168183015290517fd29ca1547222d7c1bc4cc9ffab58d96050e6cd0b42701be11f5c8a30609422ea9181900360600190a16001600160a01b03918216600090815260016020526040902080546001600160a01b03191691909216179055565b6000546001600160a01b031633146103b957604051634755657960e01b815260040160405180910390fd5b6001600160a01b038281166000908152600160205260409020541615610304576040516337a922df60e11b815260040160405180910390fd5b6000546001600160a01b0316331461041d57604051634755657960e01b815260040160405180910390fd5b60008381526003602090815260408083206001600160a01b038616808552908352928190208490558051868152918201929092529081018290527f48237e6b7695db8f4b1be91f53d609985c63432fab5f8de1fe1ea1bd1f2e367c906060015b60405180910390a1505050565b6000546001600160a01b031633146104b557604051634755657960e01b815260040160405180910390fd5b60008381526002602090815260408083206001600160a01b038616808552908352928190208490558051868152918201929092529081018290527f5b14fd23b2fcec54fe204f83a4366df28bcdf42efd0e30a44316365012890ba09060600161047d565b6001600160a01b0383811660008181526001602052604080822054905163df640d7960e01b815260048101939093526024830186905284841660448401529092839291169063df640d7990606401604080518083038186803b15801561057e57600080fd5b505afa158015610592573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105b691906106c7565b91509150935093915050565b80356001600160a01b03811681146105d957600080fd5b919050565b6000602082840312156105f057600080fd5b6105f9826105c2565b9392505050565b6000806040838503121561061357600080fd5b82359150610623602084016105c2565b90509250929050565b6000806040838503121561063f57600080fd5b610648836105c2565b9150610623602084016105c2565b60008060006060848603121561066b57600080fd5b8335925061067b602085016105c2565b9150604084013590509250925092565b6000806000606084860312156106a057600080fd5b6106a9846105c2565b9250602084013591506106be604085016105c2565b90509250925092565b600080604083850312156106da57600080fd5b82519150602083015160ff811681146106f257600080fd5b80915050925092905056fea26469706673582212207756676535f77d261a2b4ffb6d9d099ff43a0df5efa03a0abe92b1fa9ab80aa764736f6c63430008090033

Block Transaction Gas Used Reward
view all blocks collator

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

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
[ Download: CSV Export  ]
[ 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.