Contract 0x81FE72B5A8d1A857d176C3E7d5Bd2679A9B85763 1

Maker 
 
 
Txn Hash
Method
Block
From
To
Value
0x0ba09e9380ae794db5530f61fa205ced71911d82a4638243e57e09705ec63edePoke146893642022-05-01 2:47:27212 days 7 hrs ago0x048374f1af8c1ce36710ff360f0924cf756e2c6b IN  Maker: PIP ETH0 Ether0.29391812 5,847.9530857
0x14f2ea4da81a79f694ab98530126a623802a03db09048c43182a6f32bab243e7Poke113289622020-11-25 17:49:29733 days 16 hrs ago0x185196c8c5dd5729f22315203e09e33c3f7d7680 IN  Maker: PIP ETH0 Ether0.002234440
0x6296ecf22afba012e43cfb07095aa4a6f217c8fd1ee1cc1e7801c16ecb2fb54fRead96907102020-03-17 18:34:29986 days 15 hrs agoInnou Media: Deployer IN  Maker: PIP ETH0 Ether0.000111415
0x603c018ece4c05fccbc2a0e5cd2e51a332e4adb12a49d1a2378a7eca30431589Poke93722572020-01-28 19:00:011035 days 15 hrs ago0xadc374e77b89af0b8b39f7c47e8e0a37b6daf073 IN  Maker: PIP ETH0 Ether0.000516610
0xb760f066c1827b84bb9a706eda0ae638cb870a19494f5ae77eb8f1acfa6a353cPoke93722562020-01-28 18:59:551035 days 15 hrs ago0xadc374e77b89af0b8b39f7c47e8e0a37b6daf073 IN  Maker: PIP ETH0 Ether0.0002322910
0xaad7f6b7b3f7c47973ca198b705d0ebb5a5d8a9cfe863299712359e7fb05e394Poke93722552020-01-28 18:59:141035 days 15 hrs ago0xadc374e77b89af0b8b39f7c47e8e0a37b6daf073 IN  Maker: PIP ETH0 Ether0.0002322910
0x7098705217208a864ff3fbc4691d5b09aeb529090973a11ba165b99591d500efPoke93722552020-01-28 18:59:141035 days 15 hrs ago0xadc374e77b89af0b8b39f7c47e8e0a37b6daf073 IN  Maker: PIP ETH0 Ether0.0002322910
0xb8effdf53490f61ac98b24c127b9946f56f4dfd0c0d66349a038159e541edee0Poke93722552020-01-28 18:59:141035 days 15 hrs ago0xadc374e77b89af0b8b39f7c47e8e0a37b6daf073 IN  Maker: PIP ETH0 Ether0.0002322910
0xe4814c2c8dffd7007b68e8baccee9c3fd231009db0c9ea510a72c04db29081bdPoke93719992020-01-28 18:00:141035 days 16 hrs ago0xadc374e77b89af0b8b39f7c47e8e0a37b6daf073 IN  Maker: PIP ETH0 Ether0.000474610
0x825dd36b4a5150da7123b9152550a69512644accc8a9087b718adbab29f499f3Poke93719962020-01-28 17:59:301035 days 16 hrs ago0xadc374e77b89af0b8b39f7c47e8e0a37b6daf073 IN  Maker: PIP ETH0 Ether0.0002322910
0x2c6386a91f80350b6e11e315de87465f2d0d671d3dbe9a06bfa3962f6ff3b9e4Poke93719962020-01-28 17:59:301035 days 16 hrs ago0xadc374e77b89af0b8b39f7c47e8e0a37b6daf073 IN  Maker: PIP ETH0 Ether0.0002322910
0x8e4d22519e8bb08a1947562604d73a971773b018bb53c93f6b24b287a7ca90cbPoke93719952020-01-28 17:58:461035 days 16 hrs ago0xadc374e77b89af0b8b39f7c47e8e0a37b6daf073 IN  Maker: PIP ETH0 Ether0.0002322910
0x14187c884111687c175fc888d914c1765ccb1991826e29837d65c05427395fb2Poke93719952020-01-28 17:58:461035 days 16 hrs ago0xadc374e77b89af0b8b39f7c47e8e0a37b6daf073 IN  Maker: PIP ETH0 Ether0.0002322910
0x166b93ad262be885adeacb45c746179593ef2a2673d25e9c234329dcabcbe83ePoke93708382020-01-28 13:34:351035 days 20 hrs ago0x52ce67ba2cd112ed7b34ae935407c215ac7b32d3 IN  Maker: PIP ETH0 Ether0.0002322910
0xdc5dc1765cec316bbf89aeebccd3af64246d46a406d45f1274f2fc599b219f49Poke93708082020-01-28 13:29:031035 days 20 hrs ago0x52ce67ba2cd112ed7b34ae935407c215ac7b32d3 IN  Maker: PIP ETH0 Ether0.0002322910
0xc0cf38acccef1ede75dd5dc0b520ae57b10bafc9cd482719c4d1039ad03598b0Poke93708082020-01-28 13:29:031035 days 20 hrs ago0x52ce67ba2cd112ed7b34ae935407c215ac7b32d3 IN  Maker: PIP ETH0 Ether0.0002322910
0xc8ada3703c3d004eb0b5a5f48a2127fc9240718eeade0bd3c5b75530d172a701Poke93707892020-01-28 13:25:191035 days 20 hrs ago0x52ce67ba2cd112ed7b34ae935407c215ac7b32d3 IN  Maker: PIP ETH0 Ether0.0002322910
0xbe758be1e395cb99272acf6d40164580fe830a936bf3b579b025fe1fc28a63f2Poke93707882020-01-28 13:25:001035 days 20 hrs ago0x52ce67ba2cd112ed7b34ae935407c215ac7b32d3 IN  Maker: PIP ETH0 Ether0.0002322910
0x79efe4939662ba50003baabd0c5943422e776eab03f07bdd3f679a5de770e2b9Poke93707612020-01-28 13:20:241035 days 21 hrs ago0x52ce67ba2cd112ed7b34ae935407c215ac7b32d3 IN  Maker: PIP ETH0 Ether0.0002322910
0x793a6e701a074ebe025a59bd396cc8a3ee01e77f17bb8dd46e390b3a47ea68cePoke93707592020-01-28 13:19:561035 days 21 hrs ago0x52ce67ba2cd112ed7b34ae935407c215ac7b32d3 IN  Maker: PIP ETH0 Ether0.0002322910
0x84f9d4b1f5ba48c535d1db92821f8c79ff4d3e8a992e7189b9dd0e84282569c6Poke93250162020-01-21 13:06:481042 days 21 hrs ago0xc360c4c8fd8c2db40725ca19f7fb5b484143ade1 IN  Maker: PIP ETH0 Ether0.000516610
0x83ac7f0915620dc242d27954de5e6926202928e952950e8151f997499101c8c6Poke89933452019-11-24 16:03:451100 days 18 hrs ago0x988aefe2d8ea80600442bb7857f2470d8f101083 IN  Maker: PIP ETH0 Ether0.0006064611.55882352
0x493e3791a7498af0365979abaae7e8d88d4542890b3850c05b7c793720ab779eDeny89570292019-11-18 14:43:011106 days 19 hrs agoMaker: Deployer 4 IN  Maker: PIP ETH0 Ether0.000035352
0x982726c182e230aabe159ac92da84f8d9561363aa05a2c263ffc5625bde4ffb8Rely89569662019-11-18 14:25:121106 days 19 hrs agoMaker: Deployer 4 IN  Maker: PIP ETH0 Ether0.000095142
0xd29bcac0d3c1d1a5c6837ed037f7903ddd658b843d55dce789629dc156d04a98Poke89367952019-11-15 6:01:241110 days 4 hrs agoMaker: Deployer 4 IN  Maker: PIP ETH0 Ether0.000067461
[ Download CSV Export 
View more zero value Internal Transactions in Advanced View mode
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
OSM

Compiler Version
v0.5.12+commit.7709ece9

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, GNU GPLv3 license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2019-11-13
*/

// osm.sol - Oracle Security Module

// Copyright (C) 2019 Maker Foundation

// 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/>.

contract DSAuthority {
    function canCall(
        address src, address dst, bytes4 sig
    ) public 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(0)) {
            return false;
        } else {
            return authority.canCall(src, address(this), sig);
        }
    }
}

