ETH Price: $1,950.91 (-1.76%)
 

Overview

ETH Balance

0.0000301 ETH

Eth Value

$0.06 (@ $1,950.91/ETH)

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Buy36401962017-05-02 23:27:223217 days ago1493767642IN
0x4822bf37...9bfb1B2Fc
0.00001 ETH0.0031514420
Accept35622022017-04-19 8:45:553231 days ago1492591555IN
0x4822bf37...9bfb1B2Fc
0 ETH0.0012024220
Reject34365392017-03-28 23:31:103252 days ago1490743870IN
0x4822bf37...9bfb1B2Fc
0 ETH0.001642320
Accept34348072017-03-28 16:37:523252 days ago1490719072IN
0x4822bf37...9bfb1B2Fc
0 ETH0.0012024220
Buy34348072017-03-28 16:37:523252 days ago1490719072IN
0x4822bf37...9bfb1B2Fc
0.00001 ETH0.0031514420
Buy34342762017-03-28 14:19:183253 days ago1490710758IN
0x4822bf37...9bfb1B2Fc
0.00001 ETH0.0034514420
Buy34342562017-03-28 14:13:453253 days ago1490710425IN
0x4822bf37...9bfb1B2Fc
0.00001 ETH0.0043501620

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer34365392017-03-28 23:31:103252 days ago1490743870
0x4822bf37...9bfb1B2Fc
0.0000099 ETH
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

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0x93F28d71...3c98819F2
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
EscrowGoods

Compiler Version
v0.4.4+commit.4633f3de

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2017-06-28
*/

/* A contract to store goods with escrowed funds. */

/* Deployment:
Contract:
Owner: seller
Last address: dynamic
ABI: [{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"escrows","outputs":[{"name":"buyer","type":"address"},{"name":"lockedFunds","type":"uint256"},{"name":"frozenFunds","type":"uint256"},{"name":"frozenTime","type":"uint64"},{"name":"count","type":"uint16"},{"name":"buyerNo","type":"bool"},{"name":"sellerNo","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"count","outputs":[{"name":"","type":"uint16"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_dataInfo","type":"string"},{"name":"_version","type":"uint256"}],"name":"cancel","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"seller","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"freezePeriod","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_lockId","type":"uint256"},{"name":"_dataInfo","type":"string"},{"name":"_version","type":"uint256"},{"name":"_count","type":"uint16"}],"name":"buy","outputs":[],"payable":true,"type":"function"},{"constant":true,"inputs":[],"name":"status","outputs":[{"name":"","type":"uint16"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"rewardPromille","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_lockId","type":"uint256"}],"name":"getMoney","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_lockId","type":"uint256"},{"name":"_dataInfo","type":"string"},{"name":"_version","type":"uint256"}],"name":"no","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"kill","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_lockId","type":"uint256"},{"name":"_dataInfo","type":"string"},{"name":"_version","type":"uint256"}],"name":"reject","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_lockId","type":"uint256"},{"name":"_dataInfo","type":"string"},{"name":"_version","type":"uint256"}],"name":"accept","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalEscrows","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_lockId","type":"uint256"},{"name":"_who","type":"address"},{"name":"_payment","type":"uint256"},{"name":"_dataInfo","type":"string"},{"name":"_version","type":"uint256"}],"name":"arbYes","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"feeFunds","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_lockId","type":"uint256"},{"name":"_dataInfo","type":"string"},{"name":"_version","type":"uint256"}],"name":"yes","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"buyers","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"availableCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"price","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"contentCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"logsCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"unbuy","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"getFees","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"feePromille","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"pendingCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_dataInfo","type":"string"},{"name":"_version","type":"uint256"}],"name":"addDescription","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"arbiter","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"inputs":[{"name":"_arbiter","type":"address"},{"name":"_freezePeriod","type":"uint256"},{"name":"_feePromille","type":"uint256"},{"name":"_rewardPromille","type":"uint256"},{"name":"_count","type":"uint16"},{"name":"_price","type":"uint256"}],"type":"constructor"},{"payable":false,"type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"message","type":"string"}],"name":"LogDebug","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"lockId","type":"uint256"},{"indexed":false,"name":"dataInfo","type":"string"},{"indexed":true,"name":"version","type":"uint256"},{"indexed":false,"name":"eventType","type":"uint16"},{"indexed":true,"name":"sender","type":"address"},{"indexed":false,"name":"count","type":"uint256"},{"indexed":false,"name":"payment","type":"uint256"}],"name":"LogEvent","type":"event"}]
Optimized: yes
Solidity version: v0.4.4
*/

pragma solidity ^0.4.0;

