Latest 3 txns

TxHash Age From To Value [TxFee]
0xbcd4a2e7bb2fcb34a031aa136a67a412327ce4f88335bbd45b8f9adfa8a9ac5a128 days 3 hrs ago0xa963555a33fa98be0afb9c9781e679ed50f23a0b  IN   0xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440 Ether0.00003
0x20105d548b519c7df2efbe341518d91b302fe67c701b77e09357e2b97bf5fd60128 days 6 hrs ago0xa963555a33fa98be0afb9c9781e679ed50f23a0b  IN   0xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440 Ether0.000082995
0x8362d86128c3509117af7140f05de7eaac0ce67e867e5b136b04e40e2fc4cfd6128 days 6 hrs ago0xa963555a33fa98be0afb9c9781e679ed50f23a0b  IN    Contract Creation0 Ether0.001222414
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
 Latest 25 Internal Txns, Click here To View More View All
ParentTxHash Block Age From To Value
0xaf98e87f814fc065c0486aafaef8e88d5f8024e58b0b254574d9026a6f871ae310165762 30 secs ago0xf88bbdc1e2718f8857f30a180076ec38d53cf2960xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440 Ether
0x6c8f68fc02166d317e3b14c5392b18bb6175453c9121c0a91ea2f5a7607d842f10165761 42 secs ago0xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440x2ee9daf6f23426dfc12547bffde4032521f274350 Ether
0x6c8f68fc02166d317e3b14c5392b18bb6175453c9121c0a91ea2f5a7607d842f10165761 42 secs ago0x2ee9daf6f23426dfc12547bffde4032521f274350xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440 Ether
0x3e2bef01b37e793cffa3a69baced2bfd638fbb5a6984317c1766a70b0d2e213a101652661 hr ago0xf88bbdc1e2718f8857f30a180076ec38d53cf2960xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440 Ether
0x76911aafcf08c44df3b71ee31ef4e6e2984f487aa05a2ccaee644bbe52fc7b80101652651 hr ago0xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440x2ee9daf6f23426dfc12547bffde4032521f274350 Ether
0x76911aafcf08c44df3b71ee31ef4e6e2984f487aa05a2ccaee644bbe52fc7b80101652651 hr ago0x2ee9daf6f23426dfc12547bffde4032521f274350xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440 Ether
0x808a60c75a0830e0fb08369264127d413cc00f99431849fa6f3f86e9f36bb1c0101647672 hrs ago0xf88bbdc1e2718f8857f30a180076ec38d53cf2960xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440 Ether
0x1a1ebbbe32b1fd2ab24f9d5ea955714d545f3a7805db64f5ffee1f574d22f5ce101647662 hrs ago0xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440x2ee9daf6f23426dfc12547bffde4032521f274350 Ether
0x1a1ebbbe32b1fd2ab24f9d5ea955714d545f3a7805db64f5ffee1f574d22f5ce101647662 hrs ago0x2ee9daf6f23426dfc12547bffde4032521f274350xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440 Ether
0x4e9ed1f569316360b7c08b0a0c972a09cdc0a024430d669b1e3d52f37bfddf2f101642703 hrs ago0xf88bbdc1e2718f8857f30a180076ec38d53cf2960xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440 Ether
0x8dad58371e9e2ce1d65b0be0438966413fe592eda4fb35ce5cb6d043801c050a101642693 hrs ago0xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440x2ee9daf6f23426dfc12547bffde4032521f274350 Ether
0x8dad58371e9e2ce1d65b0be0438966413fe592eda4fb35ce5cb6d043801c050a101642693 hrs ago0x2ee9daf6f23426dfc12547bffde4032521f274350xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440 Ether
0x6014a52116e50117a61623feaff46f1b63cd3d5565ea5d9886684fa057c67ac9101637694 hrs ago0xf88bbdc1e2718f8857f30a180076ec38d53cf2960xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440 Ether
0x2f48626f96f60d35a8a90ddc3d0b84fa62d6aa6765313cac6a314af1ee796070101637674 hrs ago0xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440x2ee9daf6f23426dfc12547bffde4032521f274350 Ether
0x2f48626f96f60d35a8a90ddc3d0b84fa62d6aa6765313cac6a314af1ee796070101637674 hrs ago0x2ee9daf6f23426dfc12547bffde4032521f274350xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440 Ether
0xe346898821ed7a6303553747590b0e35e8b02bba47f28ee3a681a2ac2f4f0edf101632725 hrs ago0xf88bbdc1e2718f8857f30a180076ec38d53cf2960xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440 Ether
0x260f47c6cbf11d236f2709abb609b6b60df597dfab341211bd70507622c859ce101632705 hrs ago0xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440x2ee9daf6f23426dfc12547bffde4032521f274350 Ether
0x260f47c6cbf11d236f2709abb609b6b60df597dfab341211bd70507622c859ce101632705 hrs ago0x2ee9daf6f23426dfc12547bffde4032521f274350xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440 Ether
0x29786788e3fde648130c4b3ba5b4e323ea03d3e19d21e03988a29c31f2866fc0101627716 hrs ago0xf88bbdc1e2718f8857f30a180076ec38d53cf2960xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440 Ether
0x9f019cb4c2191d6a45c621749a05ea5d2c6241e749a8ab05adb3788c79922fbd101627706 hrs ago0xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440x2ee9daf6f23426dfc12547bffde4032521f274350 Ether
0x9f019cb4c2191d6a45c621749a05ea5d2c6241e749a8ab05adb3788c79922fbd101627706 hrs ago0x2ee9daf6f23426dfc12547bffde4032521f274350xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440 Ether
0x8ff102a622f6153a2d72262c6ea25bec25633f851e8335d9c692d6766fc2612f101622757 hrs ago0xf88bbdc1e2718f8857f30a180076ec38d53cf2960xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440 Ether
0x4b795378e50e3709de37cec5f8523a344d73265e219c890ab3c975c85111926e101622747 hrs ago0xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440x2ee9daf6f23426dfc12547bffde4032521f274350 Ether
0x4b795378e50e3709de37cec5f8523a344d73265e219c890ab3c975c85111926e101622747 hrs ago0x2ee9daf6f23426dfc12547bffde4032521f274350xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440 Ether
0x885e0ede83be1e78b74edb2081f91256ded04f1765ebe3a8a077b0ae8267b662101617778 hrs ago0xf88bbdc1e2718f8857f30a180076ec38d53cf2960xfeb7d3ac74cb3c6d8e6ae8882394f0c68363b9440 Ether
[ Download CSV Export  ] 
Warning: The Compiled Contract might be susceptible to ExpExponentCleanup (medium/high-severity), EventStructWrongData (very low-severity) SolidityCompiler Bugs.