////// lib/ds-stop/lib/ds-note/src/note.sol
/// 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);

        _;
    }
}

////// lib/ds-value/lib/ds-thing/lib/ds-math/src/math.sol
/// 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;

    function wmul(uint x, uint y) internal pure returns (uint z) {
        z = add(mul(x, y), WAD / 2) / WAD;
    }
    function rmul(uint x, uint y) internal pure returns (uint z) {
        z = add(mul(x, y), RAY / 2) / RAY;
    }
    function wdiv(uint x, uint y) internal pure returns (uint z) {
        z = add(mul(x, WAD), y / 2) / y;
    }
    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);
            }
        }
    }
}

////// lib/ds-value/lib/ds-thing/src/thing.sol
// 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)));
    }

}

////// lib/ds-value/src/value.sol
/// 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;
    }
}

////// src/osm.sol
/* 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;
        }
    }
}

Contract Security Audit

Contract ABI

[{"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"}]

60806040526002805461ffff60a01b1916750e10000000000000000000000000000000000000000017905534801561003657600080fd5b5060405161131e38038061131e8339818101604052602081101561005957600080fd5b505133600090815260208190526040902060019055600280546001600160a01b039092166001600160a01b03199092169190911790556112808061009e6000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c806365fae35e116100b8578063ac4c25b21161007c578063ac4c25b2146103a8578063b0b8579b146103b0578063be9a6555146103cf578063bf353dbb146103d7578063e38e2cfb146103fd578063f29c29c41461041e57610142565b806365fae35e1461031357806375f12b21146103395780639c52a7f114610341578063a4dff0a214610367578063a7a1ed721461038c57610142565b80632e7dc6af1161010a5780632e7dc6af1461021157806346d4577d146102355780634fce7a2a146102a557806357de26a4146102dd57806359e02dd7146102e557806365c4ce7a146102ed57610142565b806307da68f5146101475780630e5a6c701461015157806318178358146101735780631b25b65f1461017b5780631e77933e146101eb575b600080fd5b61014f610444565b005b6101596104d2565b604051918252151560208201526040908101905180910390f35b61014f610556565b61014f6004803603602081101561019157600080fd5b8101906020810181356401000000008111156101ac57600080fd5b8201836020820111156101be57600080fd5b803590602001918460208302840111640100000000831117156101e057600080fd5b5090925090506107b7565b61014f6004803603602081101561020157600080fd5b50356001600160a01b0316610907565b6102196109ad565b6040516001600160a01b03909116815260200160405180910390f35b61014f6004803603602081101561024b57600080fd5b81019060208101813564010000000081111561026657600080fd5b82018360208201111561027857600080fd5b8035906020019184602083028401116401000000008311171561029a57600080fd5b5090925090506109bc565b6102cb600480360360208110156102bb57600080fd5b50356001600160a01b0316610a63565b60405190815260200160405180910390f35b6102cb610a77565b610159610b47565b61014f6004803603602081101561030357600080fd5b50356001600160a01b0316610bcb565b61014f6004803603602081101561032957600080fd5b50356001600160a01b0316610c6f565b6102cb610d16565b61014f6004803603602081101561035757600080fd5b50356001600160a01b0316610d1c565b61036f610dc0565b60405167ffffffffffffffff909116815260200160405180910390f35b610394610dd7565b604051901515815260200160405180910390f35b61014f610e1c565b6103b8610f2d565b60405161ffff909116815260200160405180910390f35b61014f610f3e565b6102cb600480360360208110156103ed57600080fd5b50356001600160a01b0316610fcd565b61014f6004803603602081101561041357600080fd5b503561ffff16610fe1565b61014f6004803603602081101561043457600080fd5b50356001600160a01b031661109d565b336000908152602081905260409020546001146104955760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b600180555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a450565b33600090815260056020528060408120546001146105365760405162461bcd60e51b815260206004820152601c60248201527f4f534d2f636f6e74726163742d6e6f742d77686974656c697374656400000000604482015260640160405180910390fd5b50506004546001600160801b0380821691600160801b9004166001149091565b6001541561059b5760405162461bcd60e51b815260206004820152600e60248201526d13d4d34bda5ccb5cdd1bdc1c195960921b604482015260640160405180910390fd5b6105a3610dd7565b6105e45760405162461bcd60e51b815260206004820152600e60248201526d13d4d34bdb9bdd0b5c185cdcd95960921b604482015260640160405180910390fd5b60025460009081906001600160a01b03166359e02dd76040518163ffffffff1660e01b8152600401604080518083038186803b15801561062357600080fd5b505afa158015610637573d6000803e3d6000fd5b505050506040513d604081101561064d57600080fd5b8101908080519291906020018051939550929350508215915061077c90505760045460038054600160801b8084046001600160801b039081169091026001600160801b031990921693811693909317909216919091179055604051604080820190526001600160801b0383168152600160208201526004815181546001600160801b0319166001600160801b0391909116178155602082015181546001600160801b03918216600160801b0291161790555061070f61070a611192565b611196565b6002805467ffffffffffffffff92909216600160b01b0267ffffffffffffffff60b01b199092169190911790556003547f296ba4ca62c6c21c95e828080cb8aec7481b71390585605300a8a76f9e95b527906001600160801b031660405190815260200160405180910390a15b50505961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a450565b336000908152602081905260409020546001146108085760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b60005b818110156108cb57600083838381811061082157fe5b905060200201356001600160a01b03166001600160a01b031614156108805760405162461bcd60e51b815260206004820152601160248201527004f534d2f6e6f2d636f6e74726163742d3607c1b604482015260640160405180910390fd5b60016005600085858581811061089257fe5b905060200201356001600160a01b03166001600160a01b03166001600160a01b031681526020019081526020016000205560010161080b565b505961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a4505050565b336000908152602081905260409020546001146109585760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b600280546001600160a01b0319166001600160a01b0383161790555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b6002546001600160a01b031681565b33600090815260208190526040902054600114610a0d5760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b60005b818110156108cb57600060056000858585818110610a2a57fe5b905060200201356001600160a01b03166001600160a01b03166001600160a01b0316815260200190815260200160002055600101610a10565b600560205280600052604060002054905081565b33600090815260056020526040812054600114610ada5760405162461bcd60e51b815260206004820152601c60248201527f4f534d2f636f6e74726163742d6e6f742d77686974656c697374656400000000604482015260640160405180910390fd5b600354600160801b90046001600160801b0316600114610b375760405162461bcd60e51b81526020600482015260146024820152734f534d2f6e6f2d63757272656e742d76616c756560601b604482015260640160405180910390fd5b506003546001600160801b031690565b3360009081526005602052806040812054600114610bab5760405162461bcd60e51b815260206004820152601c60248201527f4f534d2f636f6e74726163742d6e6f742d77686974656c697374656400000000604482015260640160405180910390fd5b50506003546001600160801b0380821691600160801b9004166001149091565b33600090815260208190526040902054600114610c1c5760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b6001600160a01b0381166000908152600560205260408120555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b33600090815260208190526040902054600114610cc05760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b6001600160a01b0381166000908152602081905260019060409020555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b60015481565b33600090815260208190526040902054600114610d6d5760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b6001600160a01b0381166000908152602081905260408120555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b600254600160b01b900467ffffffffffffffff1681565b600254600090610e0390600160b01b810467ffffffffffffffff1690600160a01b900461ffff16611208565b67ffffffffffffffff16610e15611192565b1015905090565b33600090815260208190526040902054600114610e6d5760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b60405160408082019052600080825260208201526004815181546001600160801b0319166001600160801b0391909116178155602082015181546001600160801b03908116600160801b928216830217808455600380549183166001600160801b03199092169190911780825593549382169383900490911690910291909117905550600180555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a450565b600254600160a01b900461ffff1681565b33600090815260208190526040902054600114610f8f5760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b60006001555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a450565b600060205280600052604060002054905081565b336000908152602081905260409020546001146110325760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b60008161ffff161161107b5760405162461bcd60e51b815260206004820152600e60248201526d4f534d2f74732d69732d7a65726f60901b604482015260640160405180910390fd5b6002805461ffff909216600160a01b0261ffff60a01b19909216919091179055565b336000908152602081905260409020546001146110ee5760405162461bcd60e51b8152602060048201526012602482015260008051602061122c833981519152604482015260640160405180910390fd5b6001600160a01b03811661113c5760405162461bcd60e51b815260206004820152601160248201527004f534d2f6e6f2d636f6e74726163742d3607c1b604482015260640160405180910390fd5b6001600160a01b0381166000908152600560205260019060409020555961012081016040526020815260e0602082015260e060006040830137602435600435336001600160e01b03196000351661012085a45050565b4290565b600254600090600160a01b900461ffff166111e95760405162461bcd60e51b815260206004820152600f60248201526e4f534d2f686f702d69732d7a65726f60881b604482015260640160405180910390fd5b600254600160a01b900461ffff1682816111ff57fe5b06909103919050565b81810167ffffffffffffffff808416908216101561122557600080fd5b9291505056fe4f534d2f6e6f742d617574686f72697a65640000000000000000000000000000a265627a7a723158206d1af194f2ef9bc55238121b9137702db980c71eff5082b41fa23003cfcf09a664736f6c634300050c003200000000000000000000000064de91f5a373cd4c28de3600cb34c7c6ce410c85

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

00000000000000000000000064de91f5a373cd4c28de3600cb34c7c6ce410c85

-----Decoded View---------------
Arg [0] : src_ (address): 0x64DE91F5A373Cd4c28de3600cB34C7C6cE410C85

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000064de91f5a373cd4c28de3600cb34c7c6ce410c85


Deployed ByteCode Sourcemap

10317:3351:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10317:3351:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11500:65;;;:::i;:::-;;12779:122;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;12308:333;;;:::i;13298:211::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13298:211:0;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;13298:211:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;13298:211:0;;;;;;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;13298:211:0;;-1:-1:-1;13298:211:0;-1:-1:-1;13298:211:0;:::i;11645:78::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11645:78:0;-1:-1:-1;;;;;11645:78:0;;:::i;10937:18::-;;;:::i;:::-;;;-1:-1:-1;;;;;10937:18:0;;;;;;;;;;;;;;13517:148;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13517:148:0;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;13517:148:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;13517:148:0;;;;;;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;13517:148:0;;-1:-1:-1;13517:148:0;-1:-1:-1;13517:148:0;:::i;11222:39::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11222:39:0;-1:-1:-1;;;;;11222:39:0;;:::i;:::-;;;;;;;;;;;;;;;12909:159;;;:::i;12649:122::-;;;:::i;13217:73::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13217:73:0;-1:-1:-1;;;;;13217:73:0;;:::i;10416:65::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10416:65:0;-1:-1:-1;;;;;10416:65:0;;:::i;10685:22::-;;;:::i;10487:65::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10487:65:0;-1:-1:-1;;;;;10487:65:0;;:::i;11045:18::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;12206:94;;;:::i;:::-;;;;;;;;;;;;;;;;;12100:98;;;:::i;11009:29::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;11571:66;;;:::i;10371:38::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10371:38:0;-1:-1:-1;;;;;10371:38:0;;:::i;11982:110::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11982:110:0;;;;:::i;13080:129::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13080:129:0;-1:-1:-1;;;;;13080:129:0;;:::i;11500:65::-;10597:10;10591:5;:17;;;;;;;;;;;10612:1;10591:22;10583:53;;;;-1:-1:-1;;;10583:53:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;10583:53:0;;;;;;;;;;;;;;11556:1;11546:11;;9570:5;9666:3;9660:4;9656:14;9650:4;9643:28;9741:4;9735;9728:18;9833:3;9826:4;9820;9816:15;9809:28;9920:3;9917:1;9910:4;9904;9900:15;9887:37;10242:2;10229:16;10179:1;10166:15;10097:6;-1:-1:-1;;;;;;10062:1:0;10049:15;10031:35;9970:3;9964:4;9959:333;9393:910;:::o;12779:122::-;11298:10;12823:7;11294:15;;;:3;:15;;12823:7;11294:15;12823:7;11294:15;;11313:1;11294:20;11286:61;;;;-1:-1:-1;;;11286:61:0;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12869:3:0;:7;-1:-1:-1;;;;;12869:7:0;;;;-1:-1:-1;;;12880:7:0;;;12869;12880:12;12779:122;;:::o;12308:333::-;10743:7;;:12;10735:39;;;;-1:-1:-1;;;10735:39:0;;;;;;;;;;;;-1:-1:-1;;;10735:39:0;;;;;;;;;;;;;;12367:6;:4;:6::i;:::-;12359:33;;;;-1:-1:-1;;;12359:33:0;;;;;;;;;;;;-1:-1:-1;;;12359:33:0;;;;;;;;;;;;;;12436:3;;12404:11;;;;-1:-1:-1;;;;;12436:3:0;12428:17;:19;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12428:19:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12428:19:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12428:19:0;;;;;;;;;;;;;12403:44;;-1:-1:-1;12428:19:0;;-1:-1:-1;;12458:176:0;;;-1:-1:-1;12458:176:0;;-1:-1:-1;12458:176:0;12487:3;12481:9;:3;:9;;-1:-1:-1;;;12481:9:0;;;-1:-1:-1;;;;;12481:9:0;;;;;;-1:-1:-1;;;;;;12481:9:0;;;;;;;;;;;;;;;;;;;12511:27;;;;;;;;-1:-1:-1;;;;;12511:27:0;;;;12536:1;12511:27;;;;12505:3;12511:27;12505:33;;;-1:-1:-1;;;;;;12505:33:0;-1:-1:-1;;;;;12505:33:0;;;;;;;;;;;;;-1:-1:-1;;;;;12505:33:0;;;-1:-1:-1;;;12505:33:0;;;;;;-1:-1:-1;12559:11:0;12564:5;:3;:5::i;:::-;12559:4;:11::i;:::-;12553:3;:17;;;;;;;-1:-1:-1;;;12553:17:0;-1:-1:-1;;;;12553:17:0;;;;;;;;;12612:3;:7;12590:32;;-1:-1:-1;;;;;12612:7:0;12590:32;;;;;;;;;;;;;;12458:176;10776:1;;9570:5;9666:3;9660:4;9656:14;9650:4;9643:28;9741:4;9735;9728:18;9833:3;9826:4;9820;9816:15;9809:28;9920:3;9917:1;9910:4;9904;9900:15;9887:37;10242:2;10229:16;10179:1;10166:15;10097:6;-1:-1:-1;;;;;;10062:1:0;10049:15;10031:35;9970:3;9964:4;9959:333;9393:910;:::o;13298:211::-;10597:10;10591:5;:17;;;;;;;;;;;10612:1;10591:22;10583:53;;;;-1:-1:-1;;;10583:53:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;10583:53:0;;;;;;;;;;;;;;13368:6;13364:138;13380:12;;;13364:138;;;13438:1;13422;;13424;13422:4;;;;;;;;;;;;;-1:-1:-1;;;;;13422:4:0;-1:-1:-1;;;;;13422:18:0;;;13414:48;;;;-1:-1:-1;;;13414:48:0;;;;;;;;;;;;-1:-1:-1;;;13414:48:0;;;;;;;;;;;;;;13489:1;13477:3;:9;13481:1;;13483;13481:4;;;;;;;;;;;;;-1:-1:-1;;;;;13481:4:0;-1:-1:-1;;;;;13477:9:0;-1:-1:-1;;;;;13477:9:0;;;;;;;;;;;;:13;13394:3;;13364:138;;;;9570:5;9666:3;9660:4;9656:14;9650:4;9643:28;9741:4;9735;9728:18;9833:3;9826:4;9820;9816:15;9809:28;9920:3;9917:1;9910:4;9904;9900:15;9887:37;10242:2;10229:16;10179:1;10166:15;10097:6;-1:-1:-1;;;;;;10062:1:0;10049:15;10031:35;9970:3;9964:4;9959:333;9393:910;;;:::o;11645:78::-;10597:10;10591:5;:17;;;;;;;;;;;10612:1;10591:22;10583:53;;;;-1:-1:-1;;;10583:53:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;10583:53:0;;;;;;;;;;;;;;11705:3;:10;;-1:-1:-1;;;;;;11705:10:0;-1:-1:-1;;;;;11705:10:0;;;;;9570:5;9666:3;9660:4;9656:14;9650:4;9643:28;9741:4;9735;9728:18;9833:3;9826:4;9820;9816:15;9809:28;9920:3;9917:1;9910:4;9904;9900:15;9887:37;10242:2;10229:16;10179:1;10166:15;10097:6;-1:-1:-1;;;;;;10062:1:0;10049:15;10031:35;9970:3;9964:4;9959:333;9393:910;;:::o;10937:18::-;;;-1:-1:-1;;;;;10937:18:0;;:::o;13517:148::-;10597:10;10591:5;:17;;;;;;;;;;;10612:1;10591:22;10583:53;;;;-1:-1:-1;;;10583:53:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;10583:53:0;;;;;;;;;;;;;;13587:6;13583:75;13599:12;;;13583:75;;;13645:1;13633:3;:9;13637:1;;13639;13637:4;;;;;;;;;;;;;-1:-1:-1;;;;;13637:4:0;-1:-1:-1;;;;;13633:9:0;-1:-1:-1;;;;;13633:9:0;;;;;;;;;;;;:13;13613:3;;13583:75;;11222:39;;;;;;;;;;;;-1:-1:-1;11222:39:0;:::o;12909:159::-;11298:10;12953:7;11294:15;;;:3;:15;;;12953:7;11294:15;;11313:1;11294:20;11286:61;;;;-1:-1:-1;;;11286:61:0;;;;;;;;;;;;;;;;;;;;;;;;;;;12981:3;:7;-1:-1:-1;;;12981:7:0;;-1:-1:-1;;;;;12981:7:0;12992:1;12981:12;12973:45;;;;-1:-1:-1;;;12973:45:0;;;;;;;;;;;;-1:-1:-1;;;12973:45:0;;;;;;;;;;;;;;-1:-1:-1;13050:3:0;:7;-1:-1:-1;;;;;13050:7:0;12909:159;:::o;12649:122::-;11298:10;12693:7;11294:15;;;:3;:15;;12693:7;11294:15;12693:7;11294:15;;11313:1;11294:20;11286:61;;;;-1:-1:-1;;;11286:61:0;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12739:3:0;:7;-1:-1:-1;;;;;12739:7:0;;;;-1:-1:-1;;;12750:7:0;;;12739;12750:12;12649:122;;:::o;13217:73::-;10597:10;10591:5;:17;;;;;;;;;;;10612:1;10591:22;10583:53;;;;-1:-1:-1;;;10583:53:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;10583:53:0;;;;;;;;;;;;;;-1:-1:-1;;;;;13272:6:0;;13281:1;13272:6;;;:3;:6;;;13281:1;13272:6;:10;9570:5;9666:3;9660:4;9656:14;9650:4;9643:28;9741:4;9735;9728:18;9833:3;9826:4;9820;9816:15;9809:28;9920:3;9917:1;9910:4;9904;9900:15;9887:37;10242:2;10229:16;10179:1;10166:15;10097:6;-1:-1:-1;;;;;;10062:1:0;10049:15;10031:35;9970:3;9964:4;9959:333;9393:910;;:::o;10416:65::-;10597:10;10591:5;:17;;;;;;;;;;;10612:1;10591:22;10583:53;;;;-1:-1:-1;;;10583:53:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;10583:53:0;;;;;;;;;;;;;;-1:-1:-1;;;;;10464:10:0;;:5;:10;;;;;;;10477:1;;10464:10;;;:14;9570:5;9666:3;9660:4;9656:14;9650:4;9643:28;9741:4;9735;9728:18;9833:3;9826:4;9820;9816:15;9809:28;9920:3;9917:1;9910:4;9904;9900:15;9887:37;10242:2;10229:16;10179:1;10166:15;10097:6;-1:-1:-1;;;;;;10062:1:0;10049:15;10031:35;9970:3;9964:4;9959:333;9393:910;;:::o;10685:22::-;;;;:::o;10487:65::-;10597:10;10591:5;:17;;;;;;;;;;;10612:1;10591:22;10583:53;;;;-1:-1:-1;;;10583:53:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;10583:53:0;;;;;;;;;;;;;;-1:-1:-1;;;;;10535:10:0;;10548:1;10535:10;;;;;;;;10548:1;10535:10;:14;9570:5;9666:3;9660:4;9656:14;9650:4;9643:28;9741:4;9735;9728:18;9833:3;9826:4;9820;9816:15;9809:28;9920:3;9917:1;9910:4;9904;9900:15;9887:37;10242:2;10229:16;10179:1;10166:15;10097:6;-1:-1:-1;;;;;;10062:1:0;10049:15;10031:35;9970:3;9964:4;9959:333;9393:910;;:::o;11045:18::-;;;-1:-1:-1;;;11045:18:0;;;;;:::o;12206:94::-;12283:3;;12243:7;;12279:13;;-1:-1:-1;;;12283:3:0;;;;;-1:-1:-1;;;12288:3:0;;;;12279;:13::i;:::-;12270:22;;:5;:3;:5::i;:::-;:22;;12263:29;;12206:94;:::o;12100:98::-;10597:10;10591:5;:17;;;;;;;;;;;10612:1;10591:22;10583:53;;;;-1:-1:-1;;;10583:53:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;10583:53:0;;;;;;;;;;;;;;12158:10;;;;;;;;12163:1;12158:10;;;;;;;12152:3;12158:10;12152:16;;;-1:-1:-1;;;;;;12152:16:0;-1:-1:-1;;;;;12152:16:0;;;;;;;;;;;;;-1:-1:-1;;;;;12152:16:0;;;-1:-1:-1;;;12152:16:0;;;;;;;;;12146:3;:22;;;;;-1:-1:-1;;;;;;12146:22:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12179:11:0;;9570:5;9666:3;9660:4;9656:14;9650:4;9643:28;9741:4;9735;9728:18;9833:3;9826:4;9820;9816:15;9809:28;9920:3;9917:1;9910:4;9904;9900:15;9887:37;10242:2;10229:16;10179:1;10166:15;10097:6;-1:-1:-1;;;;;;10062:1:0;10049:15;10031:35;9970:3;9964:4;9959:333;9393:910;:::o;11009:29::-;;;-1:-1:-1;;;11009:29:0;;;;;:::o;11571:66::-;10597:10;10591:5;:17;;;;;;;;;;;10612:1;10591:22;10583:53;;;;-1:-1:-1;;;10583:53:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;10583:53:0;;;;;;;;;;;;;;11628:1;11618:7;:11;9570:5;9666:3;9660:4;9656:14;9650:4;9643:28;9741:4;9735;9728:18;9833:3;9826:4;9820;9816:15;9809:28;9920:3;9917:1;9910:4;9904;9900:15;9887:37;10242:2;10229:16;10179:1;10166:15;10097:6;-1:-1:-1;;;;;;10062:1:0;10049:15;10031:35;9970:3;9964:4;9959:333;9393:910;:::o;10371:38::-;;;;;;;;;;;;-1:-1:-1;10371:38:0;:::o;11982:110::-;10597:10;10591:5;:17;;;;;;;;;;;10612:1;10591:22;10583:53;;;;-1:-1:-1;;;10583:53:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;10583:53:0;;;;;;;;;;;;;;12045:1;12040:2;:6;;;12032:33;;;;-1:-1:-1;;;12032:33:0;;;;;;;;;;;;-1:-1:-1;;;12032:33:0;;;;;;;;;;;;;;12076:3;:8;;;;;;-1:-1:-1;;;12076:8:0;-1:-1:-1;;;;12076:8:0;;;;;;;;;11982:110::o;13080:129::-;10597:10;10591:5;:17;;;;;;;;;;;10612:1;10591:22;10583:53;;;;-1:-1:-1;;;10583:53:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;10583:53:0;;;;;;;;;;;;;;-1:-1:-1;;;;;13143:15:0;;13135:45;;;;-1:-1:-1;;;13135:45:0;;;;;;;;;;;;-1:-1:-1;;;13135:45:0;;;;;;;;;;;;;;-1:-1:-1;;;;;13191:6:0;;;;;;:3;:6;;13200:1;;13191:6;;;:10;9570:5;9666:3;9660:4;9656:14;9650:4;9643:28;9741:4;9735;9728:18;9833:3;9826:4;9820;9816:15;9809:28;9920:3;9917:1;9910:4;9904;9900:15;9887:37;10242:2;10229:16;10179:1;10166:15;10097:6;-1:-1:-1;;;;;;10062:1:0;10049:15;10031:35;9970:3;9964:4;9959:333;9393:910;;:::o;11731:85::-;11793:15;11731:85;:::o;11824:150::-;11897:3;;11870:6;;-1:-1:-1;;;11897:3:0;;;;11889:36;;;;-1:-1:-1;;;11889:36:0;;;;;;;;;;;;-1:-1:-1;;;11889:36:0;;;;;;;;;;;;;;11961:3;;-1:-1:-1;;;11961:3:0;;;;11956:2;11961:3;11956:8;;;;;11950:15;;;;11824:150;-1:-1:-1;11824:150:0:o;10809:120::-;10890:5;;;10914:6;;;;;;;;;10906:15;;;;;;10809:120;;;;:::o

Swarm Source

bzzr://6d1af194f2ef9bc55238121b9137702db980c71eff5082b41fa23003cfcf09a6
Block Transaction Difficulty Gas Used Reward
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.

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.