contract EscrowGoods {

    struct EscrowInfo {

        address buyer;
        uint lockedFunds;
        uint frozenFunds;
        uint64 frozenTime;
        uint16 count;
        bool buyerNo;
        bool sellerNo;
    }

    //enum GoodsStatus
    uint16 constant internal None = 0;
    uint16 constant internal Available = 1;
    uint16 constant internal Canceled = 2;

    //enum EventTypes
    uint16 constant internal Buy = 1;
    uint16 constant internal Accept = 2;
    uint16 constant internal Reject = 3;
    uint16 constant internal Cancel = 4;
    uint16 constant internal Description = 10;
    uint16 constant internal Unlock = 11;
    uint16 constant internal Freeze = 12;
    uint16 constant internal Resolved = 13;

    //data

    uint constant arbitrationPeriod = 30 days;
    uint constant safeGas = 25000;

    //seller/owner of the goods
    address public seller;

    //event counters
    uint public contentCount = 0;
    uint public logsCount = 0;

    //escrow related

    address public arbiter;

    uint public freezePeriod;
    //each lock fee in promilles.
    uint public feePromille;
    //reward in promilles. promille = percent * 10, eg 1,5% reward = 15 rewardPromille
    uint public rewardPromille;

    uint public feeFunds;
    uint public totalEscrows;

    mapping (uint => EscrowInfo) public escrows;

    //goods related

    //status of the goods: see GoodsStatus enum
    uint16 public status;
    //how many for sale
    uint16 public count;

    uint16 public availableCount;
    uint16 public pendingCount;

    //price per item
    uint public price;

    mapping (address => bool) public buyers;

    bool private atomicLock;

    //events

    event LogDebug(string message);
    event LogEvent(uint indexed lockId, string dataInfo, uint indexed version, uint16 eventType, address indexed sender, uint count, uint payment);

    modifier onlyOwner {
        if (msg.sender != seller)
          throw;
        _;
    }

    modifier onlyArbiter {
        if (msg.sender != arbiter)
          throw;
        _;
    }

    //modules

    function EscrowGoods(address _arbiter, uint _freezePeriod, uint _feePromille, uint _rewardPromille,
                          uint16 _count, uint _price) {

        seller = msg.sender;

        // all variables are always initialized to 0, save gas

        //escrow related

        arbiter = _arbiter;
        freezePeriod = _freezePeriod;
        feePromille = _feePromille;
        rewardPromille = _rewardPromille;

        //goods related

        status = Available;
        count = _count;
        price = _price;

        availableCount = count;
    }

    //helpers for events with counter
    function logDebug(string message) internal {
        logsCount++;
        LogDebug(message);
    }

    function logEvent(uint lockId, string dataInfo, uint version, uint16 eventType,
                                address sender, uint count, uint payment) internal {
        contentCount++;
        LogEvent(lockId, dataInfo, version, eventType, sender, count, payment);
    }

    function kill() onlyOwner {

        //do not allow killing contract with active escrows
        if(totalEscrows > 0) {
            logDebug("totalEscrows > 0");
            return;
        }
        //do not allow killing contract with unclaimed escrow fees
        if(feeFunds > 0) {
            logDebug("feeFunds > 0");
            return;
        }
        suicide(msg.sender);
    }

    function safeSend(address addr, uint value) internal {

        if(atomicLock) throw;
        atomicLock = true;
        if (!(addr.call.gas(safeGas).value(value)())) {
            atomicLock = false;
            throw;
        }
        atomicLock = false;
    }

    //escrow API

    //vote YES - immediately sends funds to the peer
    function yes(uint _lockId, string _dataInfo, uint _version) {

        EscrowInfo info = escrows[_lockId];

        if(info.lockedFunds == 0) {
            logDebug("info.lockedFunds == 0");
            return;
        }
        if(msg.sender != info.buyer && msg.sender != seller) {
            logDebug("msg.sender != info.buyer && msg.sender != seller");
            return;
        }

        uint payment = info.lockedFunds;
        if(payment > this.balance) {
            //HACK: should not get here - funds cannot be unlocked in this case
            logDebug("payment > this.balance");
            return;
        }

        if(msg.sender == info.buyer) {

            //send funds to seller
            safeSend(seller, payment);
        } else if(msg.sender == seller) {

            //send funds to buyer
            safeSend(info.buyer, payment);
        } else {
            //HACK: should not get here
            logDebug("unknown msg.sender");
            return;
        }

        //remove record from escrows
        if(totalEscrows > 0) totalEscrows -= 1;
        info.lockedFunds = 0;

        logEvent(_lockId, _dataInfo, _version, Unlock, msg.sender, info.count, payment);
    }

    //vote NO - freeze funds for arbitration
    function no(uint _lockId, string _dataInfo, uint _version) {

        EscrowInfo info = escrows[_lockId];

        if(info.lockedFunds == 0) {
            logDebug("info.lockedFunds == 0");
            return;
        }
        if(msg.sender != info.buyer && msg.sender != seller) {
            logDebug("msg.sender != info.buyer && msg.sender != seller");
            return;
        }

        //freeze funds
        //only allow one time freeze
        if(info.frozenFunds == 0) {
            info.frozenFunds = info.lockedFunds;
            info.frozenTime = uint64(now);
        }

        if(msg.sender == info.buyer) {
            info.buyerNo = true;
        }
        else if(msg.sender == seller) {
            info.sellerNo = true;
        } else {
            //HACK: should not get here
            logDebug("unknown msg.sender");
            return;
        }

        logEvent(_lockId, _dataInfo, _version, Freeze, msg.sender, info.count, info.lockedFunds);
    }

    //arbiter's decision on the case.
    //arbiter can only decide when both buyer and seller voted NO
    //arbiter decides on his own reward but not bigger than announced percentage (rewardPromille)
    function arbYes(uint _lockId, address _who, uint _payment, string _dataInfo, uint _version) onlyArbiter {

        EscrowInfo info = escrows[_lockId];

        if(info.lockedFunds == 0) {
            logDebug("info.lockedFunds == 0");
            return;
        }
        if(info.frozenFunds == 0) {
            logDebug("info.frozenFunds == 0");
            return;
        }

        if(_who != seller && _who != info.buyer) {
            logDebug("_who != seller && _who != info.buyer");
            return;
        }
        //requires both NO to arbitration
        if(!info.buyerNo || !info.sellerNo) {
            logDebug("!info.buyerNo || !info.sellerNo");
            return;
        }

        if(_payment > info.lockedFunds) {
            logDebug("_payment > info.lockedFunds");
            return;
        }
        if(_payment > this.balance) {
            //HACK: should not get here - funds cannot be unlocked in this case
            logDebug("_payment > this.balance");
            return;
        }

        //limit payment
        uint reward = (info.lockedFunds * rewardPromille) / 1000;
        if(reward > (info.lockedFunds - _payment)) {
            logDebug("reward > (info.lockedFunds - _payment)");
            return;
        }

        //send funds to the winner
        safeSend(_who, _payment);

        //send the rest as reward
        info.lockedFunds -= _payment;
        feeFunds += info.lockedFunds;
        info.lockedFunds = 0;

        logEvent(_lockId, _dataInfo, _version, Resolved, msg.sender, info.count, _payment);
    }

    //allow arbiter to get his collected fees
    function getFees() onlyArbiter {

        if(feeFunds > this.balance) {
            //HACK: should not get here - funds cannot be unlocked in this case
            logDebug("feeFunds > this.balance");
            return;
        }
        
        safeSend(arbiter, feeFunds);

        feeFunds = 0;
    }

    //allow buyer or seller to take timeouted funds.
    //buyer can get funds if seller is silent and seller can get funds if buyer is silent (after freezePeriod)
    //buyer can get back funds under arbitration if arbiter is silent (after arbitrationPeriod)
    function getMoney(uint _lockId) {

        EscrowInfo info = escrows[_lockId];

        if(info.lockedFunds == 0) {
            logDebug("info.lockedFunds == 0");
            return;
        }
        //HACK: this check is necessary since frozenTime == 0 at escrow creation
        if(info.frozenFunds == 0) {
            logDebug("info.frozenFunds == 0");
            return;
        }

        //timout for voting not over yet
        if(now < (info.frozenTime + freezePeriod)) {
            logDebug("now < (info.frozenTime + freezePeriod)");
            return;
        }

        uint payment = info.lockedFunds;
        if(payment > this.balance) {
            //HACK: should not get here - funds cannot be unlocked in this case
            logDebug("payment > this.balance");
            return;
        }

        //both has voted - money is under arbitration
        if(info.buyerNo && info.sellerNo) {

            //arbitration timeout is not over yet
            if(now < (info.frozenTime + freezePeriod + arbitrationPeriod)) {
                logDebug("now < (info.frozenTime + freezePeriod + arbitrationPeriod)");
                return;
            }

            //arbiter was silent so redeem the funds to the buyer
            safeSend(info.buyer, payment);

            info.lockedFunds = 0;
            return;
        }

        if(info.buyerNo) {

            safeSend(info.buyer, payment);

            info.lockedFunds = 0;
            return;
        }
        if(info.sellerNo) {

            safeSend(seller, payment);

            info.lockedFunds = 0;
            return;
        }
    }

    //goods API

    //add new description to the goods
    function addDescription(string _dataInfo, uint _version) onlyOwner {

        //Accept order to event log
        logEvent(0, _dataInfo, _version, Description, msg.sender, 0, 0);
    }

    //buy with escrow. id - escrow info id
    function buy(uint _lockId, string _dataInfo, uint _version, uint16 _count) payable {

        //reject money transfers for bad item status

        if(status != Available) throw;
        if(msg.value < (price * _count)) throw;
        if(_count > availableCount) throw;
        if(_count == 0) throw;
        if(feePromille > 1000) throw;
        if(rewardPromille > 1000) throw;
        if((feePromille + rewardPromille) > 1000) throw;

        //create default EscrowInfo struct or access existing
        EscrowInfo info = escrows[_lockId];

        //lock only once for a given id
        if(info.lockedFunds > 0) throw;

        //lock funds

        uint fee = (msg.value * feePromille) / 1000;
        //limit fees
        if(fee > msg.value) throw;

        uint funds = (msg.value - fee);
        feeFunds += fee;
        totalEscrows += 1;

        info.buyer = msg.sender;
        info.lockedFunds = funds;
        info.frozenFunds = 0;
        info.buyerNo = false;
        info.sellerNo = false;
        info.count = _count;

        pendingCount += _count;
        buyers[msg.sender] = true;

        //Buy order to event log
        logEvent(_lockId, _dataInfo, _version, Buy, msg.sender, _count, msg.value);
    }

    function accept(uint _lockId, string _dataInfo, uint _version) onlyOwner {

        EscrowInfo info = escrows[_lockId];
        
        if(info.count > availableCount) {
            logDebug("info.count > availableCount");
            return;
        }
        if(info.count > pendingCount) {
            logDebug("info.count > pendingCount");
            return;
        }

        pendingCount -= info.count;
        availableCount -= info.count;

        //Accept order to event log
        logEvent(_lockId, _dataInfo, _version, Accept, msg.sender, info.count, info.lockedFunds);
    }

    function reject(uint _lockId, string _dataInfo, uint _version) onlyOwner {
        
        EscrowInfo info = escrows[_lockId];

        if(info.count > pendingCount) {
            logDebug("info.count > pendingCount");
            return;
        }

        pendingCount -= info.count;

        //send money back
        yes(_lockId, _dataInfo, _version);

        //Reject order to event log
        //HACK: "yes" call above may fail and this event will be non-relevant. Do not rely on it.
        logEvent(_lockId, _dataInfo, _version, Reject, msg.sender, info.count, info.lockedFunds);
    }

    function cancel(string _dataInfo, uint _version) onlyOwner {

        //Canceled status
        status = Canceled;

        //Cancel order to event log
        logEvent(0, _dataInfo, _version, Cancel, msg.sender, availableCount, 0);
    }

    //remove buyer from the watchlist
    function unbuy() {

        buyers[msg.sender] = false;
    }

    function () {
        throw;
    }
}

