ETH Price: $1,974.86 (+0.64%)
 

Overview

ETH Balance

3.30626453025268287 ETH

Eth Value

$6,529.40 (@ $1,974.86/ETH)

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Set Base Price160461912022-11-25 9:45:591184 days ago1669369559IN
0x3dBDc81a...e395fDcf6
0 ETH0.0040950511.97926861
Set Base Price146677362022-04-27 16:59:301396 days ago1651078770IN
0x3dBDc81a...e395fDcf6
0 ETH0.0174503951.04767279
Query1142177602022-02-16 14:47:491466 days ago1645022869IN
0x3dBDc81a...e395fDcf6
0.005 ETH0.0041164275.73229915
Set Offchain Pay...131786422021-09-07 12:38:401628 days ago1631018320IN
0x3dBDc81a...e395fDcf6
0 ETH0.00275496100.24619159
Remove Cb Addres...131391242021-09-01 10:08:091634 days ago1630490889IN
0x3dBDc81a...e395fDcf6
0 ETH0.0027289103.76863424
Remove Cb Addres...131366542021-09-01 0:53:031635 days ago1630457583IN
0x3dBDc81a...e395fDcf6
0 ETH0.0024298100
Remove Cb Addres...131366542021-09-01 0:53:031635 days ago1630457583IN
0x3dBDc81a...e395fDcf6
0 ETH0.0024298100
Remove Cb Addres...131366542021-09-01 0:53:031635 days ago1630457583IN
0x3dBDc81a...e395fDcf6
0 ETH0.0024298100
Remove Cb Addres...131366542021-09-01 0:53:031635 days ago1630457583IN
0x3dBDc81a...e395fDcf6
0 ETH0.0024298100
Remove Cb Addres...131366542021-09-01 0:53:031635 days ago1630457583IN
0x3dBDc81a...e395fDcf6
0 ETH0.0024298100
Remove Cb Addres...131366542021-09-01 0:53:031635 days ago1630457583IN
0x3dBDc81a...e395fDcf6
0 ETH0.0024298100
Remove Cb Addres...131366542021-09-01 0:53:031635 days ago1630457583IN
0x3dBDc81a...e395fDcf6
0 ETH0.0024298100
Remove Cb Addres...131366542021-09-01 0:53:031635 days ago1630457583IN
0x3dBDc81a...e395fDcf6
0 ETH0.0024298100
Remove Cb Addres...131366542021-09-01 0:53:031635 days ago1630457583IN
0x3dBDc81a...e395fDcf6
0 ETH0.0026298100
Remove Cb Addres...131366542021-09-01 0:53:031635 days ago1630457583IN
0x3dBDc81a...e395fDcf6
0 ETH0.0024298100
Remove Cb Addres...131366542021-09-01 0:53:031635 days ago1630457583IN
0x3dBDc81a...e395fDcf6
0 ETH0.0024298100
Remove Cb Addres...131366542021-09-01 0:53:031635 days ago1630457583IN
0x3dBDc81a...e395fDcf6
0 ETH0.0024298100
Remove Cb Addres...131366542021-09-01 0:53:031635 days ago1630457583IN
0x3dBDc81a...e395fDcf6
0 ETH0.0024298100
Remove Cb Addres...131366502021-09-01 0:52:411635 days ago1630457561IN
0x3dBDc81a...e395fDcf6
0 ETH0.0024298100
Remove Cb Addres...131366502021-09-01 0:52:411635 days ago1630457561IN
0x3dBDc81a...e395fDcf6
0 ETH0.0024298100
Remove Cb Addres...131366502021-09-01 0:52:411635 days ago1630457561IN
0x3dBDc81a...e395fDcf6
0 ETH0.0024298100
Remove Cb Addres...131366502021-09-01 0:52:411635 days ago1630457561IN
0x3dBDc81a...e395fDcf6
0 ETH0.0024298100
Remove Cb Addres...131366502021-09-01 0:52:411635 days ago1630457561IN
0x3dBDc81a...e395fDcf6
0 ETH0.0024286100
Remove Cb Addres...131366502021-09-01 0:52:411635 days ago1630457561IN
0x3dBDc81a...e395fDcf6
0 ETH0.0024298100
Remove Cb Addres...131366502021-09-01 0:52:411635 days ago1630457561IN
0x3dBDc81a...e395fDcf6
0 ETH0.0024298100
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Query245077152026-02-21 20:45:2310 hrs ago1771706723
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245077122026-02-21 20:44:4710 hrs ago1771706687
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245077112026-02-21 20:44:3510 hrs ago1771706675
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245077092026-02-21 20:44:1110 hrs ago1771706651
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245077082026-02-21 20:43:5910 hrs ago1771706639
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245077072026-02-21 20:43:4710 hrs ago1771706627
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245077062026-02-21 20:43:3510 hrs ago1771706615
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245077042026-02-21 20:43:1110 hrs ago1771706591
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245077032026-02-21 20:42:5910 hrs ago1771706579
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245077022026-02-21 20:42:4710 hrs ago1771706567
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245077012026-02-21 20:42:3510 hrs ago1771706555
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245077002026-02-21 20:42:2310 hrs ago1771706543
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245076982026-02-21 20:41:5910 hrs ago1771706519
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245076912026-02-21 20:40:3510 hrs ago1771706435
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245076902026-02-21 20:40:2310 hrs ago1771706423
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245076892026-02-21 20:40:1110 hrs ago1771706411
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245076882026-02-21 20:39:5910 hrs ago1771706399
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245076872026-02-21 20:39:4710 hrs ago1771706387
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245076832026-02-21 20:38:5910 hrs ago1771706339
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245076822026-02-21 20:38:4710 hrs ago1771706327
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245076812026-02-21 20:38:3510 hrs ago1771706315
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245076802026-02-21 20:38:2310 hrs ago1771706303
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245076792026-02-21 20:38:1110 hrs ago1771706291
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245076742026-02-21 20:37:1110 hrs ago1771706231
0x3dBDc81a...e395fDcf6
0.00404237 ETH
Query245076722026-02-21 20:36:4710 hrs ago1771706207
0x3dBDc81a...e395fDcf6
0.00404237 ETH
View All Internal Transactions
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Oraclize

Compiler Version
v0.4.15+commit.bbb8e64f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2017-10-12
*/

/*
Copyright (c) 2015-2016 Oraclize SRL
Copyright (c) 2016-2017 Oraclize LTD
*/

/*
Oraclize Connector v1.2.0
*/

// 'compressed' alternative, where all modifiers have been changed to FUNCTIONS
// which is cheaper for deployment, potentially cheaper execution

pragma solidity ^0.4.11;