Contract Source Code Verified (Similar Match)
Note: Displaying Similar Match Verified Source Code At Contract 0xa5aa4e07f5255e14f02b385b1f04b35cc50bdb66(Excluding Constructor Arguments if any)
Contract Name: Medianizer
Compiler Text: v0.4.24+commit.e67f0147
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

// hevm: flattened sources of src/medianizer.sol
pragma solidity ^0.4.23;

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

    modifier auth {
        require(isAuthorized(msg.sender, msg.sig));
        _;
    }

    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, this, sig);
        }
    }
}

////// 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);
    }
    function sub(uint x, uint y) internal pure returns (uint z) {
        require((z = x - y) <= x);
    }
    function mul(uint x, uint y) internal pure returns (uint z) {
        require(y == 0 || (z = x * y) / y == x);
    }

    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/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,
        uint              wad,
        bytes             fax
    ) anonymous;

    modifier note {
        bytes32 foo;
        bytes32 bar;

        assembly {
            foo := calldataload(4)
            bar := calldataload(36)
        }

        emit LogNote(msg.sig, msg.sender, foo, bar, msg.value, msg.data);

        _;
    }
}

////// 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 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();
        assert(haz);
        return wut;
    }
    function poke(bytes32 wut) public note auth {
        val = wut;
        has = true;
    }
    function void() public note auth {  // unset the value
        has = false;
    }
}

////// src/medianizer.sol
/// medianizer.sol - read ds-values and output median

// Copyright (C) 2017, 2018  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-value/value.sol"; */