Contract Security Audit

Contract ABI

API
[{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"escrows","outputs":[{"name":"buyer","type":"address"},{"name":"lockedFunds","type":"uint256"},{"name":"frozenFunds","type":"uint256"},{"name":"frozenTime","type":"uint64"},{"name":"count","type":"uint16"},{"name":"buyerNo","type":"bool"},{"name":"sellerNo","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"count","outputs":[{"name":"","type":"uint16"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_dataInfo","type":"string"},{"name":"_version","type":"uint256"}],"name":"cancel","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"seller","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"freezePeriod","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_lockId","type":"uint256"},{"name":"_dataInfo","type":"string"},{"name":"_version","type":"uint256"},{"name":"_count","type":"uint16"}],"name":"buy","outputs":[],"payable":true,"type":"function"},{"constant":true,"inputs":[],"name":"status","outputs":[{"name":"","type":"uint16"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"rewardPromille","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_lockId","type":"uint256"}],"name":"getMoney","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_lockId","type":"uint256"},{"name":"_dataInfo","type":"string"},{"name":"_version","type":"uint256"}],"name":"no","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"kill","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_lockId","type":"uint256"},{"name":"_dataInfo","type":"string"},{"name":"_version","type":"uint256"}],"name":"reject","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_lockId","type":"uint256"},{"name":"_dataInfo","type":"string"},{"name":"_version","type":"uint256"}],"name":"accept","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalEscrows","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_lockId","type":"uint256"},{"name":"_who","type":"address"},{"name":"_payment","type":"uint256"},{"name":"_dataInfo","type":"string"},{"name":"_version","type":"uint256"}],"name":"arbYes","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"feeFunds","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_lockId","type":"uint256"},{"name":"_dataInfo","type":"string"},{"name":"_version","type":"uint256"}],"name":"yes","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"buyers","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"availableCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"price","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"contentCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"logsCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"unbuy","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"getFees","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"feePromille","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"pendingCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_dataInfo","type":"string"},{"name":"_version","type":"uint256"}],"name":"addDescription","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"arbiter","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"inputs":[{"name":"_arbiter","type":"address"},{"name":"_freezePeriod","type":"uint256"},{"name":"_feePromille","type":"uint256"},{"name":"_rewardPromille","type":"uint256"},{"name":"_count","type":"uint16"},{"name":"_price","type":"uint256"}],"type":"constructor"},{"payable":false,"type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"message","type":"string"}],"name":"LogDebug","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"lockId","type":"uint256"},{"indexed":false,"name":"dataInfo","type":"string"},{"indexed":true,"name":"version","type":"uint256"},{"indexed":false,"name":"eventType","type":"uint16"},{"indexed":true,"name":"sender","type":"address"},{"indexed":false,"name":"count","type":"uint256"},{"indexed":false,"name":"payment","type":"uint256"}],"name":"LogEvent","type":"event"}]

0x606060408190526000600181905560025560c0806119298339610120604052905160805160a051925160e0516101005193949293600080546c01000000000000000000000000338102819004600160a060020a031992831617909255600380548984029390930492909116919091179055600485905560058490556006839055600a8054600b8390557e0100000000000000000000000000000000000000000000000000000000000062010000858202829004810263ffff00001961ffff19909416600117939093169290921791820461ffff168102046401000000000265ffff000000001990911617905550505050505061182a806100ff6000396000f3606060405236156101485760e060020a6000350463012f52ee811461015557806306661abd146101bd57806306909f69146101d657806308551a53146102425780630a3cb663146102595780630fb59f9514610267578063200d2ed2146102d0578063309e21a9146102e25780633262fd9a146102f057806334d24bff1461034257806341c0e1b5146103d65780634ca18ebd146103f9578063553bf56d1461046557806363ee7c8d146104d15780636958420b146104df5780636fd637281461055457806395a5dfc01461056257806397a993aa146105b85780639e05c118146105d8578063a035b1fe146105f3578063cc45969614610601578063cd1f83931461060f578063ceb98dc71461061d578063db8d55f114610647578063dc3ef6851461066a578063ea70b4af14610678578063eda50e3314610695578063fe25e00a14610701575b3461000257610718610002565b346100025761071a6004356009602052600090815260409020805460018201546002830154600390930154600160a060020a0390921692909167ffffffffffffffff81169061ffff604060020a8204169060ff605060020a8204811691605860020a90041687565b346100025761076d600a5461ffff620100009091041681565b34610002576107186004808035906020019082018035906020019191908080601f01602080910402602001604051908101604052809392919081815260200183838082843750949650509335935050505060005433600160a060020a0390811691161461085757610002565b3461000257610784600054600160a060020a031681565b34610002576107a060045481565b60408051602060046024803582810135601f81018590048502860185019096528585526107189583359593946044949392909201918190840183828082843750949650509335935050606435915050600a546000908190819061ffff1660011461095d57610002565b346100025761076d600a5461ffff1681565b34610002576107a060065481565b3461000257610718600435600081815260096020526040812060018101549091901515610b1157604080518082019091526015815260008051602061180a8339815191526020820152610b6190610b9f565b346100025760408051602060046024803582810135601f810185900485028601850190965285855261071895833595939460449493929092019181908401838280828437509496505093359350505050600083815260096020526040902060018101541515610e4257604080518082019091526015815260008051602061180a8339815191526020820152610edc90610b9f565b346100025761071860005433600160a060020a03908116911614610fc357610002565b346100025760408051602060046024803582810135601f8101859004850286018501909652858552610718958335959394604494939290920191819084018382808284375094965050933593505050506000805433600160a060020a0390811691161461106357610002565b346100025760408051602060046024803582810135601f8101859004850286018501909652858552610718958335959394604494939290920191819084018382808284375094965050933593505050506000805433600160a060020a0390811691161461110457610002565b34610002576107a060085481565b3461000257604080516020600460643581810135601f810184900484028501840190955284845261071894823594602480359560443595946084949201919081908401838280828437509496505093359350505050600354600090819033600160a060020a0390811691161461126f57610002565b34610002576107a060075481565b346100025760408051602060046024803582810135601f8101859004850286018501909652858552610718958335959394604494939290920191819084018382808284375094965050933593506107fc92505050565b3461000257610843600435600c6020526000908152604090205460ff1681565b346100025761076d600a5461ffff6401000000009091041681565b34610002576107a0600b5481565b34610002576107a060015481565b34610002576107a060025481565b3461000257610718600160a060020a0333166000908152600c60205260409020805460ff19169055565b346100025761071860035433600160a060020a0390811691161461173357610002565b34610002576107a060055481565b346100025761076d600a5461ffff66010000000000009091041681565b34610002576107186004808035906020019082018035906020019191908080601f01602080910402602001604051908101604052809392919081815260200183838082843750949650509335935050505060005433600160a060020a039081169116146117a557610002565b3461000257610784600354600160a060020a031681565b005b60408051600160a060020a03909816885260208801969096528686019490945267ffffffffffffffff909216606086015261ffff166080850152151560a0840152151560c0830152519081900360e00190f35b6040805161ffff9092168252519081900360200190f35b60408051600160a060020a039092168252519081900360200190f35b60408051918252519081900360200190f35b6003810154600a805460f060020a61ffff604060020a909404841666010000000000008084049095160381020490920267ffff000000000000199092169190911790556110d78484845b60008381526009602052604081206001810154909190151561156557604080518082019091526015815260008051602061180a83398151915260208201526115ff90610b9f565b604080519115158252519081900360200190f35b600a805461ffff19166002179081905561095990600090849084906004903390640100000000900461ffff16855b600160008181505480929190600101919050555082600160a060020a031685887fe9a88fc67f5ad8c6d6e6fb2832af9558ebc4c2f6395337eec27c17f1ee9ebc1f8988878760405180806020018561ffff1681526020018481526020018381526020018281038252868181518152602001915080519060200190808383829060006004602084601f0104600302600f01f150905090810190601f1680156109405780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a450505050505050565b5050565b600b5461ffff85160234101561097257610002565b600a5461ffff6401000000009091048116908516111561099157610002565b61ffff841615156109a157610002565b6005546103e89011156109b357610002565b6006546103e89011156109c557610002565b6006546005546103e8910111156109db57610002565b6000878152600960205260408120600181015490945011156109fc57610002565b6005546103e890340204915034821115610a1557610002565b50600780548201905560088054600190810190915582546c01000000000000000000000000338181029190910473ffffffffffffffffffffffffffffffffffffffff199092169190911784553483810385840181905560006002870181905560038701805460f060020a808b02819004604060020a026bffffffff00000000000000001990921691909117909155600a8054660100000000000080820461ffff9081168d018502949094040267ffff00000000000019909116179055600160a060020a0385168252600c6020526040909120805460ff1916861790559093610b08938b938b938b939291908b1690610885565b50505050505050565b60028201541515610c455760408051808201909152601581527f696e666f2e66726f7a656e46756e6473203d3d203000000000000000000000006020820152610b6190610b9f565b600060018301555b505050565b60408051808201909152601281527f756e6b6e6f776e206d73672e73656e64657200000000000000000000000000006020820152610edc905b60026000818150548092919060010191905055507fd44da6836c8376d1693e8b9cacf1c39b9bed3599164ad6d8e60902515f83938e8160405180806020018281038252838181518152602001915080519060200190808383829060006004602084601f0104600302600f01f150905090810190601f168015610c355780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b600454600383015467ffffffffffffffff1601421015610cc757610b61606060405190810160405280602681526020017f6e6f77203c2028696e666f2e66726f7a656e54696d65202b20667265657a655081526020017f6572696f64290000000000000000000000000000000000000000000000000000815260200150610b9f565b506001810154600160a060020a03301631811115610d1c5760408051808201909152601681527f7061796d656e74203e20746869732e62616c616e6365000000000000000000006020820152610b6190610b9f565b6003820154605060020a900460ff168015610d4257506003820154605860020a900460ff165b15610dce57600454600383015467ffffffffffffffff160162278d0001421015610df757610b61606060405190810160405280603a81526020017f6e6f77203c2028696e666f2e66726f7a656e54696d65202b20667265657a655081526020017f6572696f64202b206172626974726174696f6e506572696f6429000000000000815260200150610b9f565b6003820154605060020a900460ff1615610e18578154610b5990600160a060020a031682610e08565b8154610b5990600160a060020a0316825b600d5460ff16156117b857610002565b6003820154605860020a900460ff1615610b6157600054610b5990600160a060020a031682610e08565b805433600160a060020a03908116911614801590610e6f575060005433600160a060020a03908116911614155b15610ee257610edc606060405190810160405280603081526020017f6d73672e73656e64657220213d20696e666f2e6275796572202626206d73672e81526020017f73656e64657220213d2073656c6c657200000000000000000000000000000000815260200150610b9f565b50505050565b60028101541515610f2a576001810154600282015560038101805467ffffffffffffffff19167801000000000000000000000000000000000000000000000000428102041790555b805433600160a060020a0390811691161415610f8a576003810180546aff000000000000000000001916605060020a1790555b610edc848484600c338660030160089054906101000a900461ffff1661ffff168760010160005054610885565b60005433600160a060020a0390811691161415610b66576003810180546bff00000000000000000000001916605860020a179055610f5d565b600854600090111561100c5760408051808201909152601081527f746f74616c457363726f7773203e203000000000000000000000000000000000602082015261105590610b9f565b60075460009011156110575760408051808201909152600c81527f66656546756e6473203e20300000000000000000000000000000000000000000602082015261105590610b9f565b565b33600160a060020a0316ff5b506000838152600960205260409020600a546003820154660100000000000090910461ffff908116604060020a9092041611156107b25760408051808201909152601981527f696e666f2e636f756e74203e2070656e64696e67436f756e74000000000000006020820152610edc90610b9f565b610edc8484846003338660030160089054906101000a900461ffff1661ffff168760010160005054610885565b506000838152600960205260409020600a54600382015464010000000090910461ffff908116604060020a9092041611156111765760408051808201909152601b81527f696e666f2e636f756e74203e20617661696c61626c65436f756e7400000000006020820152610edc90610b9f565b600a546003820154660100000000000090910461ffff908116604060020a9092041611156111db5760408051808201909152601981527f696e666f2e636f756e74203e2070656e64696e67436f756e74000000000000006020820152610edc90610b9f565b600381018054600a805467ffff00000000000019811660f060020a604060020a9485900461ffff908116660100000000000094859004821603820282900490930291909117808455855465ffff0000000019821690869004841664010000000092839004851603830292909204021790915591546001840154610edc93889388938893600293339390920490911690610885565b6000878152600960205260409020600181015490925015156112b657604080518082019091526015815260008051602061180a8339815191526020820152610b0890610b9f565b600282015415156112fe5760408051808201909152601581527f696e666f2e66726f7a656e46756e6473203d3d203000000000000000000000006020820152610b0890610b9f565b600054600160a060020a0387811691161480159061132957508154600160a060020a03878116911614155b1561139657610b08606060405190810160405280602481526020017f5f77686f20213d2073656c6c6572202626205f77686f20213d20696e666f2e6281526020017f7579657200000000000000000000000000000000000000000000000000000000815260200150610b9f565b6003820154605060020a900460ff1615806113bd57506003820154605860020a900460ff16155b156113ff5760408051808201909152601f81527f21696e666f2e62757965724e6f207c7c2021696e666f2e73656c6c65724e6f006020820152610b0890610b9f565b60018201548511156114485760408051808201909152601b81527f5f7061796d656e74203e20696e666f2e6c6f636b656446756e647300000000006020820152610b0890610b9f565b30600160a060020a0316318511156114975760408051808201909152601781527f5f7061796d656e74203e20746869732e62616c616e63650000000000000000006020820152610b0890610b9f565b5060065460018201546103e8918102919091049085900381111561151d57610b08606060405190810160405280602681526020017f726577617264203e2028696e666f2e6c6f636b656446756e6473202d205f706181526020017f796d656e74290000000000000000000000000000000000000000000000000000815260200150610b9f565b6115278686610e08565b600182018054869003808255600780549091019055600090556003820154610b0890889086908690600d903390604060020a900461ffff168b610885565b815433600160a060020a03908116911614801590611592575060005433600160a060020a03908116911614155b15611606576115ff606060405190810160405280603081526020017f6d73672e73656e64657220213d20696e666f2e6275796572202626206d73672e81526020017f73656e64657220213d2073656c6c657200000000000000000000000000000000815260200150610b9f565b5050505050565b506001810154600160a060020a0330163181111561165b5760408051808201909152601681527f7061796d656e74203e20746869732e62616c616e63650000000000000000000060208201526115ff90610b9f565b815433600160a060020a0390811691161415611687576000546116b390600160a060020a031682610e08565b60005433600160a060020a03908116911614156116f65781546116b390600160a060020a031682610e08565b60085460009011156116ca57600880546000190190555b6000600183015560038201546115ff90869086908690600b903390604060020a900461ffff1687610885565b60408051808201909152601281527f756e6b6e6f776e206d73672e73656e646572000000000000000000000000000060208201526115ff90610b9f565b600754600160a060020a033016319011156117855760408051808201909152601781527f66656546756e6473203e20746869732e62616c616e6365000000000000000000602082015261105590610b9f565b60035460075461179e91600160a060020a031690610e08565b6000600755565b61095960008383600a3360006000610885565b600d805460ff19166001179055604051600160a060020a038316906161a89083906000818181858888f1935050505015156117fc57600d805460ff19169055610002565b600d805460ff19169055505056696e666f2e6c6f636b656446756e6473203d3d2030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000278d00000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000640000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000009184e72a000

Deployed Bytecode

0x606060405236156101485760e060020a6000350463012f52ee811461015557806306661abd146101bd57806306909f69146101d657806308551a53146102425780630a3cb663146102595780630fb59f9514610267578063200d2ed2146102d0578063309e21a9146102e25780633262fd9a146102f057806334d24bff1461034257806341c0e1b5146103d65780634ca18ebd146103f9578063553bf56d1461046557806363ee7c8d146104d15780636958420b146104df5780636fd637281461055457806395a5dfc01461056257806397a993aa146105b85780639e05c118146105d8578063a035b1fe146105f3578063cc45969614610601578063cd1f83931461060f578063ceb98dc71461061d578063db8d55f114610647578063dc3ef6851461066a578063ea70b4af14610678578063eda50e3314610695578063fe25e00a14610701575b3461000257610718610002565b346100025761071a6004356009602052600090815260409020805460018201546002830154600390930154600160a060020a0390921692909167ffffffffffffffff81169061ffff604060020a8204169060ff605060020a8204811691605860020a90041687565b346100025761076d600a5461ffff620100009091041681565b34610002576107186004808035906020019082018035906020019191908080601f01602080910402602001604051908101604052809392919081815260200183838082843750949650509335935050505060005433600160a060020a0390811691161461085757610002565b3461000257610784600054600160a060020a031681565b34610002576107a060045481565b60408051602060046024803582810135601f81018590048502860185019096528585526107189583359593946044949392909201918190840183828082843750949650509335935050606435915050600a546000908190819061ffff1660011461095d57610002565b346100025761076d600a5461ffff1681565b34610002576107a060065481565b3461000257610718600435600081815260096020526040812060018101549091901515610b1157604080518082019091526015815260008051602061180a8339815191526020820152610b6190610b9f565b346100025760408051602060046024803582810135601f810185900485028601850190965285855261071895833595939460449493929092019181908401838280828437509496505093359350505050600083815260096020526040902060018101541515610e4257604080518082019091526015815260008051602061180a8339815191526020820152610edc90610b9f565b346100025761071860005433600160a060020a03908116911614610fc357610002565b346100025760408051602060046024803582810135601f8101859004850286018501909652858552610718958335959394604494939290920191819084018382808284375094965050933593505050506000805433600160a060020a0390811691161461106357610002565b346100025760408051602060046024803582810135601f8101859004850286018501909652858552610718958335959394604494939290920191819084018382808284375094965050933593505050506000805433600160a060020a0390811691161461110457610002565b34610002576107a060085481565b3461000257604080516020600460643581810135601f810184900484028501840190955284845261071894823594602480359560443595946084949201919081908401838280828437509496505093359350505050600354600090819033600160a060020a0390811691161461126f57610002565b34610002576107a060075481565b346100025760408051602060046024803582810135601f8101859004850286018501909652858552610718958335959394604494939290920191819084018382808284375094965050933593506107fc92505050565b3461000257610843600435600c6020526000908152604090205460ff1681565b346100025761076d600a5461ffff6401000000009091041681565b34610002576107a0600b5481565b34610002576107a060015481565b34610002576107a060025481565b3461000257610718600160a060020a0333166000908152600c60205260409020805460ff19169055565b346100025761071860035433600160a060020a0390811691161461173357610002565b34610002576107a060055481565b346100025761076d600a5461ffff66010000000000009091041681565b34610002576107186004808035906020019082018035906020019191908080601f01602080910402602001604051908101604052809392919081815260200183838082843750949650509335935050505060005433600160a060020a039081169116146117a557610002565b3461000257610784600354600160a060020a031681565b005b60408051600160a060020a03909816885260208801969096528686019490945267ffffffffffffffff909216606086015261ffff166080850152151560a0840152151560c0830152519081900360e00190f35b6040805161ffff9092168252519081900360200190f35b60408051600160a060020a039092168252519081900360200190f35b60408051918252519081900360200190f35b6003810154600a805460f060020a61ffff604060020a909404841666010000000000008084049095160381020490920267ffff000000000000199092169190911790556110d78484845b60008381526009602052604081206001810154909190151561156557604080518082019091526015815260008051602061180a83398151915260208201526115ff90610b9f565b604080519115158252519081900360200190f35b600a805461ffff19166002179081905561095990600090849084906004903390640100000000900461ffff16855b600160008181505480929190600101919050555082600160a060020a031685887fe9a88fc67f5ad8c6d6e6fb2832af9558ebc4c2f6395337eec27c17f1ee9ebc1f8988878760405180806020018561ffff1681526020018481526020018381526020018281038252868181518152602001915080519060200190808383829060006004602084601f0104600302600f01f150905090810190601f1680156109405780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a450505050505050565b5050565b600b5461ffff85160234101561097257610002565b600a5461ffff6401000000009091048116908516111561099157610002565b61ffff841615156109a157610002565b6005546103e89011156109b357610002565b6006546103e89011156109c557610002565b6006546005546103e8910111156109db57610002565b6000878152600960205260408120600181015490945011156109fc57610002565b6005546103e890340204915034821115610a1557610002565b50600780548201905560088054600190810190915582546c01000000000000000000000000338181029190910473ffffffffffffffffffffffffffffffffffffffff199092169190911784553483810385840181905560006002870181905560038701805460f060020a808b02819004604060020a026bffffffff00000000000000001990921691909117909155600a8054660100000000000080820461ffff9081168d018502949094040267ffff00000000000019909116179055600160a060020a0385168252600c6020526040909120805460ff1916861790559093610b08938b938b938b939291908b1690610885565b50505050505050565b60028201541515610c455760408051808201909152601581527f696e666f2e66726f7a656e46756e6473203d3d203000000000000000000000006020820152610b6190610b9f565b600060018301555b505050565b60408051808201909152601281527f756e6b6e6f776e206d73672e73656e64657200000000000000000000000000006020820152610edc905b60026000818150548092919060010191905055507fd44da6836c8376d1693e8b9cacf1c39b9bed3599164ad6d8e60902515f83938e8160405180806020018281038252838181518152602001915080519060200190808383829060006004602084601f0104600302600f01f150905090810190601f168015610c355780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b600454600383015467ffffffffffffffff1601421015610cc757610b61606060405190810160405280602681526020017f6e6f77203c2028696e666f2e66726f7a656e54696d65202b20667265657a655081526020017f6572696f64290000000000000000000000000000000000000000000000000000815260200150610b9f565b506001810154600160a060020a03301631811115610d1c5760408051808201909152601681527f7061796d656e74203e20746869732e62616c616e6365000000000000000000006020820152610b6190610b9f565b6003820154605060020a900460ff168015610d4257506003820154605860020a900460ff165b15610dce57600454600383015467ffffffffffffffff160162278d0001421015610df757610b61606060405190810160405280603a81526020017f6e6f77203c2028696e666f2e66726f7a656e54696d65202b20667265657a655081526020017f6572696f64202b206172626974726174696f6e506572696f6429000000000000815260200150610b9f565b6003820154605060020a900460ff1615610e18578154610b5990600160a060020a031682610e08565b8154610b5990600160a060020a0316825b600d5460ff16156117b857610002565b6003820154605860020a900460ff1615610b6157600054610b5990600160a060020a031682610e08565b805433600160a060020a03908116911614801590610e6f575060005433600160a060020a03908116911614155b15610ee257610edc606060405190810160405280603081526020017f6d73672e73656e64657220213d20696e666f2e6275796572202626206d73672e81526020017f73656e64657220213d2073656c6c657200000000000000000000000000000000815260200150610b9f565b50505050565b60028101541515610f2a576001810154600282015560038101805467ffffffffffffffff19167801000000000000000000000000000000000000000000000000428102041790555b805433600160a060020a0390811691161415610f8a576003810180546aff000000000000000000001916605060020a1790555b610edc848484600c338660030160089054906101000a900461ffff1661ffff168760010160005054610885565b60005433600160a060020a0390811691161415610b66576003810180546bff00000000000000000000001916605860020a179055610f5d565b600854600090111561100c5760408051808201909152601081527f746f74616c457363726f7773203e203000000000000000000000000000000000602082015261105590610b9f565b60075460009011156110575760408051808201909152600c81527f66656546756e6473203e20300000000000000000000000000000000000000000602082015261105590610b9f565b565b33600160a060020a0316ff5b506000838152600960205260409020600a546003820154660100000000000090910461ffff908116604060020a9092041611156107b25760408051808201909152601981527f696e666f2e636f756e74203e2070656e64696e67436f756e74000000000000006020820152610edc90610b9f565b610edc8484846003338660030160089054906101000a900461ffff1661ffff168760010160005054610885565b506000838152600960205260409020600a54600382015464010000000090910461ffff908116604060020a9092041611156111765760408051808201909152601b81527f696e666f2e636f756e74203e20617661696c61626c65436f756e7400000000006020820152610edc90610b9f565b600a546003820154660100000000000090910461ffff908116604060020a9092041611156111db5760408051808201909152601981527f696e666f2e636f756e74203e2070656e64696e67436f756e74000000000000006020820152610edc90610b9f565b600381018054600a805467ffff00000000000019811660f060020a604060020a9485900461ffff908116660100000000000094859004821603820282900490930291909117808455855465ffff0000000019821690869004841664010000000092839004851603830292909204021790915591546001840154610edc93889388938893600293339390920490911690610885565b6000878152600960205260409020600181015490925015156112b657604080518082019091526015815260008051602061180a8339815191526020820152610b0890610b9f565b600282015415156112fe5760408051808201909152601581527f696e666f2e66726f7a656e46756e6473203d3d203000000000000000000000006020820152610b0890610b9f565b600054600160a060020a0387811691161480159061132957508154600160a060020a03878116911614155b1561139657610b08606060405190810160405280602481526020017f5f77686f20213d2073656c6c6572202626205f77686f20213d20696e666f2e6281526020017f7579657200000000000000000000000000000000000000000000000000000000815260200150610b9f565b6003820154605060020a900460ff1615806113bd57506003820154605860020a900460ff16155b156113ff5760408051808201909152601f81527f21696e666f2e62757965724e6f207c7c2021696e666f2e73656c6c65724e6f006020820152610b0890610b9f565b60018201548511156114485760408051808201909152601b81527f5f7061796d656e74203e20696e666f2e6c6f636b656446756e647300000000006020820152610b0890610b9f565b30600160a060020a0316318511156114975760408051808201909152601781527f5f7061796d656e74203e20746869732e62616c616e63650000000000000000006020820152610b0890610b9f565b5060065460018201546103e8918102919091049085900381111561151d57610b08606060405190810160405280602681526020017f726577617264203e2028696e666f2e6c6f636b656446756e6473202d205f706181526020017f796d656e74290000000000000000000000000000000000000000000000000000815260200150610b9f565b6115278686610e08565b600182018054869003808255600780549091019055600090556003820154610b0890889086908690600d903390604060020a900461ffff168b610885565b815433600160a060020a03908116911614801590611592575060005433600160a060020a03908116911614155b15611606576115ff606060405190810160405280603081526020017f6d73672e73656e64657220213d20696e666f2e6275796572202626206d73672e81526020017f73656e64657220213d2073656c6c657200000000000000000000000000000000815260200150610b9f565b5050505050565b506001810154600160a060020a0330163181111561165b5760408051808201909152601681527f7061796d656e74203e20746869732e62616c616e63650000000000000000000060208201526115ff90610b9f565b815433600160a060020a0390811691161415611687576000546116b390600160a060020a031682610e08565b60005433600160a060020a03908116911614156116f65781546116b390600160a060020a031682610e08565b60085460009011156116ca57600880546000190190555b6000600183015560038201546115ff90869086908690600b903390604060020a900461ffff1687610885565b60408051808201909152601281527f756e6b6e6f776e206d73672e73656e646572000000000000000000000000000060208201526115ff90610b9f565b600754600160a060020a033016319011156117855760408051808201909152601781527f66656546756e6473203e20746869732e62616c616e6365000000000000000000602082015261105590610b9f565b60035460075461179e91600160a060020a031690610e08565b6000600755565b61095960008383600a3360006000610885565b600d805460ff19166001179055604051600160a060020a038316906161a89083906000818181858888f1935050505015156117fc57600d805460ff19169055610002565b600d805460ff19169055505056696e666f2e6c6f636b656446756e6473203d3d20300000000000000000000000

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.