contract Oraclize {
    mapping (address => uint) reqc;

    mapping (address => byte) public cbAddresses;

    mapping (address => bool) public offchainPayment;

    event Log1(address sender, bytes32 cid, uint timestamp, string datasource, string arg, uint gaslimit, byte proofType, uint gasPrice);
    event Log2(address sender, bytes32 cid, uint timestamp, string datasource, string arg1, string arg2, uint gaslimit, byte proofType, uint gasPrice);
    event LogN(address sender, bytes32 cid, uint timestamp, string datasource, bytes args, uint gaslimit, byte proofType, uint gasPrice);
    event Log1_fnc(address sender, bytes32 cid, uint timestamp, string datasource, string arg, function() external callback, uint gaslimit, byte proofType, uint gasPrice);
    event Log2_fnc(address sender, bytes32 cid, uint timestamp, string datasource, string arg1, string arg2, function() external callback, uint gaslimit, byte proofType, uint gasPrice);
    event LogN_fnc(address sender, bytes32 cid, uint timestamp, string datasource, bytes args, function() external callback, uint gaslimit, byte proofType, uint gasPrice);

    event Emit_OffchainPaymentFlag(address indexed idx_sender, address sender, bool indexed idx_flag, bool flag);

    address owner;
    address paymentFlagger;

    function changeAdmin(address _newAdmin)
    external
    {
        onlyadmin();
        owner = _newAdmin;
    }

    function changePaymentFlagger(address _newFlagger)
    external
    {
        onlyadmin();
        paymentFlagger = _newFlagger;
    }

    function addCbAddress(address newCbAddress, byte addressType)
    external
    {
        onlyadmin();
        //bytes memory nil = '';
        addCbAddress(newCbAddress, addressType, hex'');
    }

    // proof is currently a placeholder for when associated proof for addressType is added
    function addCbAddress(address newCbAddress, byte addressType, bytes proof)
    public
    {
        onlyadmin();
        cbAddresses[newCbAddress] = addressType;
    }

    function removeCbAddress(address newCbAddress)
    external
    {
        onlyadmin();
        delete cbAddresses[newCbAddress];
    }

    function cbAddress()
    constant
    returns (address _cbAddress)
    {
        if (cbAddresses[tx.origin] != 0)
            _cbAddress = tx.origin;
    }

    function addDSource(string dsname, uint multiplier)
    external
    {
        addDSource(dsname, 0x00, multiplier);
    }

    function addDSource(string dsname, byte proofType, uint multiplier)
    public
    {
        onlyadmin();
        bytes32 dsname_hash = sha3(dsname, proofType);
        dsources[dsources.length++] = dsname_hash;
        price_multiplier[dsname_hash] = multiplier;
    }

    // Utilized by bridge
    function multiAddDSource(bytes32[] dsHash, uint256[] multiplier)
    external
    {
        onlyadmin();
        // dsHash -> sha3(DATASOURCE_NAME, PROOF_TYPE);
        for (uint i=0; i<dsHash.length; i++) {
            dsources[dsources.length++] = dsHash[i];
            price_multiplier[dsHash[i]] = multiplier[i];
        }
    }

    function multisetProofType(uint[] _proofType, address[] _addr)
    external
    {
        onlyadmin();
        for (uint i=0; i<_addr.length; i++) addr_proofType[_addr[i]] = byte(_proofType[i]);
    }

    function multisetCustomGasPrice(uint[] _gasPrice, address[] _addr)
    external
    {
        onlyadmin();
        for (uint i=0; i<_addr.length; i++) addr_gasPrice[_addr[i]] = _gasPrice[i];
    }

    uint gasprice = 20000000000;

    function setGasPrice(uint newgasprice)
    external
    {
        onlyadmin();
        gasprice = newgasprice;
    }

    function setBasePrice(uint new_baseprice)
    external
    { //0.001 usd in ether
        onlyadmin();
        baseprice = new_baseprice;
        for (uint i=0; i<dsources.length; i++) price[dsources[i]] = new_baseprice*price_multiplier[dsources[i]];
    }

    function setBasePrice(uint new_baseprice, bytes proofID)
    external
    { //0.001 usd in ether
        onlyadmin();
        baseprice = new_baseprice;
        for (uint i=0; i<dsources.length; i++) price[dsources[i]] = new_baseprice*price_multiplier[dsources[i]];
    }

    function setOffchainPayment(address _addr, bool _flag)
    external
    {
      if (msg.sender != paymentFlagger) throw;
      offchainPayment[_addr] = _flag;
      Emit_OffchainPaymentFlag(_addr, _addr, _flag, _flag);
    }

    function withdrawFunds(address _addr)
    external
    {
        onlyadmin();
        _addr.send(this.balance);
    }

    // unnecessary?
    //function() {}

    function Oraclize() {
        owner = msg.sender;
    }

    // Pesudo-modifiers

    function onlyadmin()
    private {
        if (msg.sender != owner) throw;
    }

    function costs(string datasource, uint gaslimit)
    private
    returns (uint price) {
        price = getPrice(datasource, gaslimit, msg.sender);

        if (msg.value >= price){
            uint diff = msg.value - price;
            if (diff > 0) {
                // added for correct query cost to be returned
                if(!msg.sender.send(diff)) {
                    throw;
                }
            }
        } else throw;
    }

    mapping (address => byte) addr_proofType;
    mapping (address => uint) addr_gasPrice;
    uint public baseprice;
    mapping (bytes32 => uint) price;
    mapping (bytes32 => uint) price_multiplier;
    bytes32[] dsources;

    bytes32[] public randomDS_sessionPubKeysHash;

    function randomDS_updateSessionPubKeysHash(bytes32[] _newSessionPubKeysHash)
    external
    {
        onlyadmin();
        randomDS_sessionPubKeysHash.length = 0;
        for (uint i=0; i<_newSessionPubKeysHash.length; i++) randomDS_sessionPubKeysHash.push(_newSessionPubKeysHash[i]);
    }

    function randomDS_getSessionPubKeyHash()
    external
    constant
    returns (bytes32) {
        uint i = uint(sha3(reqc[msg.sender]))%randomDS_sessionPubKeysHash.length;
        return randomDS_sessionPubKeysHash[i];
    }

    function setProofType(byte _proofType)
    external
    {
        addr_proofType[msg.sender] = _proofType;
    }

    function setCustomGasPrice(uint _gasPrice)
    external
    {
        addr_gasPrice[msg.sender] = _gasPrice;
    }

    function getPrice(string _datasource)
    public
    returns (uint _dsprice)
    {
        return getPrice(_datasource, msg.sender);
    }

    function getPrice(string _datasource, uint _gaslimit)
    public
    returns (uint _dsprice)
    {
        return getPrice(_datasource, _gaslimit, msg.sender);
    }

    function getPrice(string _datasource, address _addr)
    private
    returns (uint _dsprice)
    {
        return getPrice(_datasource, 200000, _addr);
    }

    function getPrice(string _datasource, uint _gaslimit, address _addr)
    private
    returns (uint _dsprice)
    {
        uint gasprice_ = addr_gasPrice[_addr];
        if (
                (offchainPayment[_addr])
            ||(
                (_gaslimit <= 200000)&&
                (reqc[_addr] == 0)&&
                (gasprice_ <= gasprice)&&
                (tx.origin != cbAddress())
            )
        ) return 0;

        if (gasprice_ == 0) gasprice_ = gasprice;
        _dsprice = price[sha3(_datasource, addr_proofType[_addr])];
        _dsprice += _gaslimit*gasprice_;
        return _dsprice;
    }

    function getCodeSize(address _addr)
    private
    constant
    returns(uint _size)
    {
        assembly {
            _size := extcodesize(_addr)
        }
    }

    function query(string _datasource, string _arg)
    payable
    external
    returns (bytes32 _id)
    {
        return query1(0, _datasource, _arg, 200000);
    }

    function query1(string _datasource, string _arg)
    payable
    external
    returns (bytes32 _id)
    {
        return query1(0, _datasource, _arg, 200000);
    }

    function query2(string _datasource, string _arg1, string _arg2)
    payable
    external
    returns (bytes32 _id)
    {
        return query2(0, _datasource, _arg1, _arg2, 200000);
    }

    function queryN(string _datasource, bytes _args)
    payable
    external
    returns (bytes32 _id)
    {
        return queryN(0, _datasource, _args, 200000);
    }

    function query(uint _timestamp, string _datasource, string _arg)
    payable
    external
    returns (bytes32 _id)
    {
        return query1(_timestamp, _datasource, _arg, 200000);
    }

    function query1(uint _timestamp, string _datasource, string _arg)
    payable
    external
    returns (bytes32 _id)
    {
        return query1(_timestamp, _datasource, _arg, 200000);
    }

    function query2(uint _timestamp, string _datasource, string _arg1, string _arg2)
    payable
    external
    returns (bytes32 _id)
    {
        return query2(_timestamp, _datasource, _arg1, _arg2, 200000);
    }

    function queryN(uint _timestamp, string _datasource, bytes _args)
    payable
    external
    returns (bytes32 _id)
    {
        return queryN(_timestamp, _datasource, _args, 200000);
    }

/*  Needless?
    function query(uint _timestamp, string _datasource, string _arg, uint _gaslimit)
    payable
    external
    returns (bytes32 _id)
    {
        return query1(_timestamp, _datasource, _arg, _gaslimit);
    }
*/
    function query_withGasLimit(uint _timestamp, string _datasource, string _arg, uint _gaslimit)
    payable
    external
    returns (bytes32 _id)
    {
        return query1(_timestamp, _datasource, _arg, _gaslimit);
    }

    function query1_withGasLimit(uint _timestamp, string _datasource, string _arg, uint _gaslimit)
    payable
    external
    returns (bytes32 _id)
    {
        return query1(_timestamp, _datasource, _arg, _gaslimit);
    }

    function query2_withGasLimit(uint _timestamp, string _datasource, string _arg1, string _arg2, uint _gaslimit)
    payable
    external
    returns (bytes32 _id)
    {
        return query2(_timestamp, _datasource, _arg1, _arg2, _gaslimit);
    }

    function queryN_withGasLimit(uint _timestamp, string _datasource, bytes _args, uint _gaslimit)
    payable
    external
    returns (bytes32 _id)
    {
        return queryN(_timestamp, _datasource, _args, _gaslimit);
    }

    function query1(uint _timestamp, string _datasource, string _arg, uint _gaslimit)
    payable
    public
    returns (bytes32 _id)
    {
        costs(_datasource, _gaslimit);
    	if ((_timestamp > now+3600*24*60)||(_gaslimit > block.gaslimit)) throw;

        _id = sha3(this, msg.sender, reqc[msg.sender]);
        reqc[msg.sender]++;
        Log1(msg.sender, _id, _timestamp, _datasource, _arg, _gaslimit, addr_proofType[msg.sender], addr_gasPrice[msg.sender]);
        return _id;
    }

    function query2(uint _timestamp, string _datasource, string _arg1, string _arg2, uint _gaslimit)
    payable
    public
    returns (bytes32 _id)
    {
        costs(_datasource, _gaslimit);
    	if ((_timestamp > now+3600*24*60)||(_gaslimit > block.gaslimit)) throw;

        _id = sha3(this, msg.sender, reqc[msg.sender]);
        reqc[msg.sender]++;
        Log2(msg.sender, _id, _timestamp, _datasource, _arg1, _arg2, _gaslimit, addr_proofType[msg.sender], addr_gasPrice[msg.sender]);
        return _id;
    }

    function queryN(uint _timestamp, string _datasource, bytes _args, uint _gaslimit)
    payable
    public
    returns (bytes32 _id)
    {
        costs(_datasource, _gaslimit);
    	if ((_timestamp > now+3600*24*60)||(_gaslimit > block.gaslimit)) throw;

        _id = sha3(this, msg.sender, reqc[msg.sender]);
        reqc[msg.sender]++;
        LogN(msg.sender, _id, _timestamp, _datasource, _args, _gaslimit, addr_proofType[msg.sender], addr_gasPrice[msg.sender]);
        return _id;
    }

    function query1_fnc(uint _timestamp, string _datasource, string _arg, function() external _fnc, uint _gaslimit)
    payable
    public
    returns (bytes32 _id)
    {
        costs(_datasource, _gaslimit);
        if ((_timestamp > now+3600*24*60)||(_gaslimit > block.gaslimit)||address(_fnc) != msg.sender) throw;

        _id = sha3(this, msg.sender, reqc[msg.sender]);
        reqc[msg.sender]++;
        Log1_fnc(msg.sender, _id, _timestamp, _datasource, _arg, _fnc, _gaslimit, addr_proofType[msg.sender], addr_gasPrice[msg.sender]);
        return _id;
    }

    function query2_fnc(uint _timestamp, string _datasource, string _arg1, string _arg2, function() external _fnc, uint _gaslimit)
    payable
    public
    returns (bytes32 _id)
    {
        costs(_datasource, _gaslimit);
        if ((_timestamp > now+3600*24*60)||(_gaslimit > block.gaslimit)||address(_fnc) != msg.sender) throw;

        _id = sha3(this, msg.sender, reqc[msg.sender]);
        reqc[msg.sender]++;
        Log2_fnc(msg.sender, _id, _timestamp, _datasource, _arg1, _arg2, _fnc,  _gaslimit, addr_proofType[msg.sender], addr_gasPrice[msg.sender]);
        return _id;
    }

    function queryN_fnc(uint _timestamp, string _datasource, bytes _args, function() external _fnc, uint _gaslimit)
    payable
    public
    returns (bytes32 _id)
    {
        costs(_datasource, _gaslimit);
        if ((_timestamp > now+3600*24*60)||(_gaslimit > block.gaslimit)||address(_fnc) != msg.sender) throw;

        _id = sha3(this, msg.sender, reqc[msg.sender]);
        reqc[msg.sender]++;
        LogN_fnc(msg.sender, _id, _timestamp, _datasource, _args, _fnc, _gaslimit, addr_proofType[msg.sender], addr_gasPrice[msg.sender]);
        return _id;
    }
}

