Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
OSM
Compiler Version
v0.5.12+commit.7709ece9
Contract Source Code (Solidity Standard Json-Input format)
/// osm.sol
// Copyright (C) 2018-2020 Maker Ecosystem Growth Holdings, INC.
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
pragma solidity >=0.5.10;
import "ds-value/value.sol";
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 OSM 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, "OSM/not-authorized");
_;
}
// --- Stop ---
uint256 public stopped;
modifier stoppable { require(stopped == 0, "OSM/is-stopped"); _; }
// --- Math ---
function add(uint64 x, uint64 y) internal pure returns (uint64 z) {
z = x + y;
require(z >= x);
}
address public src;
uint16 constant ONE_HOUR = uint16(3600);
uint16 public hop = ONE_HOUR;
uint64 public zzz;
struct Feed {
uint128 val;
uint128 has;
}
Feed cur;
Feed nxt;
// Whitelisted contracts, set by an auth
mapping (address => uint256) public bud;
modifier toll { require(bud[msg.sender] == 1, "OSM/contract-not-whitelisted"); _; }
event LogValue(bytes32 val);
constructor (address src_) public {
wards[msg.sender] = 1;
src = src_;
}
function stop() external note auth {
stopped = 1;
}
function start() external note auth {
stopped = 0;
}
function change(address src_) external note auth {
src = src_;
}
function era() internal view returns (uint) {
return block.timestamp;
}
function prev(uint ts) internal view returns (uint64) {
require(hop != 0, "OSM/hop-is-zero");
return uint64(ts - (ts % hop));
}
function step(uint16 ts) external auth {
require(ts > 0, "OSM/ts-is-zero");
hop = ts;
}
function void() external note auth {
cur = nxt = Feed(0, 0);
stopped = 1;
}
function pass() public view returns (bool ok) {
return era() >= add(zzz, hop);
}
function poke() external note stoppable {
require(pass(), "OSM/not-passed");
(bytes32 wut, bool ok) = DSValue(src).peek();
if (ok) {
cur = nxt;
nxt = Feed(uint128(uint(wut)), 1);
zzz = prev(era());
emit LogValue(bytes32(uint(cur.val)));
}
}
function peek() external view toll returns (bytes32,bool) {
return (bytes32(uint(cur.val)), cur.has == 1);
}
function peep() external view toll returns (bytes32,bool) {
return (bytes32(uint(nxt.val)), nxt.has == 1);
}
function read() external view toll returns (bytes32) {
require(cur.has == 1, "OSM/no-current-value");
return (bytes32(uint(cur.val)));
}
function kiss(address a) external note auth {
require(a != address(0), "OSM/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), "OSM/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;
}
}
}/// value.sol - a value is a simple thing, it can be get and set
// Copyright (C) 2017 DappHub, LLC
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
pragma solidity >=0.4.23;
import 'ds-thing/thing.sol';
contract DSValue is DSThing {
bool has;
bytes32 val;
function peek() public view returns (bytes32, bool) {
return (val,has);
}
function read() public view returns (bytes32) {
bytes32 wut; bool haz;
(wut, haz) = peek();
require(haz, "haz-not");
return wut;
}
function poke(bytes32 wut) public note auth {
val = wut;
has = true;
}
function void() public note auth { // unset the value
has = false;
}
}// thing.sol - `auth` with handy mixins. your things should be DSThings
// Copyright (C) 2017 DappHub, LLC
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
pragma solidity >=0.4.23;
import 'ds-auth/auth.sol';
import 'ds-note/note.sol';
import 'ds-math/math.sol';
contract DSThing is DSAuth, DSNote, DSMath {
function S(string memory s) internal pure returns (bytes4) {
return bytes4(keccak256(abi.encodePacked(s)));
}
}// SPDX-License-Identifier: GNU-3
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
pragma solidity >=0.4.23;
interface DSAuthority {
function canCall(
address src, address dst, bytes4 sig
) external view returns (bool);
}
contract DSAuthEvents {
event LogSetAuthority (address indexed authority);
event LogSetOwner (address indexed owner);
}
contract DSAuth is DSAuthEvents {
DSAuthority public authority;
address public owner;
constructor() public {
owner = msg.sender;
emit LogSetOwner(msg.sender);
}
function setOwner(address owner_)
public
auth
{
owner = owner_;
emit LogSetOwner(owner);
}
function setAuthority(DSAuthority authority_)
public
auth
{
authority = authority_;
emit LogSetAuthority(address(authority));
}
modifier auth {
require(isAuthorized(msg.sender, msg.sig), "ds-auth-unauthorized");
_;
}
function isAuthorized(address src, bytes4 sig) internal view returns (bool) {
if (src == address(this)) {
return true;
} else if (src == owner) {
return true;
} else if (authority == DSAuthority(address(0))) {
return false;
} else {
return authority.canCall(src, address(this), sig);
}
}
}/// note.sol -- the `note' modifier, for logging calls as events
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
pragma solidity >=0.4.23;
contract DSNote {
event LogNote(
bytes4 indexed sig,
address indexed guy,
bytes32 indexed foo,
bytes32 indexed bar,
uint256 wad,
bytes fax
) anonymous;
modifier note {
bytes32 foo;
bytes32 bar;
uint256 wad;
assembly {
foo := calldataload(4)
bar := calldataload(36)
wad := callvalue()
}
_;
emit LogNote(msg.sig, msg.sender, foo, bar, wad, msg.data);
}
}/// math.sol -- mixin for inline numerical wizardry
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
pragma solidity >0.4.13;
contract DSMath {
function add(uint x, uint y) internal pure returns (uint z) {
require((z = x + y) >= x, "ds-math-add-overflow");
}
function sub(uint x, uint y) internal pure returns (uint z) {
require((z = x - y) <= x, "ds-math-sub-underflow");
}
function mul(uint x, uint y) internal pure returns (uint z) {
require(y == 0 || (z = x * y) / y == x, "ds-math-mul-overflow");
}
function min(uint x, uint y) internal pure returns (uint z) {
return x <= y ? x : y;
}
function max(uint x, uint y) internal pure returns (uint z) {
return x >= y ? x : y;
}
function imin(int x, int y) internal pure returns (int z) {
return x <= y ? x : y;
}
function imax(int x, int y) internal pure returns (int z) {
return x >= y ? x : y;
}
uint constant WAD = 10 ** 18;
uint constant RAY = 10 ** 27;
//rounds to zero if x*y < WAD / 2
function wmul(uint x, uint y) internal pure returns (uint z) {
z = add(mul(x, y), WAD / 2) / WAD;
}
//rounds to zero if x*y < WAD / 2
function rmul(uint x, uint y) internal pure returns (uint z) {
z = add(mul(x, y), RAY / 2) / RAY;
}
//rounds to zero if x*y < WAD / 2
function wdiv(uint x, uint y) internal pure returns (uint z) {
z = add(mul(x, WAD), y / 2) / y;
}
//rounds to zero if x*y < RAY / 2
function rdiv(uint x, uint y) internal pure returns (uint z) {
z = add(mul(x, RAY), y / 2) / y;
}
// This famous algorithm is called "exponentiation by squaring"
// and calculates x^n with x as fixed-point and n as regular unsigned.
//
// It's O(log n), instead of O(n) for naive repeated multiplication.
//
// These facts are why it works:
//
// If n is even, then x^n = (x^2)^(n/2).
// If n is odd, then x^n = x * x^(n-1),
// and applying the equation for even x gives
// x^n = x * (x^2)^((n-1) / 2).
//
// Also, EVM division is flooring and
// floor[(n-1) / 2] = floor[n / 2].
//
function rpow(uint x, uint n) internal pure returns (uint z) {
z = n % 2 != 0 ? x : RAY;
for (n /= 2; n != 0; n /= 2) {
x = rmul(x, x);
if (n % 2 != 0) {
z = rmul(z, x);
}
}
}
}{
"remappings": [
"ds-auth/=lib/ds-stop/lib/ds-auth/src/",
"ds-math/=lib/ds-value/lib/ds-thing/lib/ds-math/src/",
"ds-note/=lib/ds-stop/lib/ds-note/src/",
"ds-stop/=lib/ds-stop/src/",
"ds-thing/=lib/ds-value/lib/ds-thing/src/",
"ds-value/=lib/ds-value/src/"
],
"optimizer": {
"enabled": true,
"runs": 200
},
"metadata": {
"useLiteralContent": false
},
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"abi"
]
}
},
"evmVersion": "petersburg",
"libraries": {}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"src_","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"val","type":"bytes32"}],"name":"LogValue","type":"event"},{"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":"src_","type":"address"}],"name":"change","outputs":[],"payable":false,"stateMutability":"nonpayable","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":true,"inputs":[],"name":"hop","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"payable":false,"stateMutability":"view","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":true,"inputs":[],"name":"pass","outputs":[{"internalType":"bool","name":"ok","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"peek","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"peep","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"poke","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"read","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"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":true,"inputs":[],"name":"src","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"start","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint16","name":"ts","type":"uint16"}],"name":"step","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"stop","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"stopped","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"void","outputs":[],"payable":false,"stateMutability":"nonpayable","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":"zzz","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"payable":false,"stateMutability":"view","type":"function"}]Contract Creation Code
60806040526002805461ffff60a01b1916750e10000000000000000000000000000000000000000017905534801561003657600080fd5b5060405161131e38038061131e8339818101604052602081101561005957600080fd5b505133600090815260208190526040902060019055600280546001600160a01b039092166001600160a01b03199092169190911790556112808061009e6000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c806365fae35e116100b8578063ac4c25b21161007c578063ac4c25b2146103a8578063b0b8579b146103b0578063be9a6555146103cf578063bf353dbb146103d7578063e38e2cfb146103fd578063f29c29c41461041e57610142565b806365fae35e1461031357806375f12b21146103395780639c52a7f114610341578063a4dff0a214610367578063a7a1ed721461038c57610142565b80632e7dc6af1161010a5780632e7dc6af1461021157806346d4577d146102355780634fce7a2a146102a557806357de26a4146102dd57806359e02dd7146102e557806365c4ce7a146102ed57610142565b806307da68f5146101475780630e5a6c701461015157806318178358146101735780631b25b65f1461017b5780631e77933e146101eb575b600080fd5b61014f610444565b005b6101596104d2565b604051918252151560208201526040908101905180910390f35b61014f610556565b61014f6004803603602081101561019157600080fd5b8101906020810181356401000000008111156101ac57600080fd5b8201836020820111156101be57600080fd5b803590602001918460208302840111640100000000831117156101e057600080fd5b5090925090506107b7565b61014f6004803603602081101561020157600080fd5b50356001600160a01b0316610907565b6102196109ad565b6040516001600160a01b03909116815260200160405180910390f35b61014f6004803603602081101561024b57600080fd5b81019060208101813564010000000081111561026657600080fd5b82018360208201111561027857600080fd5b8035906020019184602083028401116401000000008311171561029a57600080fd5b5090925090506109bc565b6102cb600480360360208110156102bb57600080fd5b50356001600160a01b0316610a63565b60405190815260200160405180910390f35b6102cb610a77565b610159610b47565b61014f6004803603602081101561030357600080fd5b50356001600160a01b0316610bcb565b61014f6004803603602081101561032957600080fd5b50356001600160a01b0316610c6f565b6102cb610d16565b61014f6004803603602081101561035757600080fd5b50356001600160a01b0316610d1c565b61036f610dc0565b60405167ffffffffffffffff909116815260200160405180910390f35b610394610dd7565b604051901515815260200160405180910390f35b61014f610e1c565b6103b8610f2d565b60405161ffff909116815260200160405180910390f35b61014f610f3e565b6102cb600480360360208110156103ed57600080fd5b50356001600160a01b0316610fcd565b61014f6004803603602081101561041357600080fd5b503561ffff16610fe1565b61014f6004803603602081101561043457600080fd5b50356001600160a01b031661109d565b336000908152602081905260409020546001146104955760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b600180555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a450565b33600090815260056020528060408120546001146105365760405162461bcd60e51b815260206004820152601c60248201527f4f534d2f636f6e74726163742d6e6f742d77686974656c697374656400000000604482015260640160405180910390fd5b50506004546001600160801b0380821691600160801b9004166001149091565b6001541561059b5760405162461bcd60e51b815260206004820152600e60248201526d13d4d34bda5ccb5cdd1bdc1c195960921b604482015260640160405180910390fd5b6105a3610dd7565b6105e45760405162461bcd60e51b815260206004820152600e60248201526d13d4d34bdb9bdd0b5c185cdcd95960921b604482015260640160405180910390fd5b60025460009081906001600160a01b03166359e02dd76040518163ffffffff1660e01b8152600401604080518083038186803b15801561062357600080fd5b505afa158015610637573d6000803e3d6000fd5b505050506040513d604081101561064d57600080fd5b8101908080519291906020018051939550929350508215915061077c90505760045460038054600160801b8084046001600160801b039081169091026001600160801b031990921693811693909317909216919091179055604051604080820190526001600160801b0383168152600160208201526004815181546001600160801b0319166001600160801b0391909116178155602082015181546001600160801b03918216600160801b0291161790555061070f61070a611192565b611196565b6002805467ffffffffffffffff92909216600160b01b0267ffffffffffffffff60b01b199092169190911790556003547f296ba4ca62c6c21c95e828080cb8aec7481b71390585605300a8a76f9e95b527906001600160801b031660405190815260200160405180910390a15b50505961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a450565b336000908152602081905260409020546001146108085760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b60005b818110156108cb57600083838381811061082157fe5b905060200201356001600160a01b03166001600160a01b031614156108805760405162461bcd60e51b815260206004820152601160248201527004f534d2f6e6f2d636f6e74726163742d3607c1b604482015260640160405180910390fd5b60016005600085858581811061089257fe5b905060200201356001600160a01b03166001600160a01b03166001600160a01b031681526020019081526020016000205560010161080b565b505961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a4505050565b336000908152602081905260409020546001146109585760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b600280546001600160a01b0319166001600160a01b0383161790555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b6002546001600160a01b031681565b33600090815260208190526040902054600114610a0d5760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b60005b818110156108cb57600060056000858585818110610a2a57fe5b905060200201356001600160a01b03166001600160a01b03166001600160a01b0316815260200190815260200160002055600101610a10565b600560205280600052604060002054905081565b33600090815260056020526040812054600114610ada5760405162461bcd60e51b815260206004820152601c60248201527f4f534d2f636f6e74726163742d6e6f742d77686974656c697374656400000000604482015260640160405180910390fd5b600354600160801b90046001600160801b0316600114610b375760405162461bcd60e51b81526020600482015260146024820152734f534d2f6e6f2d63757272656e742d76616c756560601b604482015260640160405180910390fd5b506003546001600160801b031690565b3360009081526005602052806040812054600114610bab5760405162461bcd60e51b815260206004820152601c60248201527f4f534d2f636f6e74726163742d6e6f742d77686974656c697374656400000000604482015260640160405180910390fd5b50506003546001600160801b0380821691600160801b9004166001149091565b33600090815260208190526040902054600114610c1c5760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b6001600160a01b0381166000908152600560205260408120555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b33600090815260208190526040902054600114610cc05760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b6001600160a01b0381166000908152602081905260019060409020555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b60015481565b33600090815260208190526040902054600114610d6d5760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b6001600160a01b0381166000908152602081905260408120555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b600254600160b01b900467ffffffffffffffff1681565b600254600090610e0390600160b01b810467ffffffffffffffff1690600160a01b900461ffff16611208565b67ffffffffffffffff16610e15611192565b1015905090565b33600090815260208190526040902054600114610e6d5760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b60405160408082019052600080825260208201526004815181546001600160801b0319166001600160801b0391909116178155602082015181546001600160801b03908116600160801b928216830217808455600380549183166001600160801b03199092169190911780825593549382169383900490911690910291909117905550600180555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a450565b600254600160a01b900461ffff1681565b33600090815260208190526040902054600114610f8f5760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b60006001555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a450565b600060205280600052604060002054905081565b336000908152602081905260409020546001146110325760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b60008161ffff161161107b5760405162461bcd60e51b815260206004820152600e60248201526d4f534d2f74732d69732d7a65726f60901b604482015260640160405180910390fd5b6002805461ffff909216600160a01b0261ffff60a01b19909216919091179055565b336000908152602081905260409020546001146110ee5760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b6001600160a01b03811661113c5760405162461bcd60e51b815260206004820152601160248201527004f534d2f6e6f2d636f6e74726163742d3607c1b604482015260640160405180910390fd5b6001600160a01b0381166000908152600560205260019060409020555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b4290565b600254600090600160a01b900461ffff166111e95760405162461bcd60e51b815260206004820152600f60248201526e4f534d2f686f702d69732d7a65726f60881b604482015260640160405180910390fd5b600254600160a01b900461ffff1682816111ff57fe5b06909103919050565b81810167ffffffffffffffff808416908216101561122557600080fd5b9291505056fe4f534d2f6e6f742d617574686f72697a65640000000000000000000000000000a265627a7a72315820eacacb6d29568fd167522843265786e2015acaaee0fb5acba48631e91269b9bc64736f6c634300050c0032000000000000000000000000c2ffbbdccf1466eb8968a846179191cb881ecdff
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101425760003560e01c806365fae35e116100b8578063ac4c25b21161007c578063ac4c25b2146103a8578063b0b8579b146103b0578063be9a6555146103cf578063bf353dbb146103d7578063e38e2cfb146103fd578063f29c29c41461041e57610142565b806365fae35e1461031357806375f12b21146103395780639c52a7f114610341578063a4dff0a214610367578063a7a1ed721461038c57610142565b80632e7dc6af1161010a5780632e7dc6af1461021157806346d4577d146102355780634fce7a2a146102a557806357de26a4146102dd57806359e02dd7146102e557806365c4ce7a146102ed57610142565b806307da68f5146101475780630e5a6c701461015157806318178358146101735780631b25b65f1461017b5780631e77933e146101eb575b600080fd5b61014f610444565b005b6101596104d2565b604051918252151560208201526040908101905180910390f35b61014f610556565b61014f6004803603602081101561019157600080fd5b8101906020810181356401000000008111156101ac57600080fd5b8201836020820111156101be57600080fd5b803590602001918460208302840111640100000000831117156101e057600080fd5b5090925090506107b7565b61014f6004803603602081101561020157600080fd5b50356001600160a01b0316610907565b6102196109ad565b6040516001600160a01b03909116815260200160405180910390f35b61014f6004803603602081101561024b57600080fd5b81019060208101813564010000000081111561026657600080fd5b82018360208201111561027857600080fd5b8035906020019184602083028401116401000000008311171561029a57600080fd5b5090925090506109bc565b6102cb600480360360208110156102bb57600080fd5b50356001600160a01b0316610a63565b60405190815260200160405180910390f35b6102cb610a77565b610159610b47565b61014f6004803603602081101561030357600080fd5b50356001600160a01b0316610bcb565b61014f6004803603602081101561032957600080fd5b50356001600160a01b0316610c6f565b6102cb610d16565b61014f6004803603602081101561035757600080fd5b50356001600160a01b0316610d1c565b61036f610dc0565b60405167ffffffffffffffff909116815260200160405180910390f35b610394610dd7565b604051901515815260200160405180910390f35b61014f610e1c565b6103b8610f2d565b60405161ffff909116815260200160405180910390f35b61014f610f3e565b6102cb600480360360208110156103ed57600080fd5b50356001600160a01b0316610fcd565b61014f6004803603602081101561041357600080fd5b503561ffff16610fe1565b61014f6004803603602081101561043457600080fd5b50356001600160a01b031661109d565b336000908152602081905260409020546001146104955760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b600180555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a450565b33600090815260056020528060408120546001146105365760405162461bcd60e51b815260206004820152601c60248201527f4f534d2f636f6e74726163742d6e6f742d77686974656c697374656400000000604482015260640160405180910390fd5b50506004546001600160801b0380821691600160801b9004166001149091565b6001541561059b5760405162461bcd60e51b815260206004820152600e60248201526d13d4d34bda5ccb5cdd1bdc1c195960921b604482015260640160405180910390fd5b6105a3610dd7565b6105e45760405162461bcd60e51b815260206004820152600e60248201526d13d4d34bdb9bdd0b5c185cdcd95960921b604482015260640160405180910390fd5b60025460009081906001600160a01b03166359e02dd76040518163ffffffff1660e01b8152600401604080518083038186803b15801561062357600080fd5b505afa158015610637573d6000803e3d6000fd5b505050506040513d604081101561064d57600080fd5b8101908080519291906020018051939550929350508215915061077c90505760045460038054600160801b8084046001600160801b039081169091026001600160801b031990921693811693909317909216919091179055604051604080820190526001600160801b0383168152600160208201526004815181546001600160801b0319166001600160801b0391909116178155602082015181546001600160801b03918216600160801b0291161790555061070f61070a611192565b611196565b6002805467ffffffffffffffff92909216600160b01b0267ffffffffffffffff60b01b199092169190911790556003547f296ba4ca62c6c21c95e828080cb8aec7481b71390585605300a8a76f9e95b527906001600160801b031660405190815260200160405180910390a15b50505961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a450565b336000908152602081905260409020546001146108085760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b60005b818110156108cb57600083838381811061082157fe5b905060200201356001600160a01b03166001600160a01b031614156108805760405162461bcd60e51b815260206004820152601160248201527004f534d2f6e6f2d636f6e74726163742d3607c1b604482015260640160405180910390fd5b60016005600085858581811061089257fe5b905060200201356001600160a01b03166001600160a01b03166001600160a01b031681526020019081526020016000205560010161080b565b505961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a4505050565b336000908152602081905260409020546001146109585760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b600280546001600160a01b0319166001600160a01b0383161790555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b6002546001600160a01b031681565b33600090815260208190526040902054600114610a0d5760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b60005b818110156108cb57600060056000858585818110610a2a57fe5b905060200201356001600160a01b03166001600160a01b03166001600160a01b0316815260200190815260200160002055600101610a10565b600560205280600052604060002054905081565b33600090815260056020526040812054600114610ada5760405162461bcd60e51b815260206004820152601c60248201527f4f534d2f636f6e74726163742d6e6f742d77686974656c697374656400000000604482015260640160405180910390fd5b600354600160801b90046001600160801b0316600114610b375760405162461bcd60e51b81526020600482015260146024820152734f534d2f6e6f2d63757272656e742d76616c756560601b604482015260640160405180910390fd5b506003546001600160801b031690565b3360009081526005602052806040812054600114610bab5760405162461bcd60e51b815260206004820152601c60248201527f4f534d2f636f6e74726163742d6e6f742d77686974656c697374656400000000604482015260640160405180910390fd5b50506003546001600160801b0380821691600160801b9004166001149091565b33600090815260208190526040902054600114610c1c5760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b6001600160a01b0381166000908152600560205260408120555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b33600090815260208190526040902054600114610cc05760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b6001600160a01b0381166000908152602081905260019060409020555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b60015481565b33600090815260208190526040902054600114610d6d5760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b6001600160a01b0381166000908152602081905260408120555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b600254600160b01b900467ffffffffffffffff1681565b600254600090610e0390600160b01b810467ffffffffffffffff1690600160a01b900461ffff16611208565b67ffffffffffffffff16610e15611192565b1015905090565b33600090815260208190526040902054600114610e6d5760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b60405160408082019052600080825260208201526004815181546001600160801b0319166001600160801b0391909116178155602082015181546001600160801b03908116600160801b928216830217808455600380549183166001600160801b03199092169190911780825593549382169383900490911690910291909117905550600180555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a450565b600254600160a01b900461ffff1681565b33600090815260208190526040902054600114610f8f5760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b60006001555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a450565b600060205280600052604060002054905081565b336000908152602081905260409020546001146110325760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b60008161ffff161161107b5760405162461bcd60e51b815260206004820152600e60248201526d4f534d2f74732d69732d7a65726f60901b604482015260640160405180910390fd5b6002805461ffff909216600160a01b0261ffff60a01b19909216919091179055565b336000908152602081905260409020546001146110ee5760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b6001600160a01b03811661113c5760405162461bcd60e51b815260206004820152601160248201527004f534d2f6e6f2d636f6e74726163742d3607c1b604482015260640160405180910390fd5b6001600160a01b0381166000908152600560205260019060409020555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b4290565b600254600090600160a01b900461ffff166111e95760405162461bcd60e51b815260206004820152600f60248201526e4f534d2f686f702d69732d7a65726f60881b604482015260640160405180910390fd5b600254600160a01b900461ffff1682816111ff57fe5b06909103919050565b81810167ffffffffffffffff808416908216101561122557600080fd5b9291505056fe4f534d2f6e6f742d617574686f72697a65640000000000000000000000000000a265627a7a72315820eacacb6d29568fd167522843265786e2015acaaee0fb5acba48631e91269b9bc64736f6c634300050c0032
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000c2ffbbdccf1466eb8968a846179191cb881ecdff
-----Decoded View---------------
Arg [0] : src_ (address): 0xc2ffbbDCCF1466Eb8968a846179191cb881eCdff
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000c2ffbbdccf1466eb8968a846179191cb881ecdff
Deployed Bytecode Sourcemap
1972:3224:5:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1972:3224:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3109:63;;;:::i;:::-;;4339:120;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3883:324;;;:::i;4838:206::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4838:206:5;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;4838:206:5;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;4838:206:5;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;-1:-1;4838:206:5;;-1:-1:-1;4838:206:5;-1:-1:-1;4838:206:5;:::i;3247:76::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;3247:76:5;-1:-1:-1;;;;;3247:76:5;;:::i;2571:18::-;;;:::i;:::-;;;-1:-1:-1;;;;;2571:18:5;;;;;;;;;;;;;;5050:144;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5050:144:5;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;5050:144:5;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;5050:144:5;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;-1:-1;5050:144:5;;-1:-1:-1;5050:144:5;-1:-1:-1;5050:144:5;:::i;2842:39::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2842:39:5;-1:-1:-1;;;;;2842:39:5;;:::i;:::-;;;;;;;;;;;;;;;4465:156;;;:::i;4213:120::-;;;:::i;4761:71::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;4761:71:5;-1:-1:-1;;;;;4761:71:5;;:::i;2067:65::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2067:65:5;-1:-1:-1;;;;;2067:65:5;;:::i;2328:22::-;;;:::i;2137:65::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2137:65:5;-1:-1:-1;;;;;2137:65:5;;:::i;2676:18::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;3785:92;;;:::i;:::-;;;;;;;;;;;;;;;;;3684:95;;;:::i;2641:29::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;3177:64;;;:::i;2023:38::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2023:38:5;-1:-1:-1;;;;;2023:38:5;;:::i;3571:107::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;3571:107:5;;;;:::i;4629:126::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;4629:126:5;-1:-1:-1;;;;;4629:126:5;;:::i;3109:63::-;2245:10;2239:5;:17;;;;;;;;;;;2260:1;2239:22;2231:53;;;;-1:-1:-1;;;2231:53:5;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2231:53:5;;;;;;;;;;;;;;3164:1;3154:11;;1240:7;1335:3;1329:4;1325:14;1319:4;1312:28;1409:4;1403;1396:18;1500:3;1493:4;1487;1483:15;1476:28;1586:3;1583:1;1576:4;1570;1566:15;1553:37;1903:2;1890:16;1841:1;1828:15;1760:8;-1:-1:-1;;;;;;1726:1:5;1713:15;1695:35;1635:3;1629:4;1624:328;1066:896;:::o;4339:120::-;2916:10;4383:7;2912:15;;;:3;:15;;4383:7;2912:15;4383:7;2912:15;;2931:1;2912:20;2904:61;;;;-1:-1:-1;;;2904:61:5;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4428:3:5;:7;-1:-1:-1;;;;;4428:7:5;;;;-1:-1:-1;;;4439:7:5;;;4428;4439:12;4339:120;;:::o;3883:324::-;2385:7;;:12;2377:39;;;;-1:-1:-1;;;2377:39:5;;;;;;;;;;;;-1:-1:-1;;;2377:39:5;;;;;;;;;;;;;;3941:6;:4;:6::i;:::-;3933:33;;;;-1:-1:-1;;;3933:33:5;;;;;;;;;;;;-1:-1:-1;;;3933:33:5;;;;;;;;;;;;;;4009:3;;3977:11;;;;-1:-1:-1;;;;;4009:3:5;4001:17;:19;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4001:19:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4001:19:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4001:19:5;;;;;;;;;;;;;3976:44;;-1:-1:-1;4001:19:5;;-1:-1:-1;;4030:171:5;;;-1:-1:-1;4030:171:5;;-1:-1:-1;4030:171:5;4058:3;4052:9;:3;:9;;-1:-1:-1;;;4052:9:5;;;-1:-1:-1;;;;;4052:9:5;;;;;;-1:-1:-1;;;;;;4052:9:5;;;;;;;;;;;;;;;;;;;4081:27;;;;;;;;-1:-1:-1;;;;;4081:27:5;;;;4106:1;4081:27;;;;4075:3;4081:27;4075:33;;;-1:-1:-1;;;;;;4075:33:5;-1:-1:-1;;;;;4075:33:5;;;;;;;;;;;;;-1:-1:-1;;;;;4075:33:5;;;-1:-1:-1;;;4075:33:5;;;;;;-1:-1:-1;4128:11:5;4133:5;:3;:5::i;:::-;4128:4;:11::i;:::-;4122:3;:17;;;;;;;-1:-1:-1;;;4122:17:5;-1:-1:-1;;;;4122:17:5;;;;;;;;;4180:3;:7;4158:32;;-1:-1:-1;;;;;4180:7:5;4158:32;;;;;;;;;;;;;;4030:171;2418:1;;1240:7;1335:3;1329:4;1325:14;1319:4;1312:28;1409:4;1403;1396:18;1500:3;1493:4;1487;1483:15;1476:28;1586:3;1583:1;1576:4;1570;1566:15;1553:37;1903:2;1890:16;1841:1;1828:15;1760:8;-1:-1:-1;;;;;;1726:1:5;1713:15;1695:35;1635:3;1629:4;1624:328;1066:896;:::o;4838:206::-;2245:10;2239:5;:17;;;;;;;;;;;2260:1;2239:22;2231:53;;;;-1:-1:-1;;;2231:53:5;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2231:53:5;;;;;;;;;;;;;;4907:6;4903:135;4919:12;;;4903:135;;;4976:1;4960;;4962;4960:4;;;;;;;;;;;;;-1:-1:-1;;;;;4960:4:5;-1:-1:-1;;;;;4960:18:5;;;4952:48;;;;-1:-1:-1;;;4952:48:5;;;;;;;;;;;;-1:-1:-1;;;4952:48:5;;;;;;;;;;;;;;5026:1;5014:3;:9;5018:1;;5020;5018:4;;;;;;;;;;;;;-1:-1:-1;;;;;5018:4:5;-1:-1:-1;;;;;5014:9:5;-1:-1:-1;;;;;5014:9:5;;;;;;;;;;;;:13;4933:3;;4903:135;;;;1240:7;1335:3;1329:4;1325:14;1319:4;1312:28;1409:4;1403;1396:18;1500:3;1493:4;1487;1483:15;1476:28;1586:3;1583:1;1576:4;1570;1566:15;1553:37;1903:2;1890:16;1841:1;1828:15;1760:8;-1:-1:-1;;;;;;1726:1:5;1713:15;1695:35;1635:3;1629:4;1624:328;1066:896;;;:::o;3247:76::-;2245:10;2239:5;:17;;;;;;;;;;;2260:1;2239:22;2231:53;;;;-1:-1:-1;;;2231:53:5;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2231:53:5;;;;;;;;;;;;;;3306:3;:10;;-1:-1:-1;;;;;;3306:10:5;-1:-1:-1;;;;;3306:10:5;;;;;1240:7;1335:3;1329:4;1325:14;1319:4;1312:28;1409:4;1403;1396:18;1500:3;1493:4;1487;1483:15;1476:28;1586:3;1583:1;1576:4;1570;1566:15;1553:37;1903:2;1890:16;1841:1;1828:15;1760:8;-1:-1:-1;;;;;;1726:1:5;1713:15;1695:35;1635:3;1629:4;1624:328;1066:896;;:::o;2571:18::-;;;-1:-1:-1;;;;;2571:18:5;;:::o;5050:144::-;2245:10;2239:5;:17;;;;;;;;;;;2260:1;2239:22;2231:53;;;;-1:-1:-1;;;2231:53:5;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2231:53:5;;;;;;;;;;;;;;5119:6;5115:73;5131:12;;;5115:73;;;5176:1;5164:3;:9;5168:1;;5170;5168:4;;;;;;;;;;;;;-1:-1:-1;;;;;5168:4:5;-1:-1:-1;;;;;5164:9:5;-1:-1:-1;;;;;5164:9:5;;;;;;;;;;;;:13;5145:3;;5115:73;;2842:39;;;;;;;;;;;;-1:-1:-1;2842:39:5;:::o;4465:156::-;2916:10;4509:7;2912:15;;;:3;:15;;;4509:7;2912:15;;2931:1;2912:20;2904:61;;;;-1:-1:-1;;;2904:61:5;;;;;;;;;;;;;;;;;;;;;;;;;;;4536:3;:7;-1:-1:-1;;;4536:7:5;;-1:-1:-1;;;;;4536:7:5;4547:1;4536:12;4528:45;;;;-1:-1:-1;;;4528:45:5;;;;;;;;;;;;-1:-1:-1;;;4528:45:5;;;;;;;;;;;;;;-1:-1:-1;4604:3:5;:7;-1:-1:-1;;;;;4604:7:5;4465:156;:::o;4213:120::-;2916:10;4257:7;2912:15;;;:3;:15;;4257:7;2912:15;4257:7;2912:15;;2931:1;2912:20;2904:61;;;;-1:-1:-1;;;2904:61:5;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4302:3:5;:7;-1:-1:-1;;;;;4302:7:5;;;;-1:-1:-1;;;4313:7:5;;;4302;4313:12;4213:120;;:::o;4761:71::-;2245:10;2239:5;:17;;;;;;;;;;;2260:1;2239:22;2231:53;;;;-1:-1:-1;;;2231:53:5;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2231:53:5;;;;;;;;;;;;;;-1:-1:-1;;;;;4815:6:5;;4824:1;4815:6;;;:3;:6;;;4824:1;4815:6;:10;1240:7;1335:3;1329:4;1325:14;1319:4;1312:28;1409:4;1403;1396:18;1500:3;1493:4;1487;1483:15;1476:28;1586:3;1583:1;1576:4;1570;1566:15;1553:37;1903:2;1890:16;1841:1;1828:15;1760:8;-1:-1:-1;;;;;;1726:1:5;1713:15;1695:35;1635:3;1629:4;1624:328;1066:896;;:::o;2067:65::-;2245:10;2239:5;:17;;;;;;;;;;;2260:1;2239:22;2231:53;;;;-1:-1:-1;;;2231:53:5;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2231:53:5;;;;;;;;;;;;;;-1:-1:-1;;;;;2115:10:5;;:5;:10;;;;;;;2128:1;;2115:10;;;:14;1240:7;1335:3;1329:4;1325:14;1319:4;1312:28;1409:4;1403;1396:18;1500:3;1493:4;1487;1483:15;1476:28;1586:3;1583:1;1576:4;1570;1566:15;1553:37;1903:2;1890:16;1841:1;1828:15;1760:8;-1:-1:-1;;;;;;1726:1:5;1713:15;1695:35;1635:3;1629:4;1624:328;1066:896;;:::o;2328:22::-;;;;:::o;2137:65::-;2245:10;2239:5;:17;;;;;;;;;;;2260:1;2239:22;2231:53;;;;-1:-1:-1;;;2231:53:5;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2231:53:5;;;;;;;;;;;;;;-1:-1:-1;;;;;2185:10:5;;2198:1;2185:10;;;;;;;;2198:1;2185:10;:14;1240:7;1335:3;1329:4;1325:14;1319:4;1312:28;1409:4;1403;1396:18;1500:3;1493:4;1487;1483:15;1476:28;1586:3;1583:1;1576:4;1570;1566:15;1553:37;1903:2;1890:16;1841:1;1828:15;1760:8;-1:-1:-1;;;;;;1726:1:5;1713:15;1695:35;1635:3;1629:4;1624:328;1066:896;;:::o;2676:18::-;;;-1:-1:-1;;;2676:18:5;;;;;:::o;3785:92::-;3861:3;;3822:7;;3857:13;;-1:-1:-1;;;3861:3:5;;;;;-1:-1:-1;;;3866:3:5;;;;3857;:13::i;:::-;3848:22;;:5;:3;:5::i;:::-;:22;;3841:29;;3785:92;:::o;3684:95::-;2245:10;2239:5;:17;;;;;;;;;;;2260:1;2239:22;2231:53;;;;-1:-1:-1;;;2231:53:5;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2231:53:5;;;;;;;;;;;;;;3741:10;;;;;;;;3746:1;3741:10;;;;;;;3735:3;3741:10;3735:16;;;-1:-1:-1;;;;;;3735:16:5;-1:-1:-1;;;;;3735:16:5;;;;;;;;;;;;;-1:-1:-1;;;;;3735:16:5;;;-1:-1:-1;;;3735:16:5;;;;;;;;;3729:3;:22;;;;;-1:-1:-1;;;;;;3729:22:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3761:11:5;;1240:7;1335:3;1329:4;1325:14;1319:4;1312:28;1409:4;1403;1396:18;1500:3;1493:4;1487;1483:15;1476:28;1586:3;1583:1;1576:4;1570;1566:15;1553:37;1903:2;1890:16;1841:1;1828:15;1760:8;-1:-1:-1;;;;;;1726:1:5;1713:15;1695:35;1635:3;1629:4;1624:328;1066:896;:::o;2641:29::-;;;-1:-1:-1;;;2641:29:5;;;;;:::o;3177:64::-;2245:10;2239:5;:17;;;;;;;;;;;2260:1;2239:22;2231:53;;;;-1:-1:-1;;;2231:53:5;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2231:53:5;;;;;;;;;;;;;;3233:1;3223:7;:11;1240:7;1335:3;1329:4;1325:14;1319:4;1312:28;1409:4;1403;1396:18;1500:3;1493:4;1487;1483:15;1476:28;1586:3;1583:1;1576:4;1570;1566:15;1553:37;1903:2;1890:16;1841:1;1828:15;1760:8;-1:-1:-1;;;;;;1726:1:5;1713:15;1695:35;1635:3;1629:4;1624:328;1066:896;:::o;2023:38::-;;;;;;;;;;;;-1:-1:-1;2023:38:5;:::o;3571:107::-;2245:10;2239:5;:17;;;;;;;;;;;2260:1;2239:22;2231:53;;;;-1:-1:-1;;;2231:53:5;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2231:53:5;;;;;;;;;;;;;;3633:1;3628:2;:6;;;3620:33;;;;-1:-1:-1;;;3620:33:5;;;;;;;;;;;;-1:-1:-1;;;3620:33:5;;;;;;;;;;;;;;3663:3;:8;;;;;;-1:-1:-1;;;3663:8:5;-1:-1:-1;;;;3663:8:5;;;;;;;;;3571:107::o;4629:126::-;2245:10;2239:5;:17;;;;;;;;;;;2260:1;2239:22;2231:53;;;;-1:-1:-1;;;2231:53:5;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2231:53:5;;;;;;;;;;;;;;-1:-1:-1;;;;;4691:15:5;;4683:45;;;;-1:-1:-1;;;4683:45:5;;;;;;;;;;;;-1:-1:-1;;;4683:45:5;;;;;;;;;;;;;;-1:-1:-1;;;;;4738:6:5;;;;;;:3;:6;;4747:1;;4738:6;;;:10;1240:7;1335:3;1329:4;1325:14;1319:4;1312:28;1409:4;1403;1396:18;1500:3;1493:4;1487;1483:15;1476:28;1586:3;1583:1;1576:4;1570;1566:15;1553:37;1903:2;1890:16;1841:1;1828:15;1760:8;-1:-1:-1;;;;;;1726:1:5;1713:15;1695:35;1635:3;1629:4;1624:328;1066:896;;:::o;3329:83::-;3390:15;3329:83;:::o;3418:147::-;3490:3;;3464:6;;-1:-1:-1;;;3490:3:5;;;;3482:36;;;;-1:-1:-1;;;3482:36:5;;;;;;;;;;;;-1:-1:-1;;;3482:36:5;;;;;;;;;;;;;;3553:3;;-1:-1:-1;;;3553:3:5;;;;3548:2;3553:3;3548:8;;;;;3542:15;;;;3418:147;-1:-1:-1;3418:147:5:o;2448:117::-;2528:5;;;2551:6;;;;;;;;;2543:15;;;;;;2448:117;;;;:::o
Swarm Source
bzzr://eacacb6d29568fd167522843265786e2015acaaee0fb5acba48631e91269b9bc
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 35 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
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.