Contract 0x3E0215c1D639280e13B46e3aF94Fb5630d1b3212 1

 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x2f72e54d961d495b750daa8b945c83593b31ba16dc4156a27e1c11f24a391b58Update Volatilit...33828472021-11-27 16:37:477 hrs 21 mins ago0xf6ac2908c52400b1db3783675c0d4d279519b841 IN  0x3e0215c1d639280e13b46e3af94fb5630d1b32120 ETH0.000685449223 ETH
0xe851bc71f12b5dd59a73d8f4b2283bd4305fb741ebb01af4472250209eefd54eUpdate Volatilit...33604672021-11-26 16:36:321 day 7 hrs ago0xf6ac2908c52400b1db3783675c0d4d279519b841 IN  0x3e0215c1d639280e13b46e3af94fb5630d1b32120 ETH0.000724005214 ETH
0xf0d0ef91ce78bced6b504c0e810bbaaf0db7d3cde7798bfa40b152af449c7460Update Volatilit...33298072021-11-25 16:37:002 days 7 hrs ago0xf6ac2908c52400b1db3783675c0d4d279519b841 IN  0x3e0215c1d639280e13b46e3af94fb5630d1b32120 ETH0.000766827336 ETH
0x3a4df64e5233ee078a504cef7b1381ea9f3e99e6744acab7ed428d9cdec0d0aaUpdate Volatilit...32750652021-11-23 16:37:314 days 7 hrs ago0xf6ac2908c52400b1db3783675c0d4d279519b841 IN  0x3e0215c1d639280e13b46e3af94fb5630d1b32120 ETH0.000754316151 ETH
0x9da6586eac02933d6cffba048c95fa02d51f53df933bd9c98a08469d770c2496Update Volatilit...32452552021-11-22 16:36:585 days 7 hrs ago0xf6ac2908c52400b1db3783675c0d4d279519b841 IN  0x3e0215c1d639280e13b46e3af94fb5630d1b32120 ETH0.000749725629 ETH
0x412cfafa28152fcc7df354eae4ed5dc783c00eacdd99ae1600209fe290f730caUpdate Volatilit...32159522021-11-21 16:37:036 days 7 hrs ago0xf6ac2908c52400b1db3783675c0d4d279519b841 IN  0x3e0215c1d639280e13b46e3af94fb5630d1b32120 ETH0.000657702681 ETH
0x20178252f91cf5d2b682ed7db4ecc97f49699b598ad6cd9d5e856c202625288aUpdate Volatilit...31791572021-11-20 16:38:127 days 7 hrs ago0xf6ac2908c52400b1db3783675c0d4d279519b841 IN  0x3e0215c1d639280e13b46e3af94fb5630d1b32120 ETH0.000719634934 ETH
0xd0eb90930b3371f48590444cdf28cb9bd8a7b9358203460694eceb38f2c80f9aUpdate Volatilit...31512922021-11-19 16:36:328 days 7 hrs ago0xf6ac2908c52400b1db3783675c0d4d279519b841 IN  0x3e0215c1d639280e13b46e3af94fb5630d1b32120 ETH0.000820312114 ETH
0x8b9a321376d3775580622a8150f58eff6d0a43a517666b5501bca6f4697e735aUpdate Volatilit...31285052021-11-18 16:37:179 days 7 hrs ago0xf6ac2908c52400b1db3783675c0d4d279519b841 IN  0x3e0215c1d639280e13b46e3af94fb5630d1b32120 ETH0.000843585944 ETH
0x020b78c0e41c157722cf145590e8654101dfa9a3bda0693bb8487cd48ddbdb19Update Volatilit...31085672021-11-17 16:37:1510 days 7 hrs ago0xf6ac2908c52400b1db3783675c0d4d279519b841 IN  0x3e0215c1d639280e13b46e3af94fb5630d1b32120 ETH0.000855503231 ETH
0x57ed3d833dfeefaea2f45c264fced208743e9e27b141ba127ebd569bbb1a0563Update Volatilit...30855012021-11-16 16:37:1311 days 7 hrs ago0xf6ac2908c52400b1db3783675c0d4d279519b841 IN  0x3e0215c1d639280e13b46e3af94fb5630d1b32120 ETH0.000869883699 ETH
0x5e71d7bf5278367d22914444b666d6538fdac7cfd09ca72d116c601a11e1e176Update Volatilit...30613422021-11-15 16:37:4512 days 7 hrs ago0xf6ac2908c52400b1db3783675c0d4d279519b841 IN  0x3e0215c1d639280e13b46e3af94fb5630d1b32120 ETH0.000792456407 ETH
0x28a08781e7589240fb11758b71ba2561d11117313c664e3a1c7baa80adce72b2Update Volatilit...30400282021-11-14 16:37:2613 days 7 hrs ago0xf6ac2908c52400b1db3783675c0d4d279519b841 IN  0x3e0215c1d639280e13b46e3af94fb5630d1b32120 ETH0.000783378033 ETH
0xa1c1f7cb7a47b659d7e40087e0be50ca6ab52ade68b9e5a34fad6ec8f9c53475Update Volatilit...30185982021-11-13 16:35:3614 days 7 hrs ago0xf6ac2908c52400b1db3783675c0d4d279519b841 IN  0x3e0215c1d639280e13b46e3af94fb5630d1b32120 ETH0.000863298242 ETH
0xa8c58d53d1a75326dc1f6b6634f80219f48d6e8d4a67a42ff5a9c1061b1a6a92Update Volatilit...29993542021-11-12 16:36:3715 days 7 hrs ago0xf6ac2908c52400b1db3783675c0d4d279519b841 IN  0x3e0215c1d639280e13b46e3af94fb5630d1b32120 ETH0.000952642649 ETH
0x638ad6de74b3c5fe3f6c8a4ea5b976580f56122f390bd5138f353c2af0831276Update Volatilit...29782192021-11-11 16:37:2816 days 7 hrs ago0xf6ac2908c52400b1db3783675c0d4d279519b841 IN  0x3e0215c1d639280e13b46e3af94fb5630d1b32120 ETH0.00097592141 ETH
0xff077a484a21f0f2a212f48e66a9b3d2fcca84e002afee0578c541f292b8a308Update Volatilit...29529652021-11-10 16:36:5817 days 7 hrs ago0xf6ac2908c52400b1db3783675c0d4d279519b841 IN  0x3e0215c1d639280e13b46e3af94fb5630d1b32120 ETH0.000911299648 ETH
0x75ebb6d492aa1e381f03e582d59e08fb0ce7830da732448e96c455537b717847Update Volatilit...29513782021-11-10 15:33:5017 days 8 hrs ago0xf6ac2908c52400b1db3783675c0d4d279519b841 IN  0x3e0215c1d639280e13b46e3af94fb5630d1b32120 ETH0.001152491082 ETH
0x935e6642e0167da516f508e837734c6ff43c84105fff306953b718d819255585Transfer Ownersh...29510722021-11-10 15:25:1517 days 8 hrs ago0xde485812e28824e542b9c2270b6b8ed9232b7d0b IN  0x3e0215c1d639280e13b46e3af94fb5630d1b32120 ETH0.000917524198 ETH
0xc5cc51cd4b92228c46a32c690c2afa6f55ab4b248cb561db568572c8d1ea28b40x6080604028958352021-11-08 0:35:4919 days 23 hrs ago0xde485812e28824e542b9c2270b6b8ed9232b7d0b IN  Contract Creation0 ETH0.009270488895 ETH
[ Download CSV Export 
Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
RdpxVolatilityOracle

Compiler Version
v0.8.4+commit.c7e474f2

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity Standard Json-Input format)

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