contract Medianizer is DSThing {
    event LogValue(bytes32 val);
    mapping (bytes12 => address) public values;
    mapping (address => bytes12) public indexes;
    bytes12 public next = 0x1;

    uint96 public min = 0x1;

    bytes32 val;
    bool public has;

    function set(address wat) public auth {
        bytes12 nextId = bytes12(uint96(next) + 1);
        require(nextId != 0x0);
        this.set(next, wat);
        next = nextId;
    }

    function set(bytes12 pos, address wat) public note auth {
        require(pos != 0x0);
        require(wat == 0 || indexes[wat] == 0);

        indexes[values[pos]] = 0x0; // Making sure to remove a possible existing address in that position

        if (wat != 0) {
            indexes[wat] = pos;
        }

        values[pos] = wat;
    }

    function setMin(uint96 min_) public note auth {
        require(min_ != 0x0);
        min = min_;
    }

    function setNext(bytes12 next_) public note auth {
        require(next_ != 0x0);
        next = next_;
    }

    function unset(bytes12 pos) public auth {
        this.set(pos, 0);
    }

    function unset(address wat) public auth {
        this.set(indexes[wat], 0);
    }

    function void() external auth {
        has = false;
        // TODO: don't allow poke
    }

    function poke() external {
        (val, has) = compute();
        emit LogValue(val);
    }

    function peek() external view returns (bytes32, bool) {
        return (val, has);
    }

    function read() external view returns (bytes32) {
        require(has);
        return val;
    }

    function compute() public view returns (bytes32, bool) {
        bytes32[] memory wuts = new bytes32[](uint96(next) - 1);
        uint96 ctr = 0;
        for (uint96 i = 1; i < uint96(next); i++) {
            if (values[bytes12(i)] != 0) {
                bytes32 wut;
                bool wuz;
                (wut, wuz) = DSValue(values[bytes12(i)]).peek();
                if (wuz) {
                    if (ctr == 0 || wut >= wuts[ctr - 1]) {
                        wuts[ctr] = wut;
                    } else {
                        uint96 j = 0;
                        while (wut >= wuts[j]) {
                            j++;
                        }
                        for (uint96 k = ctr; k > j; k--) {
                            wuts[k] = wuts[k - 1];
                        }
                        wuts[j] = wut;
                    }
                    ctr++;
                }
            }
        }

        if (ctr < min) {
            return (val, false);
        }

        bytes32 value;
        if (ctr % 2 == 0) {
            uint128 val1 = uint128(wuts[(ctr / 2) - 1]);
            uint128 val2 = uint128(wuts[ctr / 2]);
            value = bytes32(wdiv(add(val1, val2), 2 ether));
        } else {
            value = wuts[(ctr - 1) / 2];
        }

        return (value, true);
    }

}

    Contract ABI  
[{"constant":false,"inputs":[{"name":"owner_","type":"address"}],"name":"setOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"poke","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"compute","outputs":[{"name":"","type":"bytes32"},{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"wat","type":"address"}],"name":"set","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"wat","type":"address"}],"name":"unset","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"indexes","outputs":[{"name":"","type":"bytes12"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"next","outputs":[{"name":"","type":"bytes12"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"read","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"peek","outputs":[{"name":"","type":"bytes32"},{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes12"}],"name":"values","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"min_","type":"uint96"}],"name":"setMin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"authority_","type":"address"}],"name":"setAuthority","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"void","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"has","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"pos","type":"bytes12"},{"name":"wat","type":"address"}],"name":"set","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"authority","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"pos","type":"bytes12"}],"name":"unset","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"next_","type":"bytes12"}],"name":"setNext","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"min","outputs":[{"name":"","type":"uint96"}],"payable":false,"stateMutability":"view","type":"function"},{"anonymous":false,"inputs":[{"indexed":false,"name":"val","type":"bytes32"}],"name":"LogValue","type":"event"},{"anonymous":true,"inputs":[{"indexed":true,"name":"sig","type":"bytes4"},{"indexed":true,"name":"guy","type":"address"},{"indexed":true,"name":"foo","type":"bytes32"},{"indexed":true,"name":"bar","type":"bytes32"},{"indexed":false,"name":"wad","type":"uint256"},{"indexed":false,"name":"fax","type":"bytes"}],"name":"LogNote","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"authority","type":"address"}],"name":"LogSetAuthority","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"}],"name":"LogSetOwner","type":"event"}]

  Contract Creation Code Switch To Opcodes View
