Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 12,846 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
Value | ||||
---|---|---|---|---|---|---|---|---|---|
Poke | 19525613 | 25 hrs ago | IN | 0 ETH | 0.00427657 | ||||
Poke | 19518509 | 2 days ago | IN | 0 ETH | 0.00314055 | ||||
Poke | 19511335 | 3 days ago | IN | 0 ETH | 0.00242375 | ||||
Poke | 19504205 | 4 days ago | IN | 0 ETH | 0.00227431 | ||||
Poke | 19497080 | 5 days ago | IN | 0 ETH | 0.00259064 | ||||
Poke | 19489937 | 6 days ago | IN | 0 ETH | 0.00340993 | ||||
Poke | 19482306 | 7 days ago | IN | 0 ETH | 0.00389892 | ||||
Poke | 19456933 | 10 days ago | IN | 0 ETH | 0.00377108 | ||||
Poke | 19376553 | 22 days ago | IN | 0 ETH | 0.01058792 | ||||
Poke | 19347844 | 26 days ago | IN | 0 ETH | 0.00660696 | ||||
Poke | 19322211 | 29 days ago | IN | 0 ETH | 0.00550164 | ||||
Poke | 19284408 | 34 days ago | IN | 0 ETH | 0.0109275 | ||||
Poke | 19276211 | 36 days ago | IN | 0 ETH | 0.00429064 | ||||
Poke | 19261677 | 38 days ago | IN | 0 ETH | 0.00386324 | ||||
Poke | 19249783 | 39 days ago | IN | 0 ETH | 0.00246645 | ||||
Poke | 19209433 | 45 days ago | IN | 0 ETH | 0.00303489 | ||||
Poke | 19182918 | 49 days ago | IN | 0 ETH | 0.0073546 | ||||
Poke | 19171848 | 50 days ago | IN | 0 ETH | 0.00377396 | ||||
Poke | 19159385 | 52 days ago | IN | 0 ETH | 0.00151136 | ||||
Poke | 19149953 | 53 days ago | IN | 0 ETH | 0.00176581 | ||||
Poke | 19138129 | 55 days ago | IN | 0 ETH | 0.00225258 | ||||
Poke | 19123362 | 57 days ago | IN | 0 ETH | 0.00255891 | ||||
Poke | 19115400 | 58 days ago | IN | 0 ETH | 0.00259269 | ||||
Poke | 19105397 | 60 days ago | IN | 0 ETH | 0.00168671 | ||||
Poke | 19093211 | 61 days ago | IN | 0 ETH | 0.00222389 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
MedianETHBTC
Compiler Version
v0.5.12+commit.7709ece9
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2020-04-11 */ // Verified using https://dapp.tools // hevm: flattened sources of src/median.sol pragma solidity >=0.4.23 >=0.5.10; ////// src/median.sol /* pragma solidity >=0.5.10; */ contract LibNote { event LogNote( bytes4 indexed sig, address indexed usr, bytes32 indexed arg1, bytes32 indexed arg2, bytes data ) anonymous; modifier note { _; assembly { // log an 'anonymous' event with a constant 6 words of calldata // and four indexed topics: selector, caller, arg1 and arg2 let mark := msize // end of memory ensures zero mstore(0x40, add(mark, 288)) // update free memory pointer mstore(mark, 0x20) // bytes type data offset mstore(add(mark, 0x20), 224) // bytes size (padded) calldatacopy(add(mark, 0x40), 0, 224) // bytes payload log4(mark, 288, // calldata shl(224, shr(224, calldataload(0))), // msg.sig caller, // msg.sender calldataload(4), // arg1 calldataload(36) // arg2 ) } } } contract Median is LibNote { // --- Auth --- mapping (address => uint) public wards; function rely(address usr) external note auth { wards[usr] = 1; } function deny(address usr) external note auth { wards[usr] = 0; } modifier auth { require(wards[msg.sender] == 1, "Median/not-authorized"); _; } uint128 val; uint32 public age; bytes32 public constant wat = "ethusd"; // You want to change this every deploy uint256 public bar = 1; // Authorized oracles, set by an auth mapping (address => uint256) public orcl; // Whitelisted contracts, set by an auth mapping (address => uint256) public bud; // Mapping for at most 256 oracles mapping (uint8 => address) public slot; modifier toll { require(bud[msg.sender] == 1, "Median/contract-not-whitelisted"); _;} event LogMedianPrice(uint256 val, uint256 age); //Set type of Oracle constructor() public { wards[msg.sender] = 1; } function read() external view toll returns (uint256) { require(val > 0, "Median/invalid-price-feed"); return val; } function peek() external view toll returns (uint256,bool) { return (val, val > 0); } function recover(uint256 val_, uint256 age_, uint8 v, bytes32 r, bytes32 s) internal pure returns (address) { return ecrecover( keccak256(abi.encodePacked("\x19Ethereum Signed Message:\n32", keccak256(abi.encodePacked(val_, age_, wat)))), v, r, s ); } function poke( uint256[] calldata val_, uint256[] calldata age_, uint8[] calldata v, bytes32[] calldata r, bytes32[] calldata s) external { require(val_.length == bar, "Median/bar-too-low"); uint256 bloom = 0; uint256 last = 0; uint256 zzz = age; for (uint i = 0; i < val_.length; i++) { // Validate the values were signed by an authorized oracle address signer = recover(val_[i], age_[i], v[i], r[i], s[i]); // Check that signer is an oracle require(orcl[signer] == 1, "Median/invalid-oracle"); // Price feed age greater than last medianizer age require(age_[i] > zzz, "Median/stale-message"); // Check for ordered values require(val_[i] >= last, "Median/messages-not-in-order"); last = val_[i]; // Bloom filter for signer uniqueness uint8 sl = uint8(uint256(signer) >> 152); require((bloom >> sl) % 2 == 0, "Median/oracle-already-signed"); bloom += uint256(2) ** sl; } val = uint128(val_[val_.length >> 1]); age = uint32(block.timestamp); emit LogMedianPrice(val, age); } function lift(address[] calldata a) external note auth { for (uint i = 0; i < a.length; i++) { require(a[i] != address(0), "Median/no-oracle-0"); uint8 s = uint8(uint256(a[i]) >> 152); require(slot[s] == address(0), "Median/signer-already-exists"); orcl[a[i]] = 1; slot[s] = a[i]; } } function drop(address[] calldata a) external note auth { for (uint i = 0; i < a.length; i++) { orcl[a[i]] = 0; slot[uint8(uint256(a[i]) >> 152)] = address(0); } } function setBar(uint256 bar_) external note auth { require(bar_ > 0, "Median/quorum-is-zero"); require(bar_ % 2 != 0, "Median/quorum-not-odd-number"); bar = bar_; } function kiss(address a) external note auth { require(a != address(0), "Median/no-contract-0"); bud[a] = 1; } function diss(address a) external note auth { bud[a] = 0; } function kiss(address[] calldata a) external note auth { for(uint i = 0; i < a.length; i++) { require(a[i] != address(0), "Median/no-contract-0"); bud[a[i]] = 1; } } function diss(address[] calldata a) external note auth { for(uint i = 0; i < a.length; i++) { bud[a[i]] = 0; } } } contract MedianETHBTC is Median { bytes32 public constant wat = "ETHBTC"; function recover(uint256 val_, uint256 age_, uint8 v, bytes32 r, bytes32 s) internal pure returns (address) { return ecrecover( keccak256(abi.encodePacked("\x19Ethereum Signed Message:\n32", keccak256(abi.encodePacked(val_, age_, wat)))), v, r, s ); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"val","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"age","type":"uint256"}],"name":"LogMedianPrice","type":"event"},{"anonymous":true,"inputs":[{"indexed":true,"internalType":"bytes4","name":"sig","type":"bytes4"},{"indexed":true,"internalType":"address","name":"usr","type":"address"},{"indexed":true,"internalType":"bytes32","name":"arg1","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"arg2","type":"bytes32"},{"indexed":false,"internalType":"bytes","name":"data","type":"bytes"}],"name":"LogNote","type":"event"},{"constant":true,"inputs":[],"name":"age","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"bar","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"bud","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"usr","type":"address"}],"name":"deny","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address[]","name":"a","type":"address[]"}],"name":"diss","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"diss","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address[]","name":"a","type":"address[]"}],"name":"drop","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address[]","name":"a","type":"address[]"}],"name":"kiss","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"kiss","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address[]","name":"a","type":"address[]"}],"name":"lift","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"orcl","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"peek","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256[]","name":"val_","type":"uint256[]"},{"internalType":"uint256[]","name":"age_","type":"uint256[]"},{"internalType":"uint8[]","name":"v","type":"uint8[]"},{"internalType":"bytes32[]","name":"r","type":"bytes32[]"},{"internalType":"bytes32[]","name":"s","type":"bytes32[]"}],"name":"poke","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"read","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"usr","type":"address"}],"name":"rely","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"bar_","type":"uint256"}],"name":"setBar","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"uint8","name":"","type":"uint8"}],"name":"slot","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"wards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"wat","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"}]
Contract Creation Code
6080604090815260016002819055336000908152602081905291909120556115f08061002c6000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806365c4ce7a116100ad578063943181061161007157806394318106146105765780639c52a7f1146105e4578063bf353dbb1461060a578063f29c29c414610630578063febb0f7e1461065657610121565b806365c4ce7a146102d257806365fae35e146102f857806389bbb8b21461031e5780638d0e5a9a146104cc5780638ef5eaf01461050857610121565b806346d4577d116100f457806346d4577d1461020c5780634ca299231461027a5780634fce7a2a1461028257806357de26a4146102a857806359e02dd7146102b057610121565b8063020b2e32146101265780631b25b65f1461015e578063262a9dff146101ce578063352d3fba146101ef575b600080fd5b61014c6004803603602081101561013c57600080fd5b50356001600160a01b031661065e565b60405190815260200160405180910390f35b6101cc6004803603602081101561017457600080fd5b810190602081018135600160201b81111561018e57600080fd5b8201836020820111156101a057600080fd5b803590602001918460208302840111600160201b831117156101c157600080fd5b509092509050610672565b005b6101d66107c5565b60405163ffffffff909116815260200160405180910390f35b6101cc6004803603602081101561020557600080fd5b50356107d8565b6101cc6004803603602081101561022257600080fd5b810190602081018135600160201b81111561023c57600080fd5b82018360208201111561024e57600080fd5b803590602001918460208302840111600160201b8311171561026f57600080fd5b509092509050610908565b61014c6109af565b61014c6004803603602081101561029857600080fd5b50356001600160a01b03166109bc565b61014c6109d0565b6102b8610a9f565b604051918252151560208201526040908101905180910390f35b6101cc600480360360208110156102e857600080fd5b50356001600160a01b0316610b18565b6101cc6004803603602081101561030e57600080fd5b50356001600160a01b0316610bbc565b6101cc600480360360a081101561033457600080fd5b810190602081018135600160201b81111561034e57600080fd5b82018360208201111561036057600080fd5b803590602001918460208302840111600160201b8311171561038157600080fd5b919390929091602081019035600160201b81111561039e57600080fd5b8201836020820111156103b057600080fd5b803590602001918460208302840111600160201b831117156103d157600080fd5b919390929091602081019035600160201b8111156103ee57600080fd5b82018360208201111561040057600080fd5b803590602001918460208302840111600160201b8311171561042157600080fd5b919390929091602081019035600160201b81111561043e57600080fd5b82018360208201111561045057600080fd5b803590602001918460208302840111600160201b8311171561047157600080fd5b919390929091602081019035600160201b81111561048e57600080fd5b8201836020820111156104a057600080fd5b803590602001918460208302840111600160201b831117156104c157600080fd5b509092509050610c63565b6104ec600480360360208110156104e257600080fd5b503560ff16610fb0565b6040516001600160a01b03909116815260200160405180910390f35b6101cc6004803603602081101561051e57600080fd5b810190602081018135600160201b81111561053857600080fd5b82018360208201111561054a57600080fd5b803590602001918460208302840111600160201b8311171561056b57600080fd5b509092509050610fcd565b6101cc6004803603602081101561058c57600080fd5b810190602081018135600160201b8111156105a657600080fd5b8201836020820111156105b857600080fd5b803590602001918460208302840111600160201b831117156105d957600080fd5b5090925090506110d4565b6101cc600480360360208110156105fa57600080fd5b50356001600160a01b03166112e9565b61014c6004803603602081101561062057600080fd5b50356001600160a01b031661138d565b6101cc6004803603602081101561064657600080fd5b50356001600160a01b03166113a1565b61014c611499565b600360205280600052604060002054905081565b336000908152602081905260409020546001146106c35760405162461bcd60e51b8152602060048201526015602482015260008051602061159c833981519152604482015260640160405180910390fd5b60005b818110156107895760008383838181106106dc57fe5b905060200201356001600160a01b03166001600160a01b0316141561073e5760405162461bcd60e51b815260206004820152601460248201527304d656469616e2f6e6f2d636f6e74726163742d360641b604482015260640160405180910390fd5b60016004600085858581811061075057fe5b905060200201356001600160a01b03166001600160a01b03166001600160a01b03168152602001908152602001600020556001016106c6565b505961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a4505050565b600154600160801b900463ffffffff1681565b336000908152602081905260409020546001146108295760405162461bcd60e51b8152602060048201526015602482015260008051602061159c833981519152604482015260640160405180910390fd5b600081116108755760405162461bcd60e51b81526020600482015260156024820152744d656469616e2f71756f72756d2d69732d7a65726f60581b604482015260640160405180910390fd5b600281066108c95760405162461bcd60e51b815260206004820152601c60248201527f4d656469616e2f71756f72756d2d6e6f742d6f64642d6e756d62657200000000604482015260640160405180910390fd5b60028190555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b336000908152602081905260409020546001146109595760405162461bcd60e51b8152602060048201526015602482015260008051602061159c833981519152604482015260640160405180910390fd5b60005b818110156107895760006004600085858581811061097657fe5b905060200201356001600160a01b03166001600160a01b03166001600160a01b031681526020019081526020016000205560010161095c565b6545544842544360d01b81565b600460205280600052604060002054905081565b33600090815260046020526040812054600114610a335760405162461bcd60e51b815260206004820152601f60248201527f4d656469616e2f636f6e74726163742d6e6f742d77686974656c697374656400604482015260640160405180910390fd5b6001546001600160801b0316610a8f5760405162461bcd60e51b815260206004820152601960248201527f4d656469616e2f696e76616c69642d70726963652d6665656400000000000000604482015260640160405180910390fd5b506001546001600160801b031690565b3360009081526004602052806040812054600114610b035760405162461bcd60e51b815260206004820152601f60248201527f4d656469616e2f636f6e74726163742d6e6f742d77686974656c697374656400604482015260640160405180910390fd5b50506001546001600160801b03168015159091565b33600090815260208190526040902054600114610b695760405162461bcd60e51b8152602060048201526015602482015260008051602061159c833981519152604482015260640160405180910390fd5b6001600160a01b0381166000908152600460205260408120555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b33600090815260208190526040902054600114610c0d5760405162461bcd60e51b8152602060048201526015602482015260008051602061159c833981519152604482015260640160405180910390fd5b6001600160a01b0381166000908152602081905260019060409020555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b6002548914610cad5760405162461bcd60e51b81526020600482015260126024820152714d656469616e2f6261722d746f6f2d6c6f7760701b604482015260640160405180910390fd5b6001546000908190600160801b900463ffffffff16815b8c811015610eeb576000610d388f8f84818110610cdd57fe5b905060200201358e8e85818110610cf057fe5b905060200201358d8d86818110610d0357fe5b9050602002013560ff168c8c87818110610d1957fe5b905060200201358b8b88818110610d2c57fe5b9050602002013561149f565b6001600160a01b038116600090815260036020529091506040902054600114610d9f5760405162461bcd60e51b81526020600482015260156024820152744d656469616e2f696e76616c69642d6f7261636c6560581b604482015260640160405180910390fd5b828d8d84818110610dac57fe5b9050602002013511610dfb5760405162461bcd60e51b81526020600482015260146024820152734d656469616e2f7374616c652d6d65737361676560601b604482015260640160405180910390fd5b838f8f84818110610e0857fe5b905060200201351015610e615760405162461bcd60e51b815260206004820152601c60248201527f4d656469616e2f6d657373616765732d6e6f742d696e2d6f7264657200000000604482015260640160405180910390fd5b8e8e83818110610e6d57fe5b602002919091013594505060ff609882901c16600286821c0615610ed75760405162461bcd60e51b815260206004820152601c60248201527f4d656469616e2f6f7261636c652d616c72656164792d7369676e656400000000604482015260640160405180910390fd5b60ff1660020a949094019350600101610cc4565b508c8c600181901c818110610efc57fe5b600180546fffffffffffffffffffffffffffffffff191660209290920293909301356001600160801b039081169190911763ffffffff60801b1916600160801b4263ffffffff908116820292909217948590557fb78ebc573f1f889ca9e1e0fb62c843c836f3d3a2e1f43ef62940e9b894f4ea4c949283169350909104166040516001600160801b03909216825263ffffffff1660208201526040908101905180910390a150505050505050505050505050565b6005602052806000526040600020546001600160a01b0316905081565b3360009081526020819052604090205460011461101e5760405162461bcd60e51b8152602060048201526015602482015260008051602061159c833981519152604482015260640160405180910390fd5b60005b818110156107895760006003600085858581811061103b57fe5b905060200201356001600160a01b03166001600160a01b03166001600160a01b03168152602001908152602001600020556000600581609886868681811061107f57fe5b905060200201356001600160a01b03166001600160a01b0316901c60ff1660ff16815260200190815260200160002080546001600160a01b0319166001600160a01b0392909216919091179055600101611021565b336000908152602081905260409020546001146111255760405162461bcd60e51b8152602060048201526015602482015260008051602061159c833981519152604482015260640160405180910390fd5b60005b8181101561078957600083838381811061113e57fe5b905060200201356001600160a01b03166001600160a01b0316141561119e5760405162461bcd60e51b815260206004820152601260248201527104d656469616e2f6e6f2d6f7261636c652d360741b604482015260640160405180910390fd5b600060988484848181106111ae57fe5b905060200201356001600160a01b03166001600160a01b0316901c905060006001600160a01b0316600560008360ff1660ff168152602001908152602001600020546001600160a01b03161461124a5760405162461bcd60e51b815260206004820152601c60248201527f4d656469616e2f7369676e65722d616c72656164792d65786973747300000000604482015260640160405180910390fd5b60016003600086868681811061125c57fe5b905060200201356001600160a01b03166001600160a01b03166001600160a01b031681526020019081526020016000205583838381811061129957fe5b905060200201356001600160a01b0316600560008360ff1660ff16815260200190815260200160002080546001600160a01b0319166001600160a01b039290921691909117905550600101611128565b3360009081526020819052604090205460011461133a5760405162461bcd60e51b8152602060048201526015602482015260008051602061159c833981519152604482015260640160405180910390fd5b6001600160a01b0381166000908152602081905260408120555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b600060205280600052604060002054905081565b336000908152602081905260409020546001146113f25760405162461bcd60e51b8152602060048201526015602482015260008051602061159c833981519152604482015260640160405180910390fd5b6001600160a01b0381166114435760405162461bcd60e51b815260206004820152601460248201527304d656469616e2f6e6f2d636f6e74726163742d360641b604482015260640160405180910390fd5b6001600160a01b0381166000908152600460205260019060409020555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b60025481565b6000600186866545544842544360d01b604051602001808481526020018381526020018281526020019350505050604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c810191909152605c016040516020818303038152906040528051906020012085858560405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015611587573d6000803e3d6000fd5b50505060206040510351969550505050505056fe4d656469616e2f6e6f742d617574686f72697a65640000000000000000000000a265627a7a723158205d97cd29080a662659b0148ece1d69f65d038478b1dc3db0e0a9a5b3f31c8c7064736f6c634300050c0032
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101215760003560e01c806365c4ce7a116100ad578063943181061161007157806394318106146105765780639c52a7f1146105e4578063bf353dbb1461060a578063f29c29c414610630578063febb0f7e1461065657610121565b806365c4ce7a146102d257806365fae35e146102f857806389bbb8b21461031e5780638d0e5a9a146104cc5780638ef5eaf01461050857610121565b806346d4577d116100f457806346d4577d1461020c5780634ca299231461027a5780634fce7a2a1461028257806357de26a4146102a857806359e02dd7146102b057610121565b8063020b2e32146101265780631b25b65f1461015e578063262a9dff146101ce578063352d3fba146101ef575b600080fd5b61014c6004803603602081101561013c57600080fd5b50356001600160a01b031661065e565b60405190815260200160405180910390f35b6101cc6004803603602081101561017457600080fd5b810190602081018135600160201b81111561018e57600080fd5b8201836020820111156101a057600080fd5b803590602001918460208302840111600160201b831117156101c157600080fd5b509092509050610672565b005b6101d66107c5565b60405163ffffffff909116815260200160405180910390f35b6101cc6004803603602081101561020557600080fd5b50356107d8565b6101cc6004803603602081101561022257600080fd5b810190602081018135600160201b81111561023c57600080fd5b82018360208201111561024e57600080fd5b803590602001918460208302840111600160201b8311171561026f57600080fd5b509092509050610908565b61014c6109af565b61014c6004803603602081101561029857600080fd5b50356001600160a01b03166109bc565b61014c6109d0565b6102b8610a9f565b604051918252151560208201526040908101905180910390f35b6101cc600480360360208110156102e857600080fd5b50356001600160a01b0316610b18565b6101cc6004803603602081101561030e57600080fd5b50356001600160a01b0316610bbc565b6101cc600480360360a081101561033457600080fd5b810190602081018135600160201b81111561034e57600080fd5b82018360208201111561036057600080fd5b803590602001918460208302840111600160201b8311171561038157600080fd5b919390929091602081019035600160201b81111561039e57600080fd5b8201836020820111156103b057600080fd5b803590602001918460208302840111600160201b831117156103d157600080fd5b919390929091602081019035600160201b8111156103ee57600080fd5b82018360208201111561040057600080fd5b803590602001918460208302840111600160201b8311171561042157600080fd5b919390929091602081019035600160201b81111561043e57600080fd5b82018360208201111561045057600080fd5b803590602001918460208302840111600160201b8311171561047157600080fd5b919390929091602081019035600160201b81111561048e57600080fd5b8201836020820111156104a057600080fd5b803590602001918460208302840111600160201b831117156104c157600080fd5b509092509050610c63565b6104ec600480360360208110156104e257600080fd5b503560ff16610fb0565b6040516001600160a01b03909116815260200160405180910390f35b6101cc6004803603602081101561051e57600080fd5b810190602081018135600160201b81111561053857600080fd5b82018360208201111561054a57600080fd5b803590602001918460208302840111600160201b8311171561056b57600080fd5b509092509050610fcd565b6101cc6004803603602081101561058c57600080fd5b810190602081018135600160201b8111156105a657600080fd5b8201836020820111156105b857600080fd5b803590602001918460208302840111600160201b831117156105d957600080fd5b5090925090506110d4565b6101cc600480360360208110156105fa57600080fd5b50356001600160a01b03166112e9565b61014c6004803603602081101561062057600080fd5b50356001600160a01b031661138d565b6101cc6004803603602081101561064657600080fd5b50356001600160a01b03166113a1565b61014c611499565b600360205280600052604060002054905081565b336000908152602081905260409020546001146106c35760405162461bcd60e51b8152602060048201526015602482015260008051602061159c833981519152604482015260640160405180910390fd5b60005b818110156107895760008383838181106106dc57fe5b905060200201356001600160a01b03166001600160a01b0316141561073e5760405162461bcd60e51b815260206004820152601460248201527304d656469616e2f6e6f2d636f6e74726163742d360641b604482015260640160405180910390fd5b60016004600085858581811061075057fe5b905060200201356001600160a01b03166001600160a01b03166001600160a01b03168152602001908152602001600020556001016106c6565b505961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a4505050565b600154600160801b900463ffffffff1681565b336000908152602081905260409020546001146108295760405162461bcd60e51b8152602060048201526015602482015260008051602061159c833981519152604482015260640160405180910390fd5b600081116108755760405162461bcd60e51b81526020600482015260156024820152744d656469616e2f71756f72756d2d69732d7a65726f60581b604482015260640160405180910390fd5b600281066108c95760405162461bcd60e51b815260206004820152601c60248201527f4d656469616e2f71756f72756d2d6e6f742d6f64642d6e756d62657200000000604482015260640160405180910390fd5b60028190555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b336000908152602081905260409020546001146109595760405162461bcd60e51b8152602060048201526015602482015260008051602061159c833981519152604482015260640160405180910390fd5b60005b818110156107895760006004600085858581811061097657fe5b905060200201356001600160a01b03166001600160a01b03166001600160a01b031681526020019081526020016000205560010161095c565b6545544842544360d01b81565b600460205280600052604060002054905081565b33600090815260046020526040812054600114610a335760405162461bcd60e51b815260206004820152601f60248201527f4d656469616e2f636f6e74726163742d6e6f742d77686974656c697374656400604482015260640160405180910390fd5b6001546001600160801b0316610a8f5760405162461bcd60e51b815260206004820152601960248201527f4d656469616e2f696e76616c69642d70726963652d6665656400000000000000604482015260640160405180910390fd5b506001546001600160801b031690565b3360009081526004602052806040812054600114610b035760405162461bcd60e51b815260206004820152601f60248201527f4d656469616e2f636f6e74726163742d6e6f742d77686974656c697374656400604482015260640160405180910390fd5b50506001546001600160801b03168015159091565b33600090815260208190526040902054600114610b695760405162461bcd60e51b8152602060048201526015602482015260008051602061159c833981519152604482015260640160405180910390fd5b6001600160a01b0381166000908152600460205260408120555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b33600090815260208190526040902054600114610c0d5760405162461bcd60e51b8152602060048201526015602482015260008051602061159c833981519152604482015260640160405180910390fd5b6001600160a01b0381166000908152602081905260019060409020555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b6002548914610cad5760405162461bcd60e51b81526020600482015260126024820152714d656469616e2f6261722d746f6f2d6c6f7760701b604482015260640160405180910390fd5b6001546000908190600160801b900463ffffffff16815b8c811015610eeb576000610d388f8f84818110610cdd57fe5b905060200201358e8e85818110610cf057fe5b905060200201358d8d86818110610d0357fe5b9050602002013560ff168c8c87818110610d1957fe5b905060200201358b8b88818110610d2c57fe5b9050602002013561149f565b6001600160a01b038116600090815260036020529091506040902054600114610d9f5760405162461bcd60e51b81526020600482015260156024820152744d656469616e2f696e76616c69642d6f7261636c6560581b604482015260640160405180910390fd5b828d8d84818110610dac57fe5b9050602002013511610dfb5760405162461bcd60e51b81526020600482015260146024820152734d656469616e2f7374616c652d6d65737361676560601b604482015260640160405180910390fd5b838f8f84818110610e0857fe5b905060200201351015610e615760405162461bcd60e51b815260206004820152601c60248201527f4d656469616e2f6d657373616765732d6e6f742d696e2d6f7264657200000000604482015260640160405180910390fd5b8e8e83818110610e6d57fe5b602002919091013594505060ff609882901c16600286821c0615610ed75760405162461bcd60e51b815260206004820152601c60248201527f4d656469616e2f6f7261636c652d616c72656164792d7369676e656400000000604482015260640160405180910390fd5b60ff1660020a949094019350600101610cc4565b508c8c600181901c818110610efc57fe5b600180546fffffffffffffffffffffffffffffffff191660209290920293909301356001600160801b039081169190911763ffffffff60801b1916600160801b4263ffffffff908116820292909217948590557fb78ebc573f1f889ca9e1e0fb62c843c836f3d3a2e1f43ef62940e9b894f4ea4c949283169350909104166040516001600160801b03909216825263ffffffff1660208201526040908101905180910390a150505050505050505050505050565b6005602052806000526040600020546001600160a01b0316905081565b3360009081526020819052604090205460011461101e5760405162461bcd60e51b8152602060048201526015602482015260008051602061159c833981519152604482015260640160405180910390fd5b60005b818110156107895760006003600085858581811061103b57fe5b905060200201356001600160a01b03166001600160a01b03166001600160a01b03168152602001908152602001600020556000600581609886868681811061107f57fe5b905060200201356001600160a01b03166001600160a01b0316901c60ff1660ff16815260200190815260200160002080546001600160a01b0319166001600160a01b0392909216919091179055600101611021565b336000908152602081905260409020546001146111255760405162461bcd60e51b8152602060048201526015602482015260008051602061159c833981519152604482015260640160405180910390fd5b60005b8181101561078957600083838381811061113e57fe5b905060200201356001600160a01b03166001600160a01b0316141561119e5760405162461bcd60e51b815260206004820152601260248201527104d656469616e2f6e6f2d6f7261636c652d360741b604482015260640160405180910390fd5b600060988484848181106111ae57fe5b905060200201356001600160a01b03166001600160a01b0316901c905060006001600160a01b0316600560008360ff1660ff168152602001908152602001600020546001600160a01b03161461124a5760405162461bcd60e51b815260206004820152601c60248201527f4d656469616e2f7369676e65722d616c72656164792d65786973747300000000604482015260640160405180910390fd5b60016003600086868681811061125c57fe5b905060200201356001600160a01b03166001600160a01b03166001600160a01b031681526020019081526020016000205583838381811061129957fe5b905060200201356001600160a01b0316600560008360ff1660ff16815260200190815260200160002080546001600160a01b0319166001600160a01b039290921691909117905550600101611128565b3360009081526020819052604090205460011461133a5760405162461bcd60e51b8152602060048201526015602482015260008051602061159c833981519152604482015260640160405180910390fd5b6001600160a01b0381166000908152602081905260408120555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b600060205280600052604060002054905081565b336000908152602081905260409020546001146113f25760405162461bcd60e51b8152602060048201526015602482015260008051602061159c833981519152604482015260640160405180910390fd5b6001600160a01b0381166114435760405162461bcd60e51b815260206004820152601460248201527304d656469616e2f6e6f2d636f6e74726163742d360641b604482015260640160405180910390fd5b6001600160a01b0381166000908152600460205260019060409020555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b60025481565b6000600186866545544842544360d01b604051602001808481526020018381526020018281526020019350505050604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c810191909152605c016040516020818303038152906040528051906020012085858560405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015611587573d6000803e3d6000fd5b50505060206040510351969550505050505056fe4d656469616e2f6e6f742d617574686f72697a65640000000000000000000000a265627a7a723158205d97cd29080a662659b0148ece1d69f65d038478b1dc3db0e0a9a5b3f31c8c7064736f6c634300050c0032
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 24 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
[ 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.