pragma solidity ^0.8.0;

import "../utils/Context.sol";
/**
 * @dev Contract module which provides a basic access control mechanism, where
 * there is an account (an owner) that can be granted exclusive access to
 * specific functions.
 *
 * By default, the owner account will be the one that deploys the contract. This
 * can later be changed with {transferOwnership}.
 *
 * This module is used through inheritance. It will make available the modifier
 * `onlyOwner`, which can be applied to your functions to restrict their use to
 * the owner.
 */
abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

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

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    /**
     * @dev Leaves the contract without owner. It will not be possible to call
     * `onlyOwner` functions anymore. Can only be called by the current owner.
     *
     * NOTE: Renouncing ownership will leave the contract without an owner,
     * thereby removing any functionality that is only available to the owner.
     */
    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = 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");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

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

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) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}

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

interface IVolatilityOracle {
    function getVolatility() external returns (uint256);
}

File 4 of 4 : RdpxVolatilityOracle.sol
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.0;

// Contracts
import {Ownable} from '@openzeppelin/contracts/access/Ownable.sol';

// Interfaces
import {IVolatilityOracle} from '../interfaces/IVolatilityOracle.sol';

contract RdpxVolatilityOracle is Ownable, IVolatilityOracle {
    /*==== PUBLIC VARS ====*/

    uint256 public lastVolatility;

    /*==== SETTER FUNCTIONS (ONLY OWNER) ====*/

    /**
     * @notice Updates the last volatility for rdpx
     * @param v volatility
     * @return volatility of rdpx
     */
    function updateVolatility(uint256 v) external onlyOwner returns (uint256) {
        require(v != 0, 'VolatilityOracle: Volatility cannot be 0');

        lastVolatility = v;

        return v;
    }

    /*==== VIEWS ====*/

    /**
     * @notice Gets the volatility of rdpx
     * @return volatility
     */
    function getVolatility() external view override returns (uint256) {
        require(lastVolatility != 0, 'VolatilityOracle: Last volatility == 0');

        return lastVolatility;
    }
}