Contract Security Audit

Contract ABI

API
[{"constant":false,"inputs":[{"name":"_timestamp","type":"uint256"},{"name":"_datasource","type":"string"},{"name":"_arg","type":"string"}],"name":"query1","outputs":[{"name":"_id","type":"bytes32"}],"payable":true,"type":"function"},{"constant":false,"inputs":[{"name":"_datasource","type":"string"},{"name":"_gaslimit","type":"uint256"}],"name":"getPrice","outputs":[{"name":"_dsprice","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_datasource","type":"string"},{"name":"_arg","type":"string"}],"name":"query1","outputs":[{"name":"_id","type":"bytes32"}],"payable":true,"type":"function"},{"constant":true,"inputs":[],"name":"baseprice","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"newCbAddress","type":"address"}],"name":"removeCbAddress","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_newSessionPubKeysHash","type":"bytes32[]"}],"name":"randomDS_updateSessionPubKeysHash","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_datasource","type":"string"}],"name":"getPrice","outputs":[{"name":"_dsprice","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_timestamp","type":"uint256"},{"name":"_datasource","type":"string"},{"name":"_arg","type":"string"},{"name":"_gaslimit","type":"uint256"}],"name":"query1","outputs":[{"name":"_id","type":"bytes32"}],"payable":true,"type":"function"},{"constant":false,"inputs":[{"name":"newCbAddress","type":"address"},{"name":"addressType","type":"bytes1"}],"name":"addCbAddress","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"withdrawFunds","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_proofType","type":"bytes1"}],"name":"setProofType","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"dsHash","type":"bytes32[]"},{"name":"multiplier","type":"uint256[]"}],"name":"multiAddDSource","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_timestamp","type":"uint256"},{"name":"_datasource","type":"string"},{"name":"_arg","type":"string"},{"name":"_gaslimit","type":"uint256"}],"name":"query1_withGasLimit","outputs":[{"name":"_id","type":"bytes32"}],"payable":true,"type":"function"},{"constant":false,"inputs":[{"name":"newCbAddress","type":"address"},{"name":"addressType","type":"bytes1"},{"name":"proof","type":"bytes"}],"name":"addCbAddress","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_timestamp","type":"uint256"},{"name":"_datasource","type":"string"},{"name":"_arg1","type":"string"},{"name":"_arg2","type":"string"}],"name":"query2","outputs":[{"name":"_id","type":"bytes32"}],"payable":true,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"offchainPayment","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"new_baseprice","type":"uint256"},{"name":"proofID","type":"bytes"}],"name":"setBasePrice","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_timestamp","type":"uint256"},{"name":"_datasource","type":"string"},{"name":"_arg1","type":"string"},{"name":"_arg2","type":"string"},{"name":"_gaslimit","type":"uint256"}],"name":"query2","outputs":[{"name":"_id","type":"bytes32"}],"payable":true,"type":"function"},{"constant":false,"inputs":[{"name":"_newFlagger","type":"address"}],"name":"changePaymentFlagger","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_timestamp","type":"uint256"},{"name":"_datasource","type":"string"},{"name":"_args","type":"bytes"},{"name":"_gaslimit","type":"uint256"}],"name":"queryN","outputs":[{"name":"_id","type":"bytes32"}],"payable":true,"type":"function"},{"constant":false,"inputs":[{"name":"_datasource","type":"string"},{"name":"_arg","type":"string"}],"name":"query","outputs":[{"name":"_id","type":"bytes32"}],"payable":true,"type":"function"},{"constant":false,"inputs":[{"name":"_timestamp","type":"uint256"},{"name":"_datasource","type":"string"},{"name":"_args","type":"bytes"}],"name":"queryN","outputs":[{"name":"_id","type":"bytes32"}],"payable":true,"type":"function"},{"constant":false,"inputs":[{"name":"_timestamp","type":"uint256"},{"name":"_datasource","type":"string"},{"name":"_arg1","type":"string"},{"name":"_arg2","type":"string"},{"name":"_gaslimit","type":"uint256"}],"name":"query2_withGasLimit","outputs":[{"name":"_id","type":"bytes32"}],"payable":true,"type":"function"},{"constant":false,"inputs":[{"name":"_newAdmin","type":"address"}],"name":"changeAdmin","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_datasource","type":"string"},{"name":"_args","type":"bytes"}],"name":"queryN","outputs":[{"name":"_id","type":"bytes32"}],"payable":true,"type":"function"},{"constant":false,"inputs":[{"name":"dsname","type":"string"},{"name":"multiplier","type":"uint256"}],"name":"addDSource","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"randomDS_getSessionPubKeyHash","outputs":[{"name":"","type":"bytes32"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_timestamp","type":"uint256"},{"name":"_datasource","type":"string"},{"name":"_arg1","type":"string"},{"name":"_arg2","type":"string"},{"name":"_fnc","type":"function"},{"name":"_gaslimit","type":"uint256"}],"name":"query2_fnc","outputs":[{"name":"_id","type":"bytes32"}],"payable":true,"type":"function"},{"constant":false,"inputs":[{"name":"_timestamp","type":"uint256"},{"name":"_datasource","type":"string"},{"name":"_arg","type":"string"}],"name":"query","outputs":[{"name":"_id","type":"bytes32"}],"payable":true,"type":"function"},{"constant":false,"inputs":[{"name":"dsname","type":"string"},{"name":"proofType","type":"bytes1"},{"name":"multiplier","type":"uint256"}],"name":"addDSource","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"newgasprice","type":"uint256"}],"name":"setGasPrice","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"cbAddress","outputs":[{"name":"_cbAddress","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_timestamp","type":"uint256"},{"name":"_datasource","type":"string"},{"name":"_arg","type":"string"},{"name":"_gaslimit","type":"uint256"}],"name":"query_withGasLimit","outputs":[{"name":"_id","type":"bytes32"}],"payable":true,"type":"function"},{"constant":false,"inputs":[{"name":"_timestamp","type":"uint256"},{"name":"_datasource","type":"string"},{"name":"_args","type":"bytes"},{"name":"_gaslimit","type":"uint256"}],"name":"queryN_withGasLimit","outputs":[{"name":"_id","type":"bytes32"}],"payable":true,"type":"function"},{"constant":false,"inputs":[{"name":"_gasPrice","type":"uint256"}],"name":"setCustomGasPrice","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_gasPrice","type":"uint256[]"},{"name":"_addr","type":"address[]"}],"name":"multisetCustomGasPrice","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"cbAddresses","outputs":[{"name":"","type":"bytes1"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_proofType","type":"uint256[]"},{"name":"_addr","type":"address[]"}],"name":"multisetProofType","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_timestamp","type":"uint256"},{"name":"_datasource","type":"string"},{"name":"_arg","type":"string"},{"name":"_fnc","type":"function"},{"name":"_gaslimit","type":"uint256"}],"name":"query1_fnc","outputs":[{"name":"_id","type":"bytes32"}],"payable":true,"type":"function"},{"constant":false,"inputs":[{"name":"new_baseprice","type":"uint256"}],"name":"setBasePrice","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"randomDS_sessionPubKeysHash","outputs":[{"name":"","type":"bytes32"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_datasource","type":"string"},{"name":"_arg1","type":"string"},{"name":"_arg2","type":"string"}],"name":"query2","outputs":[{"name":"_id","type":"bytes32"}],"payable":true,"type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"},{"name":"_flag","type":"bool"}],"name":"setOffchainPayment","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_timestamp","type":"uint256"},{"name":"_datasource","type":"string"},{"name":"_args","type":"bytes"},{"name":"_fnc","type":"function"},{"name":"_gaslimit","type":"uint256"}],"name":"queryN_fnc","outputs":[{"name":"_id","type":"bytes32"}],"payable":true,"type":"function"},{"inputs":[],"payable":false,"type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"cid","type":"bytes32"},{"indexed":false,"name":"timestamp","type":"uint256"},{"indexed":false,"name":"datasource","type":"string"},{"indexed":false,"name":"arg","type":"string"},{"indexed":false,"name":"gaslimit","type":"uint256"},{"indexed":false,"name":"proofType","type":"bytes1"},{"indexed":false,"name":"gasPrice","type":"uint256"}],"name":"Log1","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"cid","type":"bytes32"},{"indexed":false,"name":"timestamp","type":"uint256"},{"indexed":false,"name":"datasource","type":"string"},{"indexed":false,"name":"arg1","type":"string"},{"indexed":false,"name":"arg2","type":"string"},{"indexed":false,"name":"gaslimit","type":"uint256"},{"indexed":false,"name":"proofType","type":"bytes1"},{"indexed":false,"name":"gasPrice","type":"uint256"}],"name":"Log2","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"cid","type":"bytes32"},{"indexed":false,"name":"timestamp","type":"uint256"},{"indexed":false,"name":"datasource","type":"string"},{"indexed":false,"name":"args","type":"bytes"},{"indexed":false,"name":"gaslimit","type":"uint256"},{"indexed":false,"name":"proofType","type":"bytes1"},{"indexed":false,"name":"gasPrice","type":"uint256"}],"name":"LogN","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"cid","type":"bytes32"},{"indexed":false,"name":"timestamp","type":"uint256"},{"indexed":false,"name":"datasource","type":"string"},{"indexed":false,"name":"arg","type":"string"},{"indexed":false,"name":"callback","type":"function"},{"indexed":false,"name":"gaslimit","type":"uint256"},{"indexed":false,"name":"proofType","type":"bytes1"},{"indexed":false,"name":"gasPrice","type":"uint256"}],"name":"Log1_fnc","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"cid","type":"bytes32"},{"indexed":false,"name":"timestamp","type":"uint256"},{"indexed":false,"name":"datasource","type":"string"},{"indexed":false,"name":"arg1","type":"string"},{"indexed":false,"name":"arg2","type":"string"},{"indexed":false,"name":"callback","type":"function"},{"indexed":false,"name":"gaslimit","type":"uint256"},{"indexed":false,"name":"proofType","type":"bytes1"},{"indexed":false,"name":"gasPrice","type":"uint256"}],"name":"Log2_fnc","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"cid","type":"bytes32"},{"indexed":false,"name":"timestamp","type":"uint256"},{"indexed":false,"name":"datasource","type":"string"},{"indexed":false,"name":"args","type":"bytes"},{"indexed":false,"name":"callback","type":"function"},{"indexed":false,"name":"gaslimit","type":"uint256"},{"indexed":false,"name":"proofType","type":"bytes1"},{"indexed":false,"name":"gasPrice","type":"uint256"}],"name":"LogN_fnc","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"idx_sender","type":"address"},{"indexed":false,"name":"sender","type":"address"},{"indexed":true,"name":"idx_flag","type":"bool"},{"indexed":false,"name":"flag","type":"bool"}],"name":"Emit_OffchainPaymentFlag","type":"event"}]

60606040526404a817c800600555341561001857600080fd5b5b60038054600160a060020a03191633600160a060020a03161790555b5b612d49806100456000396000f300606060405236156102175763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166323dc42e7811461021c5780632ef3accc1461025157806345362978146102b6578063480a434d146102e75780634a64c23f1461030c578063512c0b9c1461032d578063524f38891461034d5780635c242c59146103b0578063627fd3bb1461045157806368742da61461047f578063688dcfd7146104a05780636c0f7ee7146104c257806375700437146104ee5780637653740f1461052657806377228659146105975780637bc9165b146105d85780637d242ae51461060b5780637e1c42051461062f578063801298fa1461071257806380325b2d1461073357806381ade307146102b657806383eed3d51461080557806385dee34c1461083a5780638f2839701461087e57806398cf6f221461089f578063a2ec191a146108d0578063abaa5f3e146108f4578063ad44d0ca14610919578063adf59f991461021c578063b5bfdd7314610a52578063bf1fe42014610ab6578063c281d19e14610ace578063c51be90f146104ee578063c55c1cb614610b35578063ca6ad1e414610b6d578063d959701614610b85578063db23995114610bb1578063db37e42f14610bed578063dba8fc6114610c19578063de4b326214610cdb578063e6c0e9e114610cf3578063e839e65e14610d1b578063e8be385314610d58578063f84072a514610d7e575b600080fd5b61023f600480359060248035808201929081013591604435908101910135610e40565b60405190815260200160405180910390f35b341561025c57600080fd5b61023f60046024813581810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496505093359350610ebe92505050565b60405190815260200160405180910390f35b61023f6024600480358281019290820135918135918201910135610ed4565b60405190815260200160405180910390f35b34156102f257600080fd5b61023f610f52565b60405190815260200160405180910390f35b341561031757600080fd5b61032b600160a060020a0360043516610f58565b005b341561033857600080fd5b61032b6004803560248101910135610f84565b005b341561035857600080fd5b61023f60046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610ff295505050505050565b60405190815260200160405180910390f35b61023f600480359060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650509335935061100692505050565b60405190815260200160405180910390f35b341561045c57600080fd5b61032b600160a060020a0360043516600160f860020a03196024351661121f565b005b341561048a57600080fd5b61032b600160a060020a0360043516611245565b005b34156104ab57600080fd5b61032b600160f860020a031960043516611283565b005b34156104cd57600080fd5b61032b60246004803582810192908201359181359182019101356112af565b005b61023f600480359060248035808201929081013591604435908101910135606435611359565b60405190815260200160405180910390f35b341561053157600080fd5b61032b60048035600160a060020a03169060248035600160f860020a031916919060649060443590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506113d595505050505050565b005b61023f60048035906024803580820192908101359160443580820192908101359160643590810191013561140b565b60405190815260200160405180910390f35b34156105e357600080fd5b6105f7600160a060020a03600435166114bd565b604051901515815260200160405180910390f35b341561061657600080fd5b61032b6004803590602480359081019101356114d2565b005b61023f600480359060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650509335935061156f92505050565b60405190815260200160405180910390f35b341561071d57600080fd5b61032b600160a060020a03600435166117f8565b005b61023f600480359060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650509335935061182c92505050565b60405190815260200160405180910390f35b61023f6024600480358281019290820135918135918201910135610ed4565b60405190815260200160405180910390f35b61023f600480359060248035808201929081013591604435908101910135611ac3565b60405190815260200160405180910390f35b61023f600480359060248035808201929081013591604435808201929081013591606435908101910135608435611b41565b60405190815260200160405180910390f35b341561088957600080fd5b61032b600160a060020a0360043516611bf1565b005b61023f6024600480358281019290820135918135918201910135611c25565b60405190815260200160405180910390f35b34156108db57600080fd5b61032b602460048035828101929101359035611ca3565b005b34156108ff57600080fd5b61023f611ce6565b60405190815260200160405180910390f35b61023f600480359060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052818152929190602084018383808284375094965050606060020a8535908104956801000000000000000090910463ffffffff169450602001359250611d4b915050565b60405190815260200160405180910390f35b61023f600480359060248035808201929081013591604435908101910135610e40565b60405190815260200160405180910390f35b3415610a5d57600080fd5b61032b60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965050600160f860020a03198535169460200135935061209792505050565b005b3415610ac157600080fd5b61032b60043561215a565b005b3415610ad957600080fd5b610ae161216b565b604051600160a060020a03909116815260200160405180910390f35b61023f600480359060248035808201929081013591604435908101910135606435611359565b60405190815260200160405180910390f35b61023f60048035906024803580820192908101359160443590810191013560643561221c565b60405190815260200160405180910390f35b3415610b7857600080fd5b61032b600435612298565b005b3415610b9057600080fd5b61032b60246004803582810192908201359181359182019101356122b7565b005b3415610bbc57600080fd5b610bd0600160a060020a0360043516612337565b604051600160f860020a0319909116815260200160405180910390f35b3415610bf857600080fd5b61032b602460048035828101929082013591813591820191013561234f565b005b61023f600480359060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052818152929190602084018383808284375094965050606060020a8535908104956801000000000000000090910463ffffffff1694506020013592506123ed915050565b60405190815260200160405180910390f35b3415610ce657600080fd5b61032b60043561264d565b005b3415610cfe57600080fd5b61023f6004356126e8565b60405190815260200160405180910390f35b61023f602460048035828101929082013591813580830192908201359160443591820191013561270b565b60405190815260200160405180910390f35b3415610d6357600080fd5b61032b600160a060020a036004351660243515156127bd565b005b61023f600480359060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052818152929190602084018383808284375094965050606060020a8535908104956801000000000000000090910463ffffffff16945060200135925061284f915050565b60405190815260200160405180910390f35b6000610eb28686868080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505085858080601f01602080910402602001604051908101604052818152929190602084018383808284375062030d4094506110069350505050565b90505b95945050505050565b6000610ecb838333612aaf565b90505b92915050565b6000610f47600086868080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505085858080601f01602080910402602001604051908101604052818152929190602084018383808284375062030d4094506110069350505050565b90505b949350505050565b60085481565b610f60612c07565b600160a060020a0381166000908152600160205260409020805460ff191690555b50565b6000610f8e612c07565b6000610f9b600c82612ca8565b50600090505b81811015610fec57600c805460018101610fbb8382612ca8565b916000526020600020900160005b858585818110610fd557fe5b60200291909101359092555050505b600101610fa1565b5b505050565b6000610ffe8233612c25565b90505b919050565b60006110128483612c3e565b5042624f1a000185118061102557504582115b1561102f57600080fd5b303360008033600160a060020a0316600160a060020a0316815260200190815260200160002054604051606060020a600160a060020a0394851681028252929093169091026014830152602882015260480160405190819003902033600160a060020a038116600090815260208181526040808320805460010190556006825280832054600790925291829020549394507fb76d0edd90c6a07aa3ff7a222d7f5933e29c6acc660c059c97837f05c4ca1a849385928a928a928a928a9260f860020a02919051600160a060020a0389168152602081018890526040810187905260a08101849052600160f860020a0319831660c082015260e0810182905261010060608201818152906080830190830188818151815260200191508051906020019080838360005b838110156111705780820151818401525b602001611157565b50505050905090810190601f16801561119d5780820380516001836020036101000a031916815260200191505b50838103825287818151815260200191508051906020019080838360005b838110156111d45780820151818401525b6020016111bb565b50505050905090810190601f1680156112015780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390a15b949350505050565b611227612c07565b61124082826020604051908101604052600081526113d5565b5b5050565b61124d612c07565b80600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f150505050505b50565b33600160a060020a03166000908152600660205260409020805460ff191660f860020a83041790555b50565b60006112b9612c07565b5060005b83811015611351578484828181106112d157fe5b600b8054602090920293909301359291506112ef8260018301612ca8565b815481106112f957fe5b906000526020600020900160005b505582828281811061131557fe5b90506020020135600a6000878785818110151561132e57fe5b60209081029290920135835250810191909152604001600020555b6001016112bd565b5b5050505050565b60006113c88787878080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505086868080601f0160208091040260200160405190810160405281815292919060208401838380828437508a94506110069350505050565b90505b9695505050505050565b6113dd612c07565b600160a060020a0383166000908152600160205260409020805460ff191660f860020a84041790555b505050565b60006114af8888888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505086868080601f01602080910402602001604051908101604052818152929190602084018383808284375062030d40945061156f9350505050565b90505b979650505050505050565b60026020526000908152604090205460ff1681565b60006114dc612c07565b50600883905560005b600b5481101561156857600a6000600b8381548110151561150257fe5b906000526020600020900160005b50546000191660001916815260200190815260200160002054840260096000600b8481548110151561153e57fe5b906000526020600020900160005b505481526020810191909152604001600020555b6001016114e5565b5b50505050565b600061157b8583612c3e565b5042624f1a000186118061158e57504582115b1561159857600080fd5b303360008033600160a060020a0316600160a060020a0316815260200190815260200160002054604051606060020a600160a060020a0394851681028252929093169091026014830152602882015260480160405190819003902033600160a060020a038116600090815260208181526040808320805460010190556006825280832054600790925291829020549394507faf30e4d66b2f1f23e63ef4591058a897f67e6867233e33ca3508b982dcc4129b9385928b928b928b928b928b9260f860020a9091029151600160a060020a038a168152602081018990526040810188905260c08101849052600160f860020a0319831660e082015261010081018290526101206060820181815290608083019060a084019084018a818151815260200191508051906020019080838360005b838110156116e25780820151818401525b6020016116c9565b50505050905090810190601f16801561170f5780820380516001836020036101000a031916815260200191505b50848103835289818151815260200191508051906020019080838360005b838110156117465780820151818401525b60200161172d565b50505050905090810190601f1680156117735780820380516001836020036101000a031916815260200191505b50848103825288818151815260200191508051906020019080838360005b838110156117aa5780820151818401525b602001611791565b50505050905090810190601f1680156117d75780820380516001836020036101000a031916815260200191505b509c5050505050505050505050505060405180910390a15b95945050505050565b611800612c07565b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b60006118388483612c3e565b5042624f1a000185118061184b57504582115b1561185557600080fd5b303360008033600160a060020a0316600160a060020a0316815260200190815260200160002054604051606060020a600160a060020a0394851681028252929093169091026014830152602882015260480160405190819003902033600160a060020a038116600090815260208181526040808320805460010190556006825280832054600790925291829020549394507f3af7d71c651d8670228b02a0b636ffa73a7f759ef99ff9c024bc3b044a7244389385928a928a928a928a9260f860020a02919051600160a060020a0389168152602081018890526040810187905260a08101849052600160f860020a0319831660c082015260e0810182905261010060608201818152906080830190830188818151815260200191508051906020019080838360005b838110156111705780820151818401525b602001611157565b50505050905090810190601f16801561119d5780820380516001836020036101000a031916815260200191505b50838103825287818151815260200191508051906020019080838360005b838110156111d45780820151818401525b6020016111bb565b50505050905090810190601f1680156112015780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390a15b949350505050565b6000610f47600086868080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505085858080601f01602080910402602001604051908101604052818152929190602084018383808284375062030d4094506110069350505050565b90505b949350505050565b6000610eb28686868080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505085858080601f01602080910402602001604051908101604052818152929190602084018383808284375062030d40945061182c9350505050565b90505b95945050505050565b6000611be28989898080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505088888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f0160208091040260200160405190810160405281815292919060208401838380828437508b945061156f9350505050565b90505b98975050505050505050565b611bf9612c07565b6003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b6000610f47600086868080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505085858080601f01602080910402602001604051908101604052818152929190602084018383808284375062030d40945061182c9350505050565b90505b949350505050565b610fec83838080601f0160208091040260200160405190810160405281815292919060208401838380828437506000945087935061209792505050565b5b505050565b600c54600160a060020a0333166000908152602081905260408082205491928392909151908152602001604051908190039020811515611d2257fe5b069050600c81815481101515611d3457fe5b906000526020600020900160005b505491505b5090565b6000611d578783612c3e565b5042624f1a0001881180611d6a57504582115b80611d87575033600160a060020a031684600160a060020a031614155b15611d9157600080fd5b303360008033600160a060020a0316600160a060020a0316815260200190815260200160002054604051606060020a600160a060020a0394851681028252929093169091026014830152602882015260480160405190819003902033600160a060020a038116600090815260208181526040808320805460010190556006825280832054600790925291829020549394507fcc57f89a6a20799d672e6569d224340220a0891ad6efa3039e7728f0c88854b39385928d928d928d928d928d928d928d9260f860020a02919051600160a060020a038c168152602081018b9052604081018a905268010000000000000000640100000000870263ffffffff8716170260c082015260e08101849052600160f860020a0319831661010082015261012081018290526101406060820181815290608083019060a084019084018c818151815260200191508051906020019080838360005b83811015611eff5780820151818401525b602001611ee6565b50505050905090810190601f168015611f2c5780820380516001836020036101000a031916815260200191505b5084810383528b818151815260200191508051906020019080838360005b83811015611f635780820151818401525b602001611f4a565b50505050905090810190601f168015611f905780820380516001836020036101000a031916815260200191505b5084810382528a818151815260200191508051906020019080838360005b83811015611fc75780820151818401525b602001611fae565b50505050905090810190601f168015611ff45780820380516001836020036101000a031916815260200191505b509e50505050505050505050505050505060405180910390a15b979650505050505050565b6000610eb28686868080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505085858080601f01602080910402602001604051908101604052818152929190602084018383808284375062030d4094506110069350505050565b90505b95945050505050565b60006120a1612c07565b83836040518083805190602001908083835b602083106120d357805182525b601f1990920191602091820191016120b3565b6001836020036101000a0380198251168184511617909252505050600160f860020a0319909416919093019081526001019250604091505051908190039020600b805491925082916121288260018301612ca8565b8154811061213257fe5b906000526020600020900160005b50556000818152600a602052604090208290555b50505050565b612162612c07565b60058190555b50565b32600160a060020a031660009081526001602052604081205460f860020a02600160f860020a0319161561219c5750325b5b90565b60006113c88787878080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505086868080601f0160208091040260200160405190810160405281815292919060208401838380828437508a94506110069350505050565b90505b9695505050505050565b60006113c88787878080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505086868080601f0160208091040260200160405190810160405281815292919060208401838380828437508a945061182c9350505050565b90505b9695505050505050565b600160a060020a03331660009081526007602052604090208190555b50565b60006122c1612c07565b5060005b81811015611351578484828181106122d957fe5b905060200201356007600085858581811015156122f257fe5b90506020020135600160a060020a0316600160a060020a0316600160a060020a03168152602001908152602001600020819055505b6001016122c5565b5b5050505050565b60016020526000908152604090205460f860020a0281565b6000612359612c07565b5060005b818110156113515784848281811061237157fe5b9050602002013560f860020a0260066000858585818110151561239057fe5b90506020020135600160a060020a0316600160a060020a0316600160a060020a0316815260200190815260200160002060006101000a81548160ff021916908360f860020a900402179055505b60010161235d565b5b5050505050565b60006123f98683612c3e565b5042624f1a000187118061240c57504582115b80612429575033600160a060020a031684600160a060020a031614155b1561243357600080fd5b303360008033600160a060020a0316600160a060020a0316815260200190815260200160002054604051606060020a600160a060020a0394851681028252929093169091026014830152602882015260480160405190819003902033600160a060020a038116600090815260208181526040808320805460010190556006825280832054600790925291829020549394507f5051eab4e301cef16e893db3c7a192f8cbf7bb44e1a92b928665c66170930a399385928c928c928c928c928c928c9260f860020a9092029151600160a060020a038b168152602081018a90526040810189905268010000000000000000640100000000870263ffffffff8716170260a082015260c08101849052600160f860020a0319831660e082015261010081018290526101206060820181815290608083019083018a818151815260200191508051906020019080838360005b8381101561259a5780820151818401525b602001612581565b50505050905090810190601f1680156125c75780820380516001836020036101000a031916815260200191505b50838103825289818151815260200191508051906020019080838360005b838110156125fe5780820151818401525b6020016125e5565b50505050905090810190601f16801561262b5780820380516001836020036101000a031916815260200191505b509c5050505050505050505050505060405180910390a15b9695505050505050565b6000612657612c07565b50600881905560005b600b5481101561124057600a6000600b8381548110151561267d57fe5b906000526020600020900160005b50546000191660001916815260200190815260200160002054820260096000600b848154811015156126b957fe5b906000526020600020900160005b505481526020810191909152604001600020555b600101612660565b5b5050565b600c8054829081106126f657fe5b906000526020600020900160005b5054905081565b60006113c8600088888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505086868080601f01602080910402602001604051908101604052818152929190602084018383808284375062030d40945061156f9350505050565b90505b9695505050505050565b60045433600160a060020a039081169116146127d857600080fd5b600160a060020a03821660008181526002602052604090819020805460ff191684151590811790915591907f84feab93d65c19f28e91b26f8245938bf3a97dab7b8dafe3c8b028954e9ac934908590859051600160a060020a039092168252151560208201526040908101905180910390a35b5050565b600061285b8683612c3e565b5042624f1a000187118061286e57504582115b8061288b575033600160a060020a031684600160a060020a031614155b1561289557600080fd5b303360008033600160a060020a0316600160a060020a0316815260200190815260200160002054604051606060020a600160a060020a0394851681028252929093169091026014830152602882015260480160405190819003902033600160a060020a038116600090815260208181526040808320805460010190556006825280832054600790925291829020549394507f90552fb8e54d9a2aa4212413b16aa948c66cab32c9fe727ff74be1850bb0a8be9385928c928c928c928c928c928c9260f860020a9092029151600160a060020a038b168152602081018a90526040810189905268010000000000000000640100000000870263ffffffff8716170260a082015260c08101849052600160f860020a0319831660e082015261010081018290526101206060820181815290608083019083018a818151815260200191508051906020019080838360005b8381101561259a5780820151818401525b602001612581565b50505050905090810190601f1680156125c75780820380516001836020036101000a031916815260200191505b50838103825289818151815260200191508051906020019080838360005b838110156125fe5780820151818401525b6020016125e5565b50505050905090810190601f16801561262b5780820380516001836020036101000a031916815260200191505b509c5050505050505050505050505060405180910390a15b9695505050505050565b600160a060020a038116600090815260076020908152604080832054600290925282205460ff1680612b38575062030d408411158015612b055750600160a060020a038316600090815260208190526040902054155b8015612b1357506005548111155b8015612b385750612b2261216b565b600160a060020a031632600160a060020a031614155b5b15612b475760009150612bff565b801515612b5357506005545b600160a060020a0383166000908152600660205260408082205460099291889160f860020a0290518083805190602001908083835b60208310612ba857805182525b601f199092019160209182019101612b88565b6001836020036101000a0380198251168184511617909252505050600160f860020a031990941691909301908152600101925060409150505190819003902081526020810191909152604001600020548482020191505b509392505050565b60035433600160a060020a03908116911614612c2257600080fd5b5b565b6000610ecb8362030d4084612aaf565b90505b92915050565b600080612c4c848433612aaf565b9150348290106102175781340390506000811115612c9557600160a060020a03331681156108fc0282604051600060405180830381858888f193505050501515612c9557600080fd5b5b612ca0565b600080fd5b5b5092915050565b815481835581811511610fec57600083815260209020610fec918101908301612cfc565b5b505050565b815481835581811511610fec57600083815260209020610fec918101908301612cfc565b5b505050565b61219c91905b80821115611d475760008155600101612d02565b5090565b905600a165627a7a723058204a8139af1bf2a9591f800190ee829830157762d6342103f42e55424b288403ae0029

