Latest 2 txns

TxHash Age From To Value [TxFee]
0x6279129c6c39edb19fc93e4415d6250fef25d791166245d9bbb09ca4634fc043124 days 22 mins ago0x694032e172d9b0ee6aff5d36749bad4947a36e4e  IN   0x8323dde7e886684923599de7b719c984b5cbd75b0 Ether0.00008298
0xe46c2eb181f24a6faa32ca6e0eb1a8e5814eba6bc09086b15d83b50136fd5215124 days 27 mins ago0x694032e172d9b0ee6aff5d36749bad4947a36e4e  IN    Contract Creation0 Ether0.00127284


[ 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
0xc867ccd1a4ab3ba7e98e8bec28c049221e9545f27081174bdae4bdb8bb14de241014729311 mins ago0x8323dde7e886684923599de7b719c984b5cbd75b0xd4801976438ab7cd4b46b7579de3c3d4988517d60 Ether
0xc867ccd1a4ab3ba7e98e8bec28c049221e9545f27081174bdae4bdb8bb14de241014729311 mins ago0xd4801976438ab7cd4b46b7579de3c3d4988517d60x8323dde7e886684923599de7b719c984b5cbd75b0 Ether
0x836b52b3b67f4e7ede0b7ffaaa92a6562f236c29c568b22ca7a1ea6a710fb319101469061 hr 11 mins ago0x8323dde7e886684923599de7b719c984b5cbd75b0xd4801976438ab7cd4b46b7579de3c3d4988517d60 Ether
0x836b52b3b67f4e7ede0b7ffaaa92a6562f236c29c568b22ca7a1ea6a710fb319101469061 hr 11 mins ago0xd4801976438ab7cd4b46b7579de3c3d4988517d60x8323dde7e886684923599de7b719c984b5cbd75b0 Ether
0x4e8ef8003054daa0e76d9fa2e01a81a664c4b406831667e74144af992afa2b02101465122 hrs 11 mins ago0x8323dde7e886684923599de7b719c984b5cbd75b0xd4801976438ab7cd4b46b7579de3c3d4988517d60 Ether
0x4e8ef8003054daa0e76d9fa2e01a81a664c4b406831667e74144af992afa2b02101465122 hrs 11 mins ago0xd4801976438ab7cd4b46b7579de3c3d4988517d60x8323dde7e886684923599de7b719c984b5cbd75b0 Ether
0xd4a70512aeff0bc14fb0ed16f819732af4d4eae65ba311685f6a5b014729ff0f101461153 hrs 11 mins ago0x8323dde7e886684923599de7b719c984b5cbd75b0xd4801976438ab7cd4b46b7579de3c3d4988517d60 Ether
0xd4a70512aeff0bc14fb0ed16f819732af4d4eae65ba311685f6a5b014729ff0f101461153 hrs 11 mins ago0xd4801976438ab7cd4b46b7579de3c3d4988517d60x8323dde7e886684923599de7b719c984b5cbd75b0 Ether
0xb90d5556eac85b2cf13f19c6f587467cfb85cb45e73c628e8a59e5b62a076e49101457274 hrs 11 mins ago0x8323dde7e886684923599de7b719c984b5cbd75b0xd4801976438ab7cd4b46b7579de3c3d4988517d60 Ether
0xb90d5556eac85b2cf13f19c6f587467cfb85cb45e73c628e8a59e5b62a076e49101457274 hrs 11 mins ago0xd4801976438ab7cd4b46b7579de3c3d4988517d60x8323dde7e886684923599de7b719c984b5cbd75b0 Ether
0x389970705c257e26d27aa1930c68e7cde59e4ee8ee5e899df2987aa8c1b53e06101453305 hrs 11 mins ago0x8323dde7e886684923599de7b719c984b5cbd75b0xd4801976438ab7cd4b46b7579de3c3d4988517d60 Ether
0x389970705c257e26d27aa1930c68e7cde59e4ee8ee5e899df2987aa8c1b53e06101453305 hrs 11 mins ago0xd4801976438ab7cd4b46b7579de3c3d4988517d60x8323dde7e886684923599de7b719c984b5cbd75b0 Ether
0x4e320cf9e59c169968df206a0fdd124d71a432cb61b5c1bab71f227c9098f0ef101449346 hrs 11 mins ago0x8323dde7e886684923599de7b719c984b5cbd75b0xd4801976438ab7cd4b46b7579de3c3d4988517d60 Ether
0x4e320cf9e59c169968df206a0fdd124d71a432cb61b5c1bab71f227c9098f0ef101449346 hrs 11 mins ago0xd4801976438ab7cd4b46b7579de3c3d4988517d60x8323dde7e886684923599de7b719c984b5cbd75b0 Ether
0x85e2c0f533e7906f1ce935d57962a8e23a2397f26a9f6bd5fa0a65dbec39bb38101445377 hrs 11 mins ago0x8323dde7e886684923599de7b719c984b5cbd75b0xd4801976438ab7cd4b46b7579de3c3d4988517d60 Ether
0x85e2c0f533e7906f1ce935d57962a8e23a2397f26a9f6bd5fa0a65dbec39bb38101445377 hrs 11 mins ago0xd4801976438ab7cd4b46b7579de3c3d4988517d60x8323dde7e886684923599de7b719c984b5cbd75b0 Ether
0xd3d75ae3cdbe7500611e272cdd4284bd157e78585d7c03d247dd489395258091101441388 hrs 11 mins ago0x8323dde7e886684923599de7b719c984b5cbd75b0xd4801976438ab7cd4b46b7579de3c3d4988517d60 Ether
0xd3d75ae3cdbe7500611e272cdd4284bd157e78585d7c03d247dd489395258091101441388 hrs 11 mins ago0xd4801976438ab7cd4b46b7579de3c3d4988517d60x8323dde7e886684923599de7b719c984b5cbd75b0 Ether
0x3f1eb4fa209db7284f71a3c1c549154172c2c7dc562a6b6d7145bbb8be231423101437449 hrs 11 mins ago0x8323dde7e886684923599de7b719c984b5cbd75b0xd4801976438ab7cd4b46b7579de3c3d4988517d60 Ether
0x3f1eb4fa209db7284f71a3c1c549154172c2c7dc562a6b6d7145bbb8be231423101437449 hrs 11 mins ago0xd4801976438ab7cd4b46b7579de3c3d4988517d60x8323dde7e886684923599de7b719c984b5cbd75b0 Ether
0xbb033473044dab94d45db4267fd2b803a43fccdc640cf10ac8d091b831f7f0e51014334710 hrs 11 mins ago0x8323dde7e886684923599de7b719c984b5cbd75b0xd4801976438ab7cd4b46b7579de3c3d4988517d60 Ether
0xbb033473044dab94d45db4267fd2b803a43fccdc640cf10ac8d091b831f7f0e51014334710 hrs 11 mins ago0xd4801976438ab7cd4b46b7579de3c3d4988517d60x8323dde7e886684923599de7b719c984b5cbd75b0 Ether
0x36ff702591eeb460b812572638c880ef3bc1947a2257cd920749d52679dfee761014295211 hrs 11 mins ago0x8323dde7e886684923599de7b719c984b5cbd75b0xd4801976438ab7cd4b46b7579de3c3d4988517d60 Ether
0x36ff702591eeb460b812572638c880ef3bc1947a2257cd920749d52679dfee761014295211 hrs 11 mins ago0xd4801976438ab7cd4b46b7579de3c3d4988517d60x8323dde7e886684923599de7b719c984b5cbd75b0 Ether
0x2dd3daddb96eb215f8859478793e02a78b018a36a56ccb2e797dc3b34baa778b1014255712 hrs 11 mins ago0x8323dde7e886684923599de7b719c984b5cbd75b0xd4801976438ab7cd4b46b7579de3c3d4988517d60 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 (Exact Match)
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.24;

////// 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.24; */

/* import "ds-value/value.sol"; */

contract Medianizer is DSThing {
    event LogValue(bytes32 val);

    uint128 val;
    bool public has;

    mapping (bytes12 => address) public values;
    mapping (address => bytes12) public indexes;
    bytes12 public next = 0x1;
    uint96 public min = 0x1;

    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 {
        (bytes32 val_, bool has_) = compute();
        val = uint128(val_);
        has = has_;
        emit LogValue(val_);
    }

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

    function read() external view returns (bytes32) {
        require(has);
        return bytes32(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 (bytes32(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
60806040819052600580546c0100000000000000000000000060016001606060020a03199092168217606060020a60c060020a03191617909155805433600160a060020a03199091168117909155907fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9490600090a2611170806100836000396000f3006080604052600436106101115763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166313af4035811461011657806318178358146101395780631a43c3381461014e5780632801617e1461017c5780632966d1b91461019d5780632db78d93146101be5780634c8fe526146101fc57806357de26a41461021157806359e02dd714610238578063651dd0de1461024d5780636ba5ef0d1461028b5780637a9e5e4b146102ac5780638da5cb5b146102cd578063ac4c25b2146102e2578063b689d5ac146102f7578063beb38b4314610320578063bf7e214f1461034e578063e0a1fdad14610363578063f2c5925d14610385578063f8897945146103a7575b600080fd5b34801561012257600080fd5b50610137600160a060020a03600435166103d8565b005b34801561014557600080fd5b50610137610449565b34801561015a57600080fd5b506101636104ed565b6040805192835290151560208301528051918290030190f35b34801561018857600080fd5b50610137600160a060020a03600435166108d6565b3480156101a957600080fd5b50610137600160a060020a03600435166109d8565b3480156101ca57600080fd5b506101df600160a060020a0360043516610a9a565b60408051600160a060020a03199092168252519081900360200190f35b34801561020857600080fd5b506101df610ab2565b34801561021d57600080fd5b50610226610abe565b60408051918252519081900360200190f35b34801561024457600080fd5b50610163610aff565b34801561025957600080fd5b5061026f600160a060020a031960043516610b31565b60408051600160a060020a039092168252519081900360200190f35b34801561029757600080fd5b506101376001606060020a0360043516610b4c565b3480156102b857600080fd5b50610137600160a060020a0360043516610c18565b3480156102d957600080fd5b5061026f610c85565b3480156102ee57600080fd5b50610137610c94565b34801561030357600080fd5b5061030c610cd1565b604080519115158252519081900360200190f35b34801561032c57600080fd5b50610137600160a060020a031960043516602435600160a060020a0316610cee565b34801561035a57600080fd5b5061026f610e6f565b34801561036f57600080fd5b50610137600160a060020a031960043516610e7e565b34801561039157600080fd5b50610137600160a060020a031960043516610f05565b3480156103b357600080fd5b506103bc610fb2565b604080516001606060020a039092168252519081900360200190f35b6103ee33600035600160e060020a031916610fd1565b15156103f957600080fd5b60018054600160a060020a031916600160a060020a0383811691909117918290556040519116907fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9490600090a250565b6000806104546104ed565b600280546fffffffffffffffffffffffffffffffff19166fffffffffffffffffffffffffffffffff84161770ff000000000000000000000000000000001916700100000000000000000000000000000000831515021790556040805183815290519294509092507f296ba4ca62c6c21c95e828080cb8aec7481b71390585605300a8a76f9e95b527916020918190039190910190a15050565b600080606060008060008060008060008060006001600560009054906101000a900460a060020a0260a060020a9004036001606060020a031660405190808252806020026020018201604052801561054f578160200160208202803883390190505b50995060009850600197505b60055460a060020a908102046001606060020a0390811690891610156107a357600160a060020a031960a060020a890216600090815260036020526040902054600160a060020a0316156107985760a060020a8802600160a060020a0319166000908152600360205260408082205481517f59e02dd70000000000000000000000000000000000000000000000000000000081528251600160a060020a03909216936359e02dd79360048084019491939192918390030190829087803b15801561062457600080fd5b505af1158015610638573d6000803e3d6000fd5b505050506040513d604081101561064e57600080fd5b50805160209091015190975095508515610798576001606060020a038916158061069b57508960018a036001606060020a031681518110151561068d57fe5b602090810290910101518710155b156106c757868a8a6001606060020a03168151811015156106b857fe5b60209081029091010152610791565b600094505b89856001606060020a03168151811015156106e357fe5b6020908102909101015187106106fe576001909401936106cc565b8893505b846001606060020a0316846001606060020a0316111561076e5789600185036001606060020a031681518110151561073657fe5b906020019060200201518a856001606060020a031681518110151561075757fe5b602090810290910101526000199390930192610702565b868a866001606060020a031681518110151561078657fe5b602090810290910101525b6001909801975b60019097019661055b565b6005546001606060020a036c010000000000000000000000009091048116908a1610156107ea576002546fffffffffffffffffffffffffffffffff169b5060009a506108c8565b60018916151561088c5789600160026001606060020a038c1604036001606060020a031681518110151561081a57fe5b6020908102909101015191508960026001606060020a038b16046001606060020a031681518110151561084957fe5b6020908102909101015190506108856108776fffffffffffffffffffffffffffffffff8085169084166110da565b671bc16d674ec800006110ea565b92506108c0565b8960026001606060020a036000198c0116046001606060020a03168151811015156108b357fe5b9060200190602002015192505b8260019b509b505b505050505050505050509091565b60006108ee33600035600160e060020a031916610fd1565b15156108f957600080fd5b5060055460a060020a90810281900460010102600160a060020a03198116151561092257600080fd5b600554604080517fbeb38b4300000000000000000000000000000000000000000000000000000000815260a060020a909202600160a060020a0319166004830152600160a060020a038416602483015251309163beb38b4391604480830192600092919082900301818387803b15801561099b57600080fd5b505af11580156109af573d6000803e3d6000fd5b5050600580546bffffffffffffffffffffffff191660a060020a90940493909317909255505050565b6109ee33600035600160e060020a031916610fd1565b15156109f957600080fd5b600160a060020a03811660009081526004602081905260408083205481517fbeb38b4300000000000000000000000000000000000000000000000000000000815260a060020a909102600160a060020a031916928101929092526024820183905251309263beb38b43926044808201939182900301818387803b158015610a7f57600080fd5b505af1158015610a93573d6000803e3d6000fd5b5050505050565b60046020526000908152604090205460a060020a0281565b60055460a060020a0281565b600254600090700100000000000000000000000000000000900460ff161515610ae657600080fd5b506002546fffffffffffffffffffffffffffffffff1690565b6002546fffffffffffffffffffffffffffffffff81169170010000000000000000000000000000000090910460ff1690565b600360205260009081526040902054600160a060020a031681565b60408051348082526020820183815236938301849052600435936024359384938693339360008035600160e060020a031916949092606082018484808284376040519201829003965090945050505050a4610bb333600035600160e060020a031916610fd1565b1515610bbe57600080fd5b6001606060020a0383161515610bd357600080fd5b5050600580546001606060020a039092166c010000000000000000000000000277ffffffffffffffffffffffff00000000000000000000000019909216919091179055565b610c2e33600035600160e060020a031916610fd1565b1515610c3957600080fd5b60008054600160a060020a031916600160a060020a03838116919091178083556040519116917f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada491a250565b600154600160a060020a031681565b610caa33600035600160e060020a031916610fd1565b1515610cb557600080fd5b6002805470ff0000000000000000000000000000000019169055565b600254700100000000000000000000000000000000900460ff1681565b60408051348082526020820183815236938301849052600435936024359384938693339360008035600160e060020a031916949092606082018484808284376040519201829003965090945050505050a4610d5533600035600160e060020a031916610fd1565b1515610d6057600080fd5b600160a060020a031984161515610d7657600080fd5b600160a060020a0383161580610db25750600160a060020a03831660009081526004602052604090205460a060020a02600160a060020a031916155b1515610dbd57600080fd5b600160a060020a03198416600090815260036020908152604080832054600160a060020a039081168452600490925290912080546bffffffffffffffffffffffff19169055831615610e3d57600160a060020a038316600090815260046020526040902080546bffffffffffffffffffffffff191660a060020a86041790555b5050600160a060020a031991821660009081526003602052604090208054600160a060020a0390921691909216179055565b600054600160a060020a031681565b610e9433600035600160e060020a031916610fd1565b1515610e9f57600080fd5b604080517fbeb38b43000000000000000000000000000000000000000000000000000000008152600160a060020a0319831660048201526000602482018190529151309263beb38b43926044808201939182900301818387803b158015610a7f57600080fd5b60408051348082526020820183815236938301849052600435936024359384938693339360008035600160e060020a031916949092606082018484808284376040519201829003965090945050505050a4610f6c33600035600160e060020a031916610fd1565b1515610f7757600080fd5b600160a060020a031983161515610f8d57600080fd5b5050600580546bffffffffffffffffffffffff191660a060020a909204919091179055565b6005546c0100000000000000000000000090046001606060020a031681565b6000600160a060020a038316301415610fec575060016110d4565b600154600160a060020a038481169116141561100a575060016110d4565b600054600160a060020a03161515611024575060006110d4565b60008054604080517fb7009613000000000000000000000000000000000000000000000000000000008152600160a060020a038781166004830152306024830152600160e060020a0319871660448301529151919092169263b700961392606480820193602093909283900390910190829087803b1580156110a557600080fd5b505af11580156110b9573d6000803e3d6000fd5b505050506040513d60208110156110cf57600080fd5b505190505b92915050565b808201828110156110d457600080fd5b60008161110b61110285670de0b6b3a764000061111c565b600285046110da565b81151561111457fe5b049392505050565b600081158061113957505080820282828281151561113657fe5b04145b15156110d457600080fd00a165627a7a723058203f41e0830166449788dbf5559006cd62d9434a3b84bd3efab9bd0156183940eb0029

   Swarm Source:
bzzr://3f41e0830166449788dbf5559006cd62d9434a3b84bd3efab9bd0156183940eb

 

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