ETH Price: $2,353.92 (+3.50%)

Contract

0x00F8e64a8651E3479A0B20F46b1D462Fe29D6aBc
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
0x60806040164902972023-01-26 10:09:23600 days ago1674727763IN
 Create: AnkrETHRateProvider
0 ETH0.003582625

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
AnkrETHRateProvider

Compiler Version
v0.8.14+commit.80d49f37

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
File 1 of 4 : AnkrETHRateProvider.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.14;

import "./BaseRateProvider.sol";

/** 
 *  ankrETH rate provider contract.
 */
contract AnkrETHRateProvider is BaseRateProvider {

    // --- Init ---
    constructor(address _token) BaseRateProvider(_token) {}

    // --- View ---
    function ankrETH() external view returns(address) {
        return s_token;
    }
}

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

pragma solidity ^0.8.14;

/** 
 *  Balancer rate interface.
 */
interface IRateProvider {
    
    function getRate() external view returns (uint256);
}

File 3 of 4 : IAnkrETH.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.14;

/** 
 *  ankrETH interface.
 */
interface IAnkrETH {
    
    function sharesToBonds(uint256 amount) external view returns (uint256);
}

File 4 of 4 : BaseRateProvider.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.14;

import "./interfaces/IRateProvider.sol";
import "./interfaces/IAnkrETH.sol";

/**
 *  Inheritable standard rate provider interface.
 */
abstract contract BaseRateProvider is IRateProvider {

    // --- Var ---
    address internal s_token;

    // --- Init ---
    constructor(address _token) {
        s_token = _token;
    }

    // --- View ---
    function getRate() external view virtual override returns (uint256) {
        return IAnkrETH(s_token).sharesToBonds(1e18);
    }
}

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

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_token","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"ankrETH","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}]

608060405234801561001057600080fd5b506040516101c23803806101c283398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b61012f806100936000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063679aefce146037578063cc8e871a146050575b600080fd5b603d606a565b6040519081526020015b60405180910390f35b6000546040516001600160a01b0390911681526020016047565b60008054604051636c58d43d60e01b8152670de0b6b3a764000060048201526001600160a01b0390911690636c58d43d90602401602060405180830381865afa15801560ba573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019060dc919060e1565b905090565b60006020828403121560f257600080fd5b505191905056fea2646970667358221220ae33e1ccfeb2e08822e97312a2c3795af9065134c127333c39cba2a78cdd0da364736f6c634300080e0033000000000000000000000000e95a203b1a91a908f9b9ce46459d101078c2c3cb

Deployed Bytecode

0x6080604052348015600f57600080fd5b506004361060325760003560e01c8063679aefce146037578063cc8e871a146050575b600080fd5b603d606a565b6040519081526020015b60405180910390f35b6000546040516001600160a01b0390911681526020016047565b60008054604051636c58d43d60e01b8152670de0b6b3a764000060048201526001600160a01b0390911690636c58d43d90602401602060405180830381865afa15801560ba573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019060dc919060e1565b905090565b60006020828403121560f257600080fd5b505191905056fea2646970667358221220ae33e1ccfeb2e08822e97312a2c3795af9065134c127333c39cba2a78cdd0da364736f6c634300080e0033

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

000000000000000000000000e95a203b1a91a908f9b9ce46459d101078c2c3cb

-----Decoded View---------------
Arg [0] : _token (address): 0xE95A203B1a91a908F9B9CE46459d101078c2c3cb

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000e95a203b1a91a908f9b9ce46459d101078c2c3cb


Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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
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.