60806040819052600480546c0100000000000000000000000060016001606060020a03199092168217606060020a60c060020a03191617909155805433600160a060020a03199091168117909155907fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9490600090a261109f806100836000396000f3006080604052600436106101115763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166313af4035811461011657806318178358146101395780631a43c3381461014e5780632801617e1461017c5780632966d1b91461019d5780632db78d93146101be5780634c8fe526146101fc57806357de26a41461021157806359e02dd714610238578063651dd0de1461024d5780636ba5ef0d1461028b5780637a9e5e4b146102ac5780638da5cb5b146102cd578063ac4c25b2146102e2578063b689d5ac146102f7578063beb38b4314610320578063bf7e214f1461034e578063e0a1fdad14610363578063f2c5925d14610385578063f8897945146103a7575b600080fd5b34801561012257600080fd5b50610137600160a060020a03600435166103d8565b005b34801561014557600080fd5b50610137610449565b34801561015a57600080fd5b5061016361049c565b6040805192835290151560208301528051918290030190f35b34801561018857600080fd5b50610137600160a060020a0360043516610873565b3480156101a957600080fd5b50610137600160a060020a0360043516610979565b3480156101ca57600080fd5b506101df600160a060020a0360043516610a38565b60408051600160a060020a03199092168252519081900360200190f35b34801561020857600080fd5b506101df610a50565b34801561021d57600080fd5b50610226610a5c565b60408051918252519081900360200190f35b34801561024457600080fd5b50610163610a77565b34801561025957600080fd5b5061026f600160a060020a031960043516610a84565b60408051600160a060020a039092168252519081900360200190f35b34801561029757600080fd5b506101376001606060020a0360043516610a9f565b3480156102b857600080fd5b50610137600160a060020a0360043516610b6b565b3480156102d957600080fd5b5061026f610bd8565b3480156102ee57600080fd5b50610137610be7565b34801561030357600080fd5b5061030c610c14565b604080519115158252519081900360200190f35b34801561032c57600080fd5b50610137600160a060020a031960043516602435600160a060020a0316610c1d565b34801561035a57600080fd5b5061026f610d9e565b34801561036f57600080fd5b50610137600160a060020a031960043516610dad565b34801561039157600080fd5b50610137600160a060020a031960043516610e34565b3480156103b357600080fd5b506103bc610ee1565b604080516001606060020a039092168252519081900360200190f35b6103ee33600035600160e060020a031916610f00565b15156103f957600080fd5b60018054600160a060020a031916600160a060020a0383811691909117918290556040519116907fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9490600090a250565b61045161049c565b6006805460ff1916911515919091179055600581905560408051918252517f296ba4ca62c6c21c95e828080cb8aec7481b71390585605300a8a76f9e95b527916020908290030190a1565b600080606060008060008060008060008060006001600460009054906101000a900460a060020a0260a060020a9004036001606060020a03166040519080825280602002602001820160405280156104fe578160200160208202803883390190505b50995060009850600197505b60045460a060020a908102046001606060020a03908116908916101561075257600160a060020a031960a060020a890216600090815260026020526040902054600160a060020a0316156107475760a060020a8802600160a060020a0319166000908152600260205260408082205481517f59e02dd70000000000000000000000000000000000000000000000000000000081528251600160a060020a03909216936359e02dd79360048084019491939192918390030190829087803b1580156105d357600080fd5b505af11580156105e7573d6000803e3d6000fd5b505050506040513d60408110156105fd57600080fd5b50805160209091015190975095508515610747576001606060020a038916158061064a57508960018a036001606060020a031681518110151561063c57fe5b602090810290910101518710155b1561067657868a8a6001606060020a031681518110151561066757fe5b60209081029091010152610740565b600094505b89856001606060020a031681518110151561069257fe5b6020908102909101015187106106ad5760019094019361067b565b8893505b846001606060020a0316846001606060020a0316111561071d5789600185036001606060020a03168151811015156106e557fe5b906020019060200201518a856001606060020a031681518110151561070657fe5b6020908102909101015260001993909301926106b1565b868a866001606060020a031681518110151561073557fe5b602090810290910101525b6001909801975b60019097019661050a565b6004546001606060020a036c010000000000000000000000009091048116908a1610156107875760055460009b509b50610865565b6001891615156108295789600160026001606060020a038c1604036001606060020a03168151811015156107b757fe5b6020908102909101015191508960026001606060020a038b16046001606060020a03168151811015156107e657fe5b6020908102909101015190506108226108146fffffffffffffffffffffffffffffffff808516908416611009565b671bc16d674ec80000611019565b925061085d565b8960026001606060020a036000198c0116046001606060020a031681518110151561085057fe5b9060200190602002015192505b8260019b509b505b505050505050505050509091565b600061088b33600035600160e060020a031916610f00565b151561089657600080fd5b5060045460a060020a90810281900460010102600160a060020a0319811615156108bf57600080fd5b60048054604080517fbeb38b4300000000000000000000000000000000000000000000000000000000815260a060020a909202600160a060020a03191692820192909252600160a060020a03841660248201529051309163beb38b4391604480830192600092919082900301818387803b15801561093c57600080fd5b505af1158015610950573d6000803e3d6000fd5b5050600480546bffffffffffffffffffffffff191660a060020a90940493909317909255505050565b61098f33600035600160e060020a031916610f00565b151561099a57600080fd5b600160a060020a0381166000908152600360205260408082205481517fbeb38b4300000000000000000000000000000000000000000000000000000000815260a060020a909102600160a060020a0319166004820152602481018390529051309263beb38b43926044808201939182900301818387803b158015610a1d57600080fd5b505af1158015610a31573d6000803e3d6000fd5b5050505050565b60036020526000908152604090205460a060020a0281565b60045460a060020a0281565b60065460009060ff161515610a7057600080fd5b5060055490565b60055460065460ff169091565b600260205260009081526040902054600160a060020a031681565b60408051348082526020820183815236938301849052600435936024359384938693339360008035600160e060020a031916949092606082018484808284376040519201829003965090945050505050a4610b0633600035600160e060020a031916610f00565b1515610b1157600080fd5b6001606060020a0383161515610b2657600080fd5b5050600480546001606060020a039092166c010000000000000000000000000277ffffffffffffffffffffffff00000000000000000000000019909216919091179055565b610b8133600035600160e060020a031916610f00565b1515610b8c57600080fd5b60008054600160a060020a031916600160a060020a03838116919091178083556040519116917f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada491a250565b600154600160a060020a031681565b610bfd33600035600160e060020a031916610f00565b1515610c0857600080fd5b6006805460ff19169055565b60065460ff1681565b60408051348082526020820183815236938301849052600435936024359384938693339360008035600160e060020a031916949092606082018484808284376040519201829003965090945050505050a4610c8433600035600160e060020a031916610f00565b1515610c8f57600080fd5b600160a060020a031984161515610ca557600080fd5b600160a060020a0383161580610ce15750600160a060020a03831660009081526003602052604090205460a060020a02600160a060020a031916155b1515610cec57600080fd5b600160a060020a03198416600090815260026020908152604080832054600160a060020a039081168452600390925290912080546bffffffffffffffffffffffff19169055831615610d6c57600160a060020a038316600090815260036020526040902080546bffffffffffffffffffffffff191660a060020a86041790555b5050600160a060020a031991821660009081526002602052604090208054600160a060020a0390921691909216179055565b600054600160a060020a031681565b610dc333600035600160e060020a031916610f00565b1515610dce57600080fd5b604080517fbeb38b43000000000000000000000000000000000000000000000000000000008152600160a060020a0319831660048201526000602482018190529151309263beb38b43926044808201939182900301818387803b158015610a1d57600080fd5b60408051348082526020820183815236938301849052600435936024359384938693339360008035600160e060020a031916949092606082018484808284376040519201829003965090945050505050a4610e9b33600035600160e060020a031916610f00565b1515610ea657600080fd5b600160a060020a031983161515610ebc57600080fd5b5050600480546bffffffffffffffffffffffff191660a060020a909204919091179055565b6004546c0100000000000000000000000090046001606060020a031681565b6000600160a060020a038316301415610f1b57506001611003565b600154600160a060020a0384811691161415610f3957506001611003565b600054600160a060020a03161515610f5357506000611003565b60008054604080517fb7009613000000000000000000000000000000000000000000000000000000008152600160a060020a038781166004830152306024830152600160e060020a0319871660448301529151919092169263b700961392606480820193602093909283900390910190829087803b158015610fd457600080fd5b505af1158015610fe8573d6000803e3d6000fd5b505050506040513d6020811015610ffe57600080fd5b505190505b92915050565b8082018281101561100357600080fd5b60008161103a61103185670de0b6b3a764000061104b565b60028504611009565b81151561104357fe5b049392505050565b600081158061106857505080820282828281151561106557fe5b04145b151561100357600080fd00a165627a7a723058204c99834793a7e58166be91e733d0ef81bb0d6afa5b324ad53a10dc589a5ed2460029

   Swarm Source:
bzzr://4c99834793a7e58166be91e733d0ef81bb0d6afa5b324ad53a10dc589a5ed246

 

View All
Block Age transaction Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward