Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 1,884 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Submit Prophecy | 12580986 | 1250 days ago | IN | 0 ETH | 0.00031327 | ||||
Submit Prophecy | 10185563 | 1619 days ago | IN | 0 ETH | 0.00031303 | ||||
Submit Prophecy | 10130979 | 1627 days ago | IN | 0 ETH | 0.00031303 | ||||
Submit Prophecy | 10130886 | 1627 days ago | IN | 0 ETH | 0.00031315 | ||||
Submit Prophecy | 10130881 | 1627 days ago | IN | 0 ETH | 0.00031327 | ||||
Submit Prophecy | 10130863 | 1627 days ago | IN | 0 ETH | 0.00031303 | ||||
Submit Prophecy | 10130749 | 1627 days ago | IN | 0 ETH | 0.00031351 | ||||
Submit Prophecy | 10124593 | 1628 days ago | IN | 0 ETH | 0.00031303 | ||||
Submit Prophecy | 10124398 | 1628 days ago | IN | 0 ETH | 0.00031303 | ||||
Submit Prophecy | 10123809 | 1629 days ago | IN | 0 ETH | 0.00031315 | ||||
Submit Prophecy | 10123750 | 1629 days ago | IN | 0 ETH | 0.00031315 | ||||
Submit Prophecy | 10122943 | 1629 days ago | IN | 0 ETH | 0.00031315 | ||||
Submit Prophecy | 10122880 | 1629 days ago | IN | 0 ETH | 0.00031303 | ||||
Submit Prophecy | 10120884 | 1629 days ago | IN | 0 ETH | 0.00031279 | ||||
Submit Prophecy | 10120870 | 1629 days ago | IN | 0 ETH | 0.00031303 | ||||
Submit Prophecy | 10120757 | 1629 days ago | IN | 0 ETH | 0.00031315 | ||||
Submit Prophecy | 10120745 | 1629 days ago | IN | 0 ETH | 0.00031327 | ||||
Submit Prophecy | 10120739 | 1629 days ago | IN | 0 ETH | 0.00031375 | ||||
Submit Prophecy | 10120715 | 1629 days ago | IN | 0 ETH | 0.00031351 | ||||
Submit Prophecy | 10120689 | 1629 days ago | IN | 0 ETH | 0.00031327 | ||||
Submit Prophecy | 10120618 | 1629 days ago | IN | 0 ETH | 0.00031303 | ||||
Submit Prophecy | 10099201 | 1632 days ago | IN | 0 ETH | 0.00031315 | ||||
Submit Prophecy | 10086299 | 1634 days ago | IN | 0 ETH | 0.00031303 | ||||
Submit Prophecy | 10086268 | 1634 days ago | IN | 0 ETH | 0.00031327 | ||||
Submit Prophecy | 10085661 | 1634 days ago | IN | 0 ETH | 0.00031327 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
AaveOracle
Compiler Version
v0.5.6+commit.b259423e
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2020-03-23 */ // File: contracts/interfaces/IAaveOracle.sol pragma solidity ^0.5.0; interface IAaveOracle { // TODO rename back to getOracleProphecy function getAssetPrice(address _asset) external view returns (uint256); function prophecies(address _asset) external view returns (uint64, uint96, uint96); function submitProphecy(address _asset, uint96 _sybilProphecy, uint96 _oracleProphecy) external; function isSybilWhitelisted(address _sybil) external view returns (bool); } // File: contracts/AaveOracle.sol pragma solidity ^0.5.0; contract AaveOracle is IAaveOracle { struct TimestampedProphecy { uint64 timestamp; uint96 sybilProphecy; uint96 oracleProphecy; } event ProphecySubmitted( address indexed _sybil, address indexed _asset, uint96 _sybilProphecy, uint96 _oracleProphecy ); event SybilWhitelisted(address sybil); // Asset => price prophecy mapping(address => TimestampedProphecy) public prophecies; // Whitelisted sybils allowed to submit prices mapping(address => bool) private sybils; modifier onlySybil { require(isSybilWhitelisted(msg.sender), "INVALID_SYBIL"); _; } constructor(address[] memory _sybils) public { internalWhitelistSybils(_sybils); } /// @notice Internal function to whitelist a list of sybils /// @param _sybils The addresses of the sybils function internalWhitelistSybils(address[] memory _sybils) internal { for (uint256 i = 0; i < _sybils.length; i++) { sybils[_sybils[i]] = true; emit SybilWhitelisted(_sybils[i]); } } /// @notice Submits a new prophecy for an asset /// - Only callable by whitelisted sybils /// @param _asset The asset address /// @param _sybilProphecy The new individual prophecy of the sybil /// @param _oracleProphecy The offchain calculated prophecy from all the currently valid ones function submitProphecy(address _asset, uint96 _sybilProphecy, uint96 _oracleProphecy) external onlySybil { prophecies[_asset] = TimestampedProphecy(uint64(block.timestamp), _sybilProphecy, _oracleProphecy); emit ProphecySubmitted(msg.sender, _asset, _sybilProphecy, _oracleProphecy); } /// @notice Gets the current prophecy for an asset /// @param _asset The asset address function getAssetPrice(address _asset) external view returns (uint256) { return uint256(prophecies[_asset].oracleProphecy); } /// @notice Gets the data of the current prophecy for an asset /// @param _asset The asset address function getProphecy(address _asset) external view returns (uint64, uint96, uint96) { TimestampedProphecy memory _prophecy = prophecies[_asset]; return (_prophecy.timestamp, _prophecy.sybilProphecy, _prophecy.oracleProphecy); } /// @notice Return a bool with the whitelisting state of a sybil /// @param _sybil The address of the sybil function isSybilWhitelisted(address _sybil) public view returns (bool) { return sybils[_sybil]; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[{"name":"_sybil","type":"address"}],"name":"isSybilWhitelisted","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"prophecies","outputs":[{"name":"timestamp","type":"uint64"},{"name":"sybilProphecy","type":"uint96"},{"name":"oracleProphecy","type":"uint96"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_asset","type":"address"},{"name":"_sybilProphecy","type":"uint96"},{"name":"_oracleProphecy","type":"uint96"}],"name":"submitProphecy","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_asset","type":"address"}],"name":"getAssetPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_asset","type":"address"}],"name":"getProphecy","outputs":[{"name":"","type":"uint64"},{"name":"","type":"uint96"},{"name":"","type":"uint96"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_sybils","type":"address[]"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_sybil","type":"address"},{"indexed":true,"name":"_asset","type":"address"},{"indexed":false,"name":"_sybilProphecy","type":"uint96"},{"indexed":false,"name":"_oracleProphecy","type":"uint96"}],"name":"ProphecySubmitted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sybil","type":"address"}],"name":"SybilWhitelisted","type":"event"}]
Contract Creation Code
608060405234801561001057600080fd5b506040516105733803806105738339810180604052602081101561003357600080fd5b81019080805164010000000081111561004b57600080fd5b8201602081018481111561005e57600080fd5b815185602082028301116401000000008211171561007b57600080fd5b50509291905050506100928161009860201b60201c565b5061015c565b60005b81518110156101585760018060008484815181106100b557fe5b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff0219169083151502179055507fff9a774113b3a0de9ac85c77d65f2de5e46046024c441cad8745ffd1c6932bfd82828151811061012157fe5b602002602001015160405180826001600160a01b03166001600160a01b0316815260200191505060405180910390a160010161009b565b5050565b6104088061016b6000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c806330d454f01461005c57806362ac6fb714610096578063766aed89146100ef578063b3596f071461012e578063ca64bc5a14610166575b600080fd5b6100826004803603602081101561007257600080fd5b50356001600160a01b031661018c565b604080519115158252519081900360200190f35b6100bc600480360360208110156100ac57600080fd5b50356001600160a01b03166101aa565b6040805167ffffffffffffffff90941684526001600160601b039283166020850152911682820152519081900360600190f35b61012c6004803603606081101561010557600080fd5b506001600160a01b03813516906001600160601b03602082013581169160400135166101e2565b005b6101546004803603602081101561014457600080fd5b50356001600160a01b031661031f565b60408051918252519081900360200190f35b6100bc6004803603602081101561017c57600080fd5b50356001600160a01b031661034a565b6001600160a01b031660009081526001602052604090205460ff1690565b60006020819052908152604090205467ffffffffffffffff8116906001600160601b03600160401b8204811691600160a01b90041683565b6101eb3361018c565b61023f5760408051600160e51b62461bcd02815260206004820152600d60248201527f494e56414c49445f535942494c00000000000000000000000000000000000000604482015290519081900360640190fd5b6040805160608101825267ffffffffffffffff42811682526001600160601b0380861660208085018281528784168688018181526001600160a01b03808d1660008181528087528b902099518a54955193518916600160a01b0293909816600160401b0273ffffffffffffffffffffffff0000000000000000199890991667ffffffffffffffff19909516949094179690961696909617909416949094179094558451908152928301528251909233927ff21bcf26163cffc0eeff8a7639319158a06e71681e8504fde895c9822f4cc6bc929081900390910190a3505050565b6001600160a01b0316600090815260208190526040902054600160a01b90046001600160601b031690565b60008060006103576103bc565b505050506001600160a01b0316600090815260208181526040918290208251606081018452905467ffffffffffffffff81168083526001600160601b03600160401b83048116948401859052600160a01b909204909116919093018190529192909190565b60408051606081018252600080825260208201819052918101919091529056fea165627a7a72305820e354a63ae2b9d8349aefa4f889af10ac71dd103925c0d2759d5e4af5cb0191fe002900000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002000000000000000000000000ea7a98133424041461c0784affd708ef7ddc77d90000000000000000000000000f45333725de4059561a2fe7b201ed16f9a7a1da
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100575760003560e01c806330d454f01461005c57806362ac6fb714610096578063766aed89146100ef578063b3596f071461012e578063ca64bc5a14610166575b600080fd5b6100826004803603602081101561007257600080fd5b50356001600160a01b031661018c565b604080519115158252519081900360200190f35b6100bc600480360360208110156100ac57600080fd5b50356001600160a01b03166101aa565b6040805167ffffffffffffffff90941684526001600160601b039283166020850152911682820152519081900360600190f35b61012c6004803603606081101561010557600080fd5b506001600160a01b03813516906001600160601b03602082013581169160400135166101e2565b005b6101546004803603602081101561014457600080fd5b50356001600160a01b031661031f565b60408051918252519081900360200190f35b6100bc6004803603602081101561017c57600080fd5b50356001600160a01b031661034a565b6001600160a01b031660009081526001602052604090205460ff1690565b60006020819052908152604090205467ffffffffffffffff8116906001600160601b03600160401b8204811691600160a01b90041683565b6101eb3361018c565b61023f5760408051600160e51b62461bcd02815260206004820152600d60248201527f494e56414c49445f535942494c00000000000000000000000000000000000000604482015290519081900360640190fd5b6040805160608101825267ffffffffffffffff42811682526001600160601b0380861660208085018281528784168688018181526001600160a01b03808d1660008181528087528b902099518a54955193518916600160a01b0293909816600160401b0273ffffffffffffffffffffffff0000000000000000199890991667ffffffffffffffff19909516949094179690961696909617909416949094179094558451908152928301528251909233927ff21bcf26163cffc0eeff8a7639319158a06e71681e8504fde895c9822f4cc6bc929081900390910190a3505050565b6001600160a01b0316600090815260208190526040902054600160a01b90046001600160601b031690565b60008060006103576103bc565b505050506001600160a01b0316600090815260208181526040918290208251606081018452905467ffffffffffffffff81168083526001600160601b03600160401b83048116948401859052600160a01b909204909116919093018190529192909190565b60408051606081018252600080825260208201819052918101919091529056fea165627a7a72305820e354a63ae2b9d8349aefa4f889af10ac71dd103925c0d2759d5e4af5cb0191fe0029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002000000000000000000000000ea7a98133424041461c0784affd708ef7ddc77d90000000000000000000000000f45333725de4059561a2fe7b201ed16f9a7a1da
-----Decoded View---------------
Arg [0] : _sybils (address[]): 0xea7A98133424041461c0784afFD708Ef7dDc77D9,0x0F45333725dE4059561A2Fe7b201ed16f9A7a1da
-----Encoded View---------------
4 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000020
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000002
Arg [2] : 000000000000000000000000ea7a98133424041461c0784affd708ef7ddc77d9
Arg [3] : 0000000000000000000000000f45333725de4059561a2fe7b201ed16f9a7a1da
Deployed Bytecode Sourcemap
565:2637:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;565:2637:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3086:111;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;3086:111:0;-1:-1:-1;;;;;3086:111:0;;:::i;:::-;;;;;;;;;;;;;;;;;;988:57;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;988:57:0;-1:-1:-1;;;;;988:57:0;;:::i;:::-;;;;;;;;;;-1:-1:-1;;;;;988:57:0;;;;;;;;;;;;;;;;;;;;;;2040:309;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;2040:309:0;;;;-1:-1:-1;;;;;2040:309:0;;;;;;;;;;;;:::i;:::-;;2454:139;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2454:139:0;-1:-1:-1;;;;;2454:139:0;;:::i;:::-;;;;;;;;;;;;;;;;2710:250;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2710:250:0;-1:-1:-1;;;;;2710:250:0;;:::i;3086:111::-;-1:-1:-1;;;;;3175:14:0;3151:4;3175:14;;;:6;:14;;;;;;;;;3086:111::o;988:57::-;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;988:57:0;;;;;-1:-1:-1;;;988:57:0;;;;:::o;2040:309::-;1192:30;1211:10;1192:18;:30::i;:::-;1184:56;;;;;-1:-1:-1;;;;;1184:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;2178:77;;;;;;;;;2205:15;2178:77;;;;-1:-1:-1;;;;;2178:77:0;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2157:18:0;;;-1:-1:-1;2157:18:0;;;;;;;;;:98;;;;;;;;;;-1:-1:-1;;;2157:98:0;;;;;-1:-1:-1;;;2157:98:0;-1:-1:-1;;2157:98:0;;;;-1:-1:-1;;2157:98:0;;;;;;;;;;;;;;;;;;;;;;;;;2271:70;;;;;;;;;;;2157:18;;2289:10;;2271:70;;;;;;;;;;;2040:309;;;:::o;2454:139::-;-1:-1:-1;;;;;2551:18:0;2516:7;2551:18;;;;;;;;;;:33;-1:-1:-1;;;2551:33:0;;-1:-1:-1;;;;;2551:33:0;;2454:139::o;2710:250::-;2770:6;2778;2786;2805:36;;:::i;:::-;-1:-1:-1;;;;;;;;;2844:18:0;:10;:18;;;;;;;;;;;;2805:57;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;2805:57:0;;;;;;;;;;-1:-1:-1;;;2805:57:0;;;;;;;;;;;;;;;;;;2710:250::o;565:2637::-;;;;;;;;;-1:-1:-1;565:2637:0;;;;;;;;;;;;;;;;;:::o
Swarm Source
bzzr://e354a63ae2b9d8349aefa4f889af10ac71dd103925c0d2759d5e4af5cb0191fe
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.