Deployed Bytecode

0x606060405236156102175763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166323dc42e7811461021c5780632ef3accc1461025157806345362978146102b6578063480a434d146102e75780634a64c23f1461030c578063512c0b9c1461032d578063524f38891461034d5780635c242c59146103b0578063627fd3bb1461045157806368742da61461047f578063688dcfd7146104a05780636c0f7ee7146104c257806375700437146104ee5780637653740f1461052657806377228659146105975780637bc9165b146105d85780637d242ae51461060b5780637e1c42051461062f578063801298fa1461071257806380325b2d1461073357806381ade307146102b657806383eed3d51461080557806385dee34c1461083a5780638f2839701461087e57806398cf6f221461089f578063a2ec191a146108d0578063abaa5f3e146108f4578063ad44d0ca14610919578063adf59f991461021c578063b5bfdd7314610a52578063bf1fe42014610ab6578063c281d19e14610ace578063c51be90f146104ee578063c55c1cb614610b35578063ca6ad1e414610b6d578063d959701614610b85578063db23995114610bb1578063db37e42f14610bed578063dba8fc6114610c19578063de4b326214610cdb578063e6c0e9e114610cf3578063e839e65e14610d1b578063e8be385314610d58578063f84072a514610d7e575b600080fd5b61023f600480359060248035808201929081013591604435908101910135610e40565b60405190815260200160405180910390f35b341561025c57600080fd5b61023f60046024813581810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496505093359350610ebe92505050565b60405190815260200160405180910390f35b61023f6024600480358281019290820135918135918201910135610ed4565b60405190815260200160405180910390f35b34156102f257600080fd5b61023f610f52565b60405190815260200160405180910390f35b341561031757600080fd5b61032b600160a060020a0360043516610f58565b005b341561033857600080fd5b61032b6004803560248101910135610f84565b005b341561035857600080fd5b61023f60046024813581810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610ff295505050505050565b60405190815260200160405180910390f35b61023f600480359060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650509335935061100692505050565b60405190815260200160405180910390f35b341561045c57600080fd5b61032b600160a060020a0360043516600160f860020a03196024351661121f565b005b341561048a57600080fd5b61032b600160a060020a0360043516611245565b005b34156104ab57600080fd5b61032b600160f860020a031960043516611283565b005b34156104cd57600080fd5b61032b60246004803582810192908201359181359182019101356112af565b005b61023f600480359060248035808201929081013591604435908101910135606435611359565b60405190815260200160405180910390f35b341561053157600080fd5b61032b60048035600160a060020a03169060248035600160f860020a031916919060649060443590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506113d595505050505050565b005b61023f60048035906024803580820192908101359160443580820192908101359160643590810191013561140b565b60405190815260200160405180910390f35b34156105e357600080fd5b6105f7600160a060020a03600435166114bd565b604051901515815260200160405180910390f35b341561061657600080fd5b61032b6004803590602480359081019101356114d2565b005b61023f600480359060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650509335935061156f92505050565b60405190815260200160405180910390f35b341561071d57600080fd5b61032b600160a060020a03600435166117f8565b005b61023f600480359060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650509335935061182c92505050565b60405190815260200160405180910390f35b61023f6024600480358281019290820135918135918201910135610ed4565b60405190815260200160405180910390f35b61023f600480359060248035808201929081013591604435908101910135611ac3565b60405190815260200160405180910390f35b61023f600480359060248035808201929081013591604435808201929081013591606435908101910135608435611b41565b60405190815260200160405180910390f35b341561088957600080fd5b61032b600160a060020a0360043516611bf1565b005b61023f6024600480358281019290820135918135918201910135611c25565b60405190815260200160405180910390f35b34156108db57600080fd5b61032b602460048035828101929101359035611ca3565b005b34156108ff57600080fd5b61023f611ce6565b60405190815260200160405180910390f35b61023f600480359060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052818152929190602084018383808284375094965050606060020a8535908104956801000000000000000090910463ffffffff169450602001359250611d4b915050565b60405190815260200160405180910390f35b61023f600480359060248035808201929081013591604435908101910135610e40565b60405190815260200160405180910390f35b3415610a5d57600080fd5b61032b60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965050600160f860020a03198535169460200135935061209792505050565b005b3415610ac157600080fd5b61032b60043561215a565b005b3415610ad957600080fd5b610ae161216b565b604051600160a060020a03909116815260200160405180910390f35b61023f600480359060248035808201929081013591604435908101910135606435611359565b60405190815260200160405180910390f35b61023f60048035906024803580820192908101359160443590810191013560643561221c565b60405190815260200160405180910390f35b3415610b7857600080fd5b61032b600435612298565b005b3415610b9057600080fd5b61032b60246004803582810192908201359181359182019101356122b7565b005b3415610bbc57600080fd5b610bd0600160a060020a0360043516612337565b604051600160f860020a0319909116815260200160405180910390f35b3415610bf857600080fd5b61032b602460048035828101929082013591813591820191013561234f565b005b61023f600480359060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052818152929190602084018383808284375094965050606060020a8535908104956801000000000000000090910463ffffffff1694506020013592506123ed915050565b60405190815260200160405180910390f35b3415610ce657600080fd5b61032b60043561264d565b005b3415610cfe57600080fd5b61023f6004356126e8565b60405190815260200160405180910390f35b61023f602460048035828101929082013591813580830192908201359160443591820191013561270b565b60405190815260200160405180910390f35b3415610d6357600080fd5b61032b600160a060020a036004351660243515156127bd565b005b61023f600480359060446024803590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052818152929190602084018383808284375094965050606060020a8535908104956801000000000000000090910463ffffffff16945060200135925061284f915050565b60405190815260200160405180910390f35b6000610eb28686868080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505085858080601f01602080910402602001604051908101604052818152929190602084018383808284375062030d4094506110069350505050565b90505b95945050505050565b6000610ecb838333612aaf565b90505b92915050565b6000610f47600086868080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505085858080601f01602080910402602001604051908101604052818152929190602084018383808284375062030d4094506110069350505050565b90505b949350505050565b60085481565b610f60612c07565b600160a060020a0381166000908152600160205260409020805460ff191690555b50565b6000610f8e612c07565b6000610f9b600c82612ca8565b50600090505b81811015610fec57600c805460018101610fbb8382612ca8565b916000526020600020900160005b858585818110610fd557fe5b60200291909101359092555050505b600101610fa1565b5b505050565b6000610ffe8233612c25565b90505b919050565b60006110128483612c3e565b5042624f1a000185118061102557504582115b1561102f57600080fd5b303360008033600160a060020a0316600160a060020a0316815260200190815260200160002054604051606060020a600160a060020a0394851681028252929093169091026014830152602882015260480160405190819003902033600160a060020a038116600090815260208181526040808320805460010190556006825280832054600790925291829020549394507fb76d0edd90c6a07aa3ff7a222d7f5933e29c6acc660c059c97837f05c4ca1a849385928a928a928a928a9260f860020a02919051600160a060020a0389168152602081018890526040810187905260a08101849052600160f860020a0319831660c082015260e0810182905261010060608201818152906080830190830188818151815260200191508051906020019080838360005b838110156111705780820151818401525b602001611157565b50505050905090810190601f16801561119d5780820380516001836020036101000a031916815260200191505b50838103825287818151815260200191508051906020019080838360005b838110156111d45780820151818401525b6020016111bb565b50505050905090810190601f1680156112015780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390a15b949350505050565b611227612c07565b61124082826020604051908101604052600081526113d5565b5b5050565b61124d612c07565b80600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f150505050505b50565b33600160a060020a03166000908152600660205260409020805460ff191660f860020a83041790555b50565b60006112b9612c07565b5060005b83811015611351578484828181106112d157fe5b600b8054602090920293909301359291506112ef8260018301612ca8565b815481106112f957fe5b906000526020600020900160005b505582828281811061131557fe5b90506020020135600a6000878785818110151561132e57fe5b60209081029290920135835250810191909152604001600020555b6001016112bd565b5b5050505050565b60006113c88787878080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505086868080601f0160208091040260200160405190810160405281815292919060208401838380828437508a94506110069350505050565b90505b9695505050505050565b6113dd612c07565b600160a060020a0383166000908152600160205260409020805460ff191660f860020a84041790555b505050565b60006114af8888888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505086868080601f01602080910402602001604051908101604052818152929190602084018383808284375062030d40945061156f9350505050565b90505b979650505050505050565b60026020526000908152604090205460ff1681565b60006114dc612c07565b50600883905560005b600b5481101561156857600a6000600b8381548110151561150257fe5b906000526020600020900160005b50546000191660001916815260200190815260200160002054840260096000600b8481548110151561153e57fe5b906000526020600020900160005b505481526020810191909152604001600020555b6001016114e5565b5b50505050565b600061157b8583612c3e565b5042624f1a000186118061158e57504582115b1561159857600080fd5b303360008033600160a060020a0316600160a060020a0316815260200190815260200160002054604051606060020a600160a060020a0394851681028252929093169091026014830152602882015260480160405190819003902033600160a060020a038116600090815260208181526040808320805460010190556006825280832054600790925291829020549394507faf30e4d66b2f1f23e63ef4591058a897f67e6867233e33ca3508b982dcc4129b9385928b928b928b928b928b9260f860020a9091029151600160a060020a038a168152602081018990526040810188905260c08101849052600160f860020a0319831660e082015261010081018290526101206060820181815290608083019060a084019084018a818151815260200191508051906020019080838360005b838110156116e25780820151818401525b6020016116c9565b50505050905090810190601f16801561170f5780820380516001836020036101000a031916815260200191505b50848103835289818151815260200191508051906020019080838360005b838110156117465780820151818401525b60200161172d565b50505050905090810190601f1680156117735780820380516001836020036101000a031916815260200191505b50848103825288818151815260200191508051906020019080838360005b838110156117aa5780820151818401525b602001611791565b50505050905090810190601f1680156117d75780820380516001836020036101000a031916815260200191505b509c5050505050505050505050505060405180910390a15b95945050505050565b611800612c07565b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b60006118388483612c3e565b5042624f1a000185118061184b57504582115b1561185557600080fd5b303360008033600160a060020a0316600160a060020a0316815260200190815260200160002054604051606060020a600160a060020a0394851681028252929093169091026014830152602882015260480160405190819003902033600160a060020a038116600090815260208181526040808320805460010190556006825280832054600790925291829020549394507f3af7d71c651d8670228b02a0b636ffa73a7f759ef99ff9c024bc3b044a7244389385928a928a928a928a9260f860020a02919051600160a060020a0389168152602081018890526040810187905260a08101849052600160f860020a0319831660c082015260e0810182905261010060608201818152906080830190830188818151815260200191508051906020019080838360005b838110156111705780820151818401525b602001611157565b50505050905090810190601f16801561119d5780820380516001836020036101000a031916815260200191505b50838103825287818151815260200191508051906020019080838360005b838110156111d45780820151818401525b6020016111bb565b50505050905090810190601f1680156112015780820380516001836020036101000a031916815260200191505b509a505050505050505050505060405180910390a15b949350505050565b6000610f47600086868080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505085858080601f01602080910402602001604051908101604052818152929190602084018383808284375062030d4094506110069350505050565b90505b949350505050565b6000610eb28686868080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505085858080601f01602080910402602001604051908101604052818152929190602084018383808284375062030d40945061182c9350505050565b90505b95945050505050565b6000611be28989898080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505088888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f0160208091040260200160405190810160405281815292919060208401838380828437508b945061156f9350505050565b90505b98975050505050505050565b611bf9612c07565b6003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b6000610f47600086868080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505085858080601f01602080910402602001604051908101604052818152929190602084018383808284375062030d40945061182c9350505050565b90505b949350505050565b610fec83838080601f0160208091040260200160405190810160405281815292919060208401838380828437506000945087935061209792505050565b5b505050565b600c54600160a060020a0333166000908152602081905260408082205491928392909151908152602001604051908190039020811515611d2257fe5b069050600c81815481101515611d3457fe5b906000526020600020900160005b505491505b5090565b6000611d578783612c3e565b5042624f1a0001881180611d6a57504582115b80611d87575033600160a060020a031684600160a060020a031614155b15611d9157600080fd5b303360008033600160a060020a0316600160a060020a0316815260200190815260200160002054604051606060020a600160a060020a0394851681028252929093169091026014830152602882015260480160405190819003902033600160a060020a038116600090815260208181526040808320805460010190556006825280832054600790925291829020549394507fcc57f89a6a20799d672e6569d224340220a0891ad6efa3039e7728f0c88854b39385928d928d928d928d928d928d928d9260f860020a02919051600160a060020a038c168152602081018b9052604081018a905268010000000000000000640100000000870263ffffffff8716170260c082015260e08101849052600160f860020a0319831661010082015261012081018290526101406060820181815290608083019060a084019084018c818151815260200191508051906020019080838360005b83811015611eff5780820151818401525b602001611ee6565b50505050905090810190601f168015611f2c5780820380516001836020036101000a031916815260200191505b5084810383528b818151815260200191508051906020019080838360005b83811015611f635780820151818401525b602001611f4a565b50505050905090810190601f168015611f905780820380516001836020036101000a031916815260200191505b5084810382528a818151815260200191508051906020019080838360005b83811015611fc75780820151818401525b602001611fae565b50505050905090810190601f168015611ff45780820380516001836020036101000a031916815260200191505b509e50505050505050505050505050505060405180910390a15b979650505050505050565b6000610eb28686868080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505085858080601f01602080910402602001604051908101604052818152929190602084018383808284375062030d4094506110069350505050565b90505b95945050505050565b60006120a1612c07565b83836040518083805190602001908083835b602083106120d357805182525b601f1990920191602091820191016120b3565b6001836020036101000a0380198251168184511617909252505050600160f860020a0319909416919093019081526001019250604091505051908190039020600b805491925082916121288260018301612ca8565b8154811061213257fe5b906000526020600020900160005b50556000818152600a602052604090208290555b50505050565b612162612c07565b60058190555b50565b32600160a060020a031660009081526001602052604081205460f860020a02600160f860020a0319161561219c5750325b5b90565b60006113c88787878080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505086868080601f0160208091040260200160405190810160405281815292919060208401838380828437508a94506110069350505050565b90505b9695505050505050565b60006113c88787878080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505086868080601f0160208091040260200160405190810160405281815292919060208401838380828437508a945061182c9350505050565b90505b9695505050505050565b600160a060020a03331660009081526007602052604090208190555b50565b60006122c1612c07565b5060005b81811015611351578484828181106122d957fe5b905060200201356007600085858581811015156122f257fe5b90506020020135600160a060020a0316600160a060020a0316600160a060020a03168152602001908152602001600020819055505b6001016122c5565b5b5050505050565b60016020526000908152604090205460f860020a0281565b6000612359612c07565b5060005b818110156113515784848281811061237157fe5b9050602002013560f860020a0260066000858585818110151561239057fe5b90506020020135600160a060020a0316600160a060020a0316600160a060020a0316815260200190815260200160002060006101000a81548160ff021916908360f860020a900402179055505b60010161235d565b5b5050505050565b60006123f98683612c3e565b5042624f1a000187118061240c57504582115b80612429575033600160a060020a031684600160a060020a031614155b1561243357600080fd5b303360008033600160a060020a0316600160a060020a0316815260200190815260200160002054604051606060020a600160a060020a0394851681028252929093169091026014830152602882015260480160405190819003902033600160a060020a038116600090815260208181526040808320805460010190556006825280832054600790925291829020549394507f5051eab4e301cef16e893db3c7a192f8cbf7bb44e1a92b928665c66170930a399385928c928c928c928c928c928c9260f860020a9092029151600160a060020a038b168152602081018a90526040810189905268010000000000000000640100000000870263ffffffff8716170260a082015260c08101849052600160f860020a0319831660e082015261010081018290526101206060820181815290608083019083018a818151815260200191508051906020019080838360005b8381101561259a5780820151818401525b602001612581565b50505050905090810190601f1680156125c75780820380516001836020036101000a031916815260200191505b50838103825289818151815260200191508051906020019080838360005b838110156125fe5780820151818401525b6020016125e5565b50505050905090810190601f16801561262b5780820380516001836020036101000a031916815260200191505b509c5050505050505050505050505060405180910390a15b9695505050505050565b6000612657612c07565b50600881905560005b600b5481101561124057600a6000600b8381548110151561267d57fe5b906000526020600020900160005b50546000191660001916815260200190815260200160002054820260096000600b848154811015156126b957fe5b906000526020600020900160005b505481526020810191909152604001600020555b600101612660565b5b5050565b600c8054829081106126f657fe5b906000526020600020900160005b5054905081565b60006113c8600088888080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505087878080601f016020809104026020016040519081016040528181529291906020840183838082843782019150505050505086868080601f01602080910402602001604051908101604052818152929190602084018383808284375062030d40945061156f9350505050565b90505b9695505050505050565b60045433600160a060020a039081169116146127d857600080fd5b600160a060020a03821660008181526002602052604090819020805460ff191684151590811790915591907f84feab93d65c19f28e91b26f8245938bf3a97dab7b8dafe3c8b028954e9ac934908590859051600160a060020a039092168252151560208201526040908101905180910390a35b5050565b600061285b8683612c3e565b5042624f1a000187118061286e57504582115b8061288b575033600160a060020a031684600160a060020a031614155b1561289557600080fd5b303360008033600160a060020a0316600160a060020a0316815260200190815260200160002054604051606060020a600160a060020a0394851681028252929093169091026014830152602882015260480160405190819003902033600160a060020a038116600090815260208181526040808320805460010190556006825280832054600790925291829020549394507f90552fb8e54d9a2aa4212413b16aa948c66cab32c9fe727ff74be1850bb0a8be9385928c928c928c928c928c928c9260f860020a9092029151600160a060020a038b168152602081018a90526040810189905268010000000000000000640100000000870263ffffffff8716170260a082015260c08101849052600160f860020a0319831660e082015261010081018290526101206060820181815290608083019083018a818151815260200191508051906020019080838360005b8381101561259a5780820151818401525b602001612581565b50505050905090810190601f1680156125c75780820380516001836020036101000a031916815260200191505b50838103825289818151815260200191508051906020019080838360005b838110156125fe5780820151818401525b6020016125e5565b50505050905090810190601f16801561262b5780820380516001836020036101000a031916815260200191505b509c5050505050505050505050505060405180910390a15b9695505050505050565b600160a060020a038116600090815260076020908152604080832054600290925282205460ff1680612b38575062030d408411158015612b055750600160a060020a038316600090815260208190526040902054155b8015612b1357506005548111155b8015612b385750612b2261216b565b600160a060020a031632600160a060020a031614155b5b15612b475760009150612bff565b801515612b5357506005545b600160a060020a0383166000908152600660205260408082205460099291889160f860020a0290518083805190602001908083835b60208310612ba857805182525b601f199092019160209182019101612b88565b6001836020036101000a0380198251168184511617909252505050600160f860020a031990941691909301908152600101925060409150505190819003902081526020810191909152604001600020548482020191505b509392505050565b60035433600160a060020a03908116911614612c2257600080fd5b5b565b6000610ecb8362030d4084612aaf565b90505b92915050565b600080612c4c848433612aaf565b9150348290106102175781340390506000811115612c9557600160a060020a03331681156108fc0282604051600060405180830381858888f193505050501515612c9557600080fd5b5b612ca0565b600080fd5b5b5092915050565b815481835581811511610fec57600083815260209020610fec918101908301612cfc565b5b505050565b815481835581811511610fec57600083815260209020610fec918101908301612cfc565b5b505050565b61219c91905b80821115611d475760008155600101612d02565b5090565b905600a165627a7a723058204a8139af1bf2a9591f800190ee829830157762d6342103f42e55424b288403ae0029

Swarm Source

bzzr://4a8139af1bf2a9591f800190ee829830157762d6342103f42e55424b288403ae

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.