Moonbase Alpha Testnet

Contract

0x8d1c8F6E40816e28bf2788981f66CEA6Bc4F05F7

Overview

DEV Balance

Moonbase Alpha LogoMoonbase Alpha LogoMoonbase Alpha Logo0 DEV

Multichain Info

N/A
Transaction Hash
Method
Block
From
To
Set Value70857072024-05-17 11:33:42253 days ago1715945622IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70842092024-05-17 8:33:36253 days ago1715934816IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70836782024-05-17 7:35:00254 days ago1715931300IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70836672024-05-17 7:33:54254 days ago1715931234IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70831162024-05-17 6:33:36254 days ago1715927616IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70820772024-05-17 4:33:36254 days ago1715920416IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70793312024-05-16 23:33:36254 days ago1715902416IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70788042024-05-16 22:34:54254 days ago1715898894IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70777362024-05-16 20:33:36254 days ago1715891616IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70762342024-05-16 17:33:36254 days ago1715880816IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70746902024-05-16 14:34:54254 days ago1715870094IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70737152024-05-16 12:33:36254 days ago1715862816IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70731662024-05-16 11:33:36254 days ago1715859216IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70641252024-05-15 18:34:54255 days ago1715798094IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70641142024-05-15 18:33:36255 days ago1715798016IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70614042024-05-15 13:34:54255 days ago1715780094IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70613932024-05-15 13:33:36255 days ago1715780016IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70608762024-05-15 12:34:54255 days ago1715776494IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70603202024-05-15 11:33:36255 days ago1715772816IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70597552024-05-15 10:33:36255 days ago1715769216IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70591802024-05-15 9:33:36255 days ago1715765616IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70586302024-05-15 8:33:36255 days ago1715762016IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70581032024-05-15 7:34:54256 days ago1715758494IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70553182024-05-15 2:33:36256 days ago1715740416IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375
Set Value70531272024-05-14 22:33:36256 days ago1715726016IN
0x8d1c8F6E...6Bc4F05F7
0 DEV0.000005220.1375

Parent Transaction Hash Block From To
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
DIAOracleV2

Compiler Version
v0.7.4+commit.3f05b770

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at moonbase.moonscan.io on 2022-02-10
*/

// compiled using solidity 0.7.4

pragma solidity 0.7.4;

contract DIAOracleV2 {
    mapping (string => uint256) public values;
    address oracleUpdater;
    
    event OracleUpdate(string key, uint128 value, uint128 timestamp);
    event UpdaterAddressChange(address newUpdater);
    
    constructor() {
        oracleUpdater = msg.sender;
    }
    
    function setValue(string memory key, uint128 value, uint128 timestamp) public {
        require(msg.sender == oracleUpdater);
        uint256 cValue = (((uint256)(value)) << 128) + timestamp;
        values[key] = cValue;
        emit OracleUpdate(key, value, timestamp);
    }
    
    function getValue(string memory key) external view returns (uint128, uint128) {
        uint256 cValue = values[key];
        uint128 timestamp = (uint128)(cValue % 2**128);
        uint128 value = (uint128)(cValue >> 128);
        return (value, timestamp);
    }
    
    function updateOracleUpdaterAddress(address newOracleUpdaterAddress) public {
        require(msg.sender == oracleUpdater);
        oracleUpdater = newOracleUpdaterAddress;
        emit UpdaterAddressChange(newOracleUpdaterAddress);
    }
}

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"key","type":"string"},{"indexed":false,"internalType":"uint128","name":"value","type":"uint128"},{"indexed":false,"internalType":"uint128","name":"timestamp","type":"uint128"}],"name":"OracleUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"newUpdater","type":"address"}],"name":"UpdaterAddressChange","type":"event"},{"inputs":[{"internalType":"string","name":"key","type":"string"}],"name":"getValue","outputs":[{"internalType":"uint128","name":"","type":"uint128"},{"internalType":"uint128","name":"","type":"uint128"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"key","type":"string"},{"internalType":"uint128","name":"value","type":"uint128"},{"internalType":"uint128","name":"timestamp","type":"uint128"}],"name":"setValue","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOracleUpdaterAddress","type":"address"}],"name":"updateOracleUpdaterAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"","type":"string"}],"name":"values","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}]