Settings
{
  "evmVersion": "istanbul",
  "libraries": {},
  "metadata": {
    "bytecodeHash": "ipfs",
    "useLiteralContent": true
  },
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "remappings": [],
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "abi"
      ]
    }
  }
}

Contract ABI

[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[],"name":"getVolatility","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastVolatility","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"v","type":"uint256"}],"name":"updateVolatility","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506103eb806100616000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80632834a7c8146100675780633af2888b1461008d578063715018a6146100955780638843be741461009f5780638da5cb5b146100a8578063f2fde38b146100c3575b600080fd5b61007a610075366004610368565b6100d6565b6040519081526020015b60405180910390f35b61007a610171565b61009d6101dc565b005b61007a60015481565b6000546040516001600160a01b039091168152602001610084565b61009d6100d136600461033a565b610250565b600080546001600160a01b0316331461010a5760405162461bcd60e51b815260040161010190610380565b60405180910390fd5b816101685760405162461bcd60e51b815260206004820152602860248201527f566f6c6174696c6974794f7261636c653a20566f6c6174696c6974792063616e60448201526706e6f7420626520360c41b6064820152608401610101565b50600181905590565b6000600154600014156101d55760405162461bcd60e51b815260206004820152602660248201527f566f6c6174696c6974794f7261636c653a204c61737420766f6c6174696c6974604482015265079203d3d20360d41b6064820152608401610101565b5060015490565b6000546001600160a01b031633146102065760405162461bcd60e51b815260040161010190610380565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b0316331461027a5760405162461bcd60e51b815260040161010190610380565b6001600160a01b0381166102df5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610101565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b60006020828403121561034b578081fd5b81356001600160a01b0381168114610361578182fd5b9392505050565b600060208284031215610379578081fd5b5035919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260408201526060019056fea2646970667358221220ebd61f1ddc5c0a3f82ad2dbd591e3c58b374911f8c6407015c0970f94424ab6a64736f6c63430008040033

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.