608060405234801561001057600080fd5b50600180546001600160a01b0319163317905561054d806100326000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80635a9ade8b146100515780636aa45efc146101095780637898e0c214610131578063960384a0146101ed575b600080fd5b6100f76004803603602081101561006757600080fd5b81019060208101813564010000000081111561008257600080fd5b82018360208201111561009457600080fd5b803590602001918460018302840111640100000000831117156100b657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506102c2945050505050565b60408051918252519081900360200190f35b61012f6004803603602081101561011f57600080fd5b50356001600160a01b03166102df565b005b61012f6004803603606081101561014757600080fd5b81019060208101813564010000000081111561016257600080fd5b82018360208201111561017457600080fd5b8035906020019184600183028401116401000000008311171561019657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160801b03833581169450602090930135909216915061034a9050565b6102936004803603602081101561020357600080fd5b81019060208101813564010000000081111561021e57600080fd5b82018360208201111561023057600080fd5b8035906020019184600183028401116401000000008311171561025257600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061049a945050505050565b60405180836001600160801b03168152602001826001600160801b031681526020019250505060405180910390f35b805160208183018101805160008252928201919093012091525481565b6001546001600160a01b031633146102f657600080fd5b600180546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f121e958a4cadf7f8dadefa22cc019700365240223668418faebed197da07089f9181900360200190a150565b6001546001600160a01b0316331461036157600080fd5b6000816001600160801b03166080846001600160801b0316901b019050806000856040518082805190602001908083835b602083106103b15780518252601f199092019160209182019101610392565b51815160209384036101000a6000190180199092169116179052920194855250604080519485900382018520959095556001600160801b03888116858301528716948401949094525050606080825286519082015285517fa7fc99ed7617309ee23f63ae90196a1e490d362e6f6a547a59bc809ee2291782928792879287928291608083019187019080838360005b83811015610458578181015183820152602001610440565b50505050905090810190601f1680156104855780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a150505050565b600080600080846040518082805190602001908083835b602083106104d05780518252601f1990920191602091820191016104b1565b51815160209384036101000a6000190180199092169116179052920194855250604051938490030190922054608081901c976001600160801b03909116965094505050505056fea26469706673582212201dbd2d2595871132685a64fa9a76d5dd82fe4b43c7a277a026abb7353f1e33a464736f6c63430007040033

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061004c5760003560e01c80635a9ade8b146100515780636aa45efc146101095780637898e0c214610131578063960384a0146101ed575b600080fd5b6100f76004803603602081101561006757600080fd5b81019060208101813564010000000081111561008257600080fd5b82018360208201111561009457600080fd5b803590602001918460018302840111640100000000831117156100b657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506102c2945050505050565b60408051918252519081900360200190f35b61012f6004803603602081101561011f57600080fd5b50356001600160a01b03166102df565b005b61012f6004803603606081101561014757600080fd5b81019060208101813564010000000081111561016257600080fd5b82018360208201111561017457600080fd5b8035906020019184600183028401116401000000008311171561019657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160801b03833581169450602090930135909216915061034a9050565b6102936004803603602081101561020357600080fd5b81019060208101813564010000000081111561021e57600080fd5b82018360208201111561023057600080fd5b8035906020019184600183028401116401000000008311171561025257600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061049a945050505050565b60405180836001600160801b03168152602001826001600160801b031681526020019250505060405180910390f35b805160208183018101805160008252928201919093012091525481565b6001546001600160a01b031633146102f657600080fd5b600180546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f121e958a4cadf7f8dadefa22cc019700365240223668418faebed197da07089f9181900360200190a150565b6001546001600160a01b0316331461036157600080fd5b6000816001600160801b03166080846001600160801b0316901b019050806000856040518082805190602001908083835b602083106103b15780518252601f199092019160209182019101610392565b51815160209384036101000a6000190180199092169116179052920194855250604080519485900382018520959095556001600160801b03888116858301528716948401949094525050606080825286519082015285517fa7fc99ed7617309ee23f63ae90196a1e490d362e6f6a547a59bc809ee2291782928792879287928291608083019187019080838360005b83811015610458578181015183820152602001610440565b50505050905090810190601f1680156104855780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a150505050565b600080600080846040518082805190602001908083835b602083106104d05780518252601f1990920191602091820191016104b1565b51815160209384036101000a6000190180199092169116179052920194855250604051938490030190922054608081901c976001600160801b03909116965094505050505056fea26469706673582212201dbd2d2595871132685a64fa9a76d5dd82fe4b43c7a277a026abb7353f1e33a464736f6c63430007040033

Deployed Bytecode Sourcemap

62:1131:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;90:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;90:41:0;;-1:-1:-1;90:41:0;;-1:-1:-1;;;;;90:41:0:i;:::-;;;;;;;;;;;;;;;;948:242;;;;;;;;;;;;;;;;-1:-1:-1;948:242:0;-1:-1:-1;;;;;948:242:0;;:::i;:::-;;373:282;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;373:282:0;;-1:-1:-1;;;;;;;373:282:0;;;;;-1:-1:-1;373:282:0;;;;;;;;;-1:-1:-1;373:282:0;;-1:-1:-1;373:282:0:i;667:269::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;667:269:0;;-1:-1:-1;667:269:0;;-1:-1:-1;;;;;667:269:0:i;:::-;;;;;-1:-1:-1;;;;;667:269:0;;;;;;-1:-1:-1;;;;;667:269:0;;;;;;;;;;;;;;;;90:41;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;948:242::-;1057:13;;-1:-1:-1;;;;;1057:13:0;1043:10;:27;1035:36;;;;;;1082:13;:39;;-1:-1:-1;;;;;1082:39:0;;-1:-1:-1;;;;;;1082:39:0;;;;;;;;1137:45;;;;;;;;;;;;;;;;948:242;:::o;373:282::-;484:13;;-1:-1:-1;;;;;484:13:0;470:10;:27;462:36;;;;;;509:14;556:9;-1:-1:-1;;;;;526:39:0;549:3;538:5;-1:-1:-1;;;;;528:16:0;527:25;;526:39;509:56;;590:6;576;583:3;576:11;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;576:11:0;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;576:11:0;;;;;;;;;;;;;;;;-1:-1:-1;576:11:0;;;;;;;;;;;:20;;;;-1:-1:-1;;;;;612:35:0;;;;;;;;;;;;;;;;-1:-1:-1;;612:35:0;;;;;;;;;;;;;;;;;;;;576:11;;612:35;;;;;;;;;;-1:-1:-1;612:35:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;373:282;;;;:::o;667:269::-;727:7;736;756:14;773:6;780:3;773:11;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;773:11:0;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;773:11:0;;;;;;;;;;;;;;;;-1:-1:-1;773:11:0;;;;;;;;;;;888:3;878:13;;;;-1:-1:-1;;;;;825:15:0;;;;-1:-1:-1;878:13:0;-1:-1:-1;;;;;667:269:0:o

Swarm Source

ipfs://1dbd2d2595871132685a64fa9a76d5dd82fe4b43c7a277a026abb7353f1e33a4

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  ]

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.