Sponsored Link:   Buy your 1st Ethereum in 5 minutes. Trusted by more than 100k buyers.
  Latest 25 txns from a total Of 9897 transactions View All

TxHash Age From To Value [TxFee]
0xea03077b98a7635fcf077fd0f642a9b2638694c9c55700b55db40c9975555d8571 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.000990759
0xde0a85227729ab73ed6d5fbafe177d34bae57a035db4f89b0669284e1727a10271 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.000990759
0x738b086271a6f1bd0f17a2cda93fee616a0bcaa5da69c31400af36743e53cfeb71 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.001148259
0x66425c82b5c23ac0e9cb22e943510e6ec5674ddf955097a40b571d55dffcce7d71 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.000978873
0xfaacf07ad4330fd5e80b9a244c6041e868e3c58fc1dd31677dfaa6348bfb659471 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.001183707
0xd41b65f2bd52cfa6cbc37e8b646afa5fb8231cf45c90879bfdc082250770a46e71 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.000978873
0x7e13114085db271c16d628d91f76eed2845b4d7aebe5a5bdd9da4a25423221fe71 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.000978873
0x59d114a457f33e68bb7d5afcb018f46213bcfb0eff4e78e30974fdd1f981534371 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.000978873
0xf564b2479ae81df11ab02dd33611a9321edd11b153e4b4b089d920abb88154cc71 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.000978873
0x25a09dcc29224af196b3672f008b20074be8c7b3e2310e9b4f71d72128e4164771 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.001183707
0x3cf248130baee2dfa02a370add198afb2258c836bee52235c89c1e1a86e8f42871 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.000981183
0x472a4d4b1fe46490b3b5c697406e7281f2212d1efbbdba52a0e058af535a3e7771 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.000981183
0x22c7e3a7eb3e97819caf37f8bdf3721c78f7b5e108e99d6ceddbe2535ff58f0771 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.000978873
0x3d55532e285ef90979d7b19fe697627be5a88fac2482df1c3b357846079c90b771 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.000981183
0xf88e5f684f743df9c773a9fe99f02c1d207f431e23b3106ded4642f872995f1571 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.000981183
0xbc46f27a721133515ae2cc62a0b6cb200e75bebf31cde0ef2d6e77c047564fd171 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.000981183
0x441ea9531e5d80bd40308b8e1f8e2169f9623270511f44ec49a37525a8200a3071 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.000978873
0xd6ba841d3747282d9cb7c5b6b541df2462c851bc09f54223f16395726512c81471 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.001138683
0x92e7d1b77fcb6e66b6cf2f92d202b250dfc10c6cda456c113604e2b8e4ab6b3f71 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.000981183
0x36b7461fb375450e6789dacdc5fd44dd3892626ac2c9b2882b858e8615436e0e71 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.000981183
0xac835eb9c8c2b77b909b949297ccc194e6d9811368eb9433219abf367c54660d71 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.000981183
0x10f3a66a083dff99158257d31351508e2d1cc5ae5830ab26d4b21a40d0e5fb1171 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.000981183
0x847dd4c84fe92b7dcb08403a1bfda72b803fd3034b812c552542cd4bcd487de271 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.001183707
0x9797fbebcff6715130f2f3ed4a6d732923fff3ceda83cf86b3cd2e860337045271 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.000981183
0x515313363e320e5f2104175604e53ac34823b38db6ccc70aaf0ef432103a65be71 days 19 hrs ago0x001908971cd263807d027606a18c95cec1674e17  IN   0x83ce340889c15a3b4d38cfcd1fc93e5d8497691f0 Ether0.001138683
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
View All
ParentTxHash Block Age From To Value
Contract Name: ExpiringMarket
Compiler Version: v0.4.8+commit.60cc1668
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts
pragma solidity ^0.4.8;

/// auth.sol -- widely-used access control pattern for Ethereum

// Copyright (C) 2015, 2016, 2017  Nexus Development, LLC

// Licensed under the Apache License, Version 2.0 (the "License").
// You may not use this file except in compliance with the License.

// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND (express or implied).

contract DSAuthority {
    function canCall(
        address src, address dst, bytes4 sig
    ) constant returns (bool);
}

contract DSAuthEvents {
    event LogSetAuthority (address indexed authority);
    event LogSetOwner     (address indexed owner);
}

contract DSAuth is DSAuthEvents {
    DSAuthority  public  authority;
    address      public  owner;

    function DSAuth() {
        owner = msg.sender;
        LogSetOwner(msg.sender);
    }

    function setOwner(address owner_)
        auth
    {
        owner = owner_;
        LogSetOwner(owner);
    }

    function setAuthority(DSAuthority authority_)
        auth
    {
        authority = authority_;
        LogSetAuthority(authority);
    }

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

    modifier authorized(bytes4 sig) {
        assert(isAuthorized(msg.sender, sig));
        _;
    }

    function isAuthorized(address src, bytes4 sig) internal returns (bool) {
        if (src == owner) {
            return true;
        } else if (authority == DSAuthority(0)) {
            return false;
        } else {
            return authority.canCall(src, this, sig);
        }
    }

    function assert(bool x) internal {
        if (!x) throw;
    }
}

contract ERC20 {
    function totalSupply() constant returns (uint supply);
    function balanceOf( address who ) constant returns (uint value);
    function allowance( address owner, address spender ) constant returns (uint _allowance);

    function transfer( address to, uint value) returns (bool ok);
    function transferFrom( address from, address to, uint value) returns (bool ok);
    function approve( address spender, uint value ) returns (bool ok);

    event Transfer( address indexed from, address indexed to, uint value);
    event Approval( address indexed owner, address indexed spender, uint value);
}

contract EventfulMarket {
    event ItemUpdate( uint id );
    event Trade( uint sell_how_much, address indexed sell_which_token,
                 uint buy_how_much, address indexed buy_which_token );

    event LogMake(
        bytes32  indexed  id,
        bytes32  indexed  pair,
        address  indexed  maker,
        ERC20             haveToken,
        ERC20             wantToken,
        uint128           haveAmount,
        uint128           wantAmount,
        uint64            timestamp
    );

    event LogBump(
        bytes32  indexed  id,
        bytes32  indexed  pair,
        address  indexed  maker,
        ERC20             haveToken,
        ERC20             wantToken,
        uint128           haveAmount,
        uint128           wantAmount,
        uint64            timestamp
    );

    event LogTake(
        bytes32           id,
        bytes32  indexed  pair,
        address  indexed  maker,
        ERC20             haveToken,
        ERC20             wantToken,
        address  indexed  taker,
        uint128           takeAmount,
        uint128           giveAmount,
        uint64            timestamp
    );

    event LogKill(
        bytes32  indexed  id,
        bytes32  indexed  pair,
        address  indexed  maker,
        ERC20             haveToken,
        ERC20             wantToken,
        uint128           haveAmount,
        uint128           wantAmount,
        uint64            timestamp
    );
}

contract SimpleMarket is EventfulMarket {
    bool locked;

    modifier synchronized {
        assert(!locked);
        locked = true;
        _;
        locked = false;
    }

    function assert(bool x) internal {
        if (!x) throw;
    }

    struct OfferInfo {
        uint     sell_how_much;
        ERC20    sell_which_token;
        uint     buy_how_much;
        ERC20    buy_which_token;
        address  owner;
        bool     active;
        uint64   timestamp;
    }

    mapping (uint => OfferInfo) public offers;

    uint public last_offer_id;

    function next_id() internal returns (uint) {
        last_offer_id++; return last_offer_id;
    }

    modifier can_offer {
        _;
    }
    modifier can_buy(uint id) {
        assert(isActive(id));
        _;
    }
    modifier can_cancel(uint id) {
        assert(isActive(id));
        assert(getOwner(id) == msg.sender);
        _;
    }
    function isActive(uint id) constant returns (bool active) {
        return offers[id].active;
    }
    function getOwner(uint id) constant returns (address owner) {
        return offers[id].owner;
    }
    function getOffer( uint id ) constant returns (uint, ERC20, uint, ERC20) {
      var offer = offers[id];
      return (offer.sell_how_much, offer.sell_which_token,
              offer.buy_how_much, offer.buy_which_token);
    }

    // non underflowing subtraction
    function safeSub(uint a, uint b) internal returns (uint) {
        assert(b <= a);
        return a - b;
    }
    // non overflowing multiplication
    function safeMul(uint a, uint b) internal returns (uint c) {
        c = a * b;
        assert(a == 0 || c / a == b);
    }

    function trade( address seller, uint sell_how_much, ERC20 sell_which_token,
                    address buyer,  uint buy_how_much,  ERC20 buy_which_token )
        internal
    {
        var seller_paid_out = buy_which_token.transferFrom( buyer, seller, buy_how_much );
        assert(seller_paid_out);
        var buyer_paid_out = sell_which_token.transfer( buyer, sell_how_much );
        assert(buyer_paid_out);
        Trade( sell_how_much, sell_which_token, buy_how_much, buy_which_token );
    }

    // ---- Public entrypoints ---- //

    function make(
        ERC20    haveToken,
        ERC20    wantToken,
        uint128  haveAmount,
        uint128  wantAmount
    ) returns (bytes32 id) {
        return bytes32(offer(haveAmount, haveToken, wantAmount, wantToken));
    }

    function take(bytes32 id, uint128 maxTakeAmount) {
        assert(buy(uint256(id), maxTakeAmount));
    }

    function kill(bytes32 id) {
        assert(cancel(uint256(id)));
    }

    // Make a new offer. Takes funds from the caller into market escrow.
    function offer( uint sell_how_much, ERC20 sell_which_token
                  , uint buy_how_much,  ERC20 buy_which_token )
        can_offer
        synchronized
        returns (uint id)
    {
        assert(uint128(sell_how_much) == sell_how_much);
        assert(uint128(buy_how_much) == buy_how_much);
        assert(sell_how_much > 0);
        assert(sell_which_token != ERC20(0x0));
        assert(buy_how_much > 0);
        assert(buy_which_token != ERC20(0x0));
        assert(sell_which_token != buy_which_token);

        OfferInfo memory info;
        info.sell_how_much = sell_how_much;
        info.sell_which_token = sell_which_token;
        info.buy_how_much = buy_how_much;
        info.buy_which_token = buy_which_token;
        info.owner = msg.sender;
        info.active = true;
        info.timestamp = uint64(now);
        id = next_id();
        offers[id] = info;

        var seller_paid = sell_which_token.transferFrom( msg.sender, this, sell_how_much );
        assert(seller_paid);

        ItemUpdate(id);
        LogMake(
            bytes32(id),
            sha3(sell_which_token, buy_which_token),
            msg.sender,
            sell_which_token,
            buy_which_token,
            uint128(sell_how_much),
            uint128(buy_how_much),
            uint64(now)
        );
    }

    function bump(bytes32 id_)
        can_buy(uint256(id_))
    {
        var id = uint256(id_);
        LogBump(
            id_,
            sha3(offers[id].sell_which_token, offers[id].buy_which_token),
            offers[id].owner,
            offers[id].sell_which_token,
            offers[id].buy_which_token,
            uint128(offers[id].sell_how_much),
            uint128(offers[id].buy_how_much),
            offers[id].timestamp
        );
    }

    // Accept given `quantity` of an offer. Transfers funds from caller to
    // offer maker, and from market to caller.
    function buy( uint id, uint quantity )
        can_buy(id)
        synchronized
        returns ( bool success )
    {
        assert(uint128(quantity) == quantity);

        // read-only offer. Modify an offer by directly accessing offers[id]
        OfferInfo memory offer = offers[id];

        // inferred quantity that the buyer wishes to spend
        uint spend = safeMul(quantity, offer.buy_how_much) / offer.sell_how_much;
        assert(uint128(spend) == spend);

        if ( spend > offer.buy_how_much || quantity > offer.sell_how_much ) {
            // buyer wants more than is available
            success = false;
        } else if ( spend == offer.buy_how_much && quantity == offer.sell_how_much ) {
            // buyer wants exactly what is available
            delete offers[id];

            trade( offer.owner, quantity, offer.sell_which_token,
                   msg.sender, spend, offer.buy_which_token );

            ItemUpdate(id);
            LogTake(
                bytes32(id),
                sha3(offer.sell_which_token, offer.buy_which_token),
                offer.owner,
                offer.sell_which_token,
                offer.buy_which_token,
                msg.sender,
                uint128(offer.sell_how_much),
                uint128(offer.buy_how_much),
                uint64(now)
            );

            success = true;
        } else if ( spend > 0 && quantity > 0 ) {
            // buyer wants a fraction of what is available
            offers[id].sell_how_much = safeSub(offer.sell_how_much, quantity);
            offers[id].buy_how_much = safeSub(offer.buy_how_much, spend);

            trade( offer.owner, quantity, offer.sell_which_token,
                    msg.sender, spend, offer.buy_which_token );

            ItemUpdate(id);
            LogTake(
                bytes32(id),
                sha3(offer.sell_which_token, offer.buy_which_token),
                offer.owner,
                offer.sell_which_token,
                offer.buy_which_token,
                msg.sender,
                uint128(quantity),
                uint128(spend),
                uint64(now)
            );

            success = true;
        } else {
            // buyer wants an unsatisfiable amount (less than 1 integer)
            success = false;
        }
    }

    // Cancel an offer. Refunds offer maker.
    function cancel( uint id )
        can_cancel(id)
        synchronized
        returns ( bool success )
    {
        // read-only offer. Modify an offer by directly accessing offers[id]
        OfferInfo memory offer = offers[id];
        delete offers[id];

        var seller_refunded = offer.sell_which_token.transfer( offer.owner , offer.sell_how_much );
        assert(seller_refunded);

        ItemUpdate(id);
        LogKill(
            bytes32(id),
            sha3(offer.sell_which_token, offer.buy_which_token),
            offer.owner,
            offer.sell_which_token,
            offer.buy_which_token,
            uint128(offer.sell_how_much),
            uint128(offer.buy_how_much),
            uint64(now)
        );

        success = true;
    }
}

// Simple Market with a market lifetime. When the lifetime has elapsed,
// offers can only be cancelled (offer and buy will throw).

contract ExpiringMarket is DSAuth, SimpleMarket {
    uint public lifetime;
    uint public close_time;
    bool public stopped;

    function stop() auth {
        stopped = true;
    }

    function ExpiringMarket(uint lifetime_) {
        lifetime = lifetime_;
        close_time = getTime() + lifetime_;
    }

    function getTime() constant returns (uint) {
        return block.timestamp;
    }
    function isClosed() constant returns (bool closed) {
        return stopped || (getTime() > close_time);
    }

    // after market lifetime has elapsed, no new offers are allowed
    modifier can_offer {
        assert(!isClosed());
        _;
    }
    // after close, no new buys are allowed
    modifier can_buy(uint id) {
        assert(isActive(id));
        assert(!isClosed());
        _;
    }
    // after close, anyone can cancel an offer
    modifier can_cancel(uint id) {
        assert(isActive(id));
        assert(isClosed() || (msg.sender == getOwner(id)));
        _;
    }
}

    Contract ABI  
[{"constant":false,"inputs":[],"name":"stop","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"haveToken","type":"address"},{"name":"wantToken","type":"address"},{"name":"haveAmount","type":"uint128"},{"name":"wantAmount","type":"uint128"}],"name":"make","outputs":[{"name":"id","type":"bytes32"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"owner_","type":"address"}],"name":"setOwner","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"last_offer_id","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"id","type":"uint256"}],"name":"cancel","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"id","type":"uint256"}],"name":"getOffer","outputs":[{"name":"","type":"uint256"},{"name":"","type":"address"},{"name":"","type":"uint256"},{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"id","type":"bytes32"},{"name":"maxTakeAmount","type":"uint128"}],"name":"take","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"getTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"close_time","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"lifetime","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"stopped","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"id_","type":"bytes32"}],"name":"bump","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"authority_","type":"address"}],"name":"setAuthority","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"id","type":"uint256"}],"name":"isActive","outputs":[{"name":"active","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"offers","outputs":[{"name":"sell_how_much","type":"uint256"},{"name":"sell_which_token","type":"address"},{"name":"buy_how_much","type":"uint256"},{"name":"buy_which_token","type":"address"},{"name":"owner","type":"address"},{"name":"active","type":"bool"},{"name":"timestamp","type":"uint64"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"id","type":"bytes32"}],"name":"kill","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"authority","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"isClosed","outputs":[{"name":"closed","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"id","type":"uint256"}],"name":"getOwner","outputs":[{"name":"owner","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"id","type":"uint256"},{"name":"quantity","type":"uint256"}],"name":"buy","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"sell_how_much","type":"uint256"},{"name":"sell_which_token","type":"address"},{"name":"buy_how_much","type":"uint256"},{"name":"buy_which_token","type":"address"}],"name":"offer","outputs":[{"name":"id","type":"uint256"}],"payable":false,"type":"function"},{"inputs":[{"name":"lifetime_","type":"uint256"}],"payable":false,"type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"id","type":"uint256"}],"name":"ItemUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sell_how_much","type":"uint256"},{"indexed":true,"name":"sell_which_token","type":"address"},{"indexed":false,"name":"buy_how_much","type":"uint256"},{"indexed":true,"name":"buy_which_token","type":"address"}],"name":"Trade","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"id","type":"bytes32"},{"indexed":true,"name":"pair","type":"bytes32"},{"indexed":true,"name":"maker","type":"address"},{"indexed":false,"name":"haveToken","type":"address"},{"indexed":false,"name":"wantToken","type":"address"},{"indexed":false,"name":"haveAmount","type":"uint128"},{"indexed":false,"name":"wantAmount","type":"uint128"},{"indexed":false,"name":"timestamp","type":"uint64"}],"name":"LogMake","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"id","type":"bytes32"},{"indexed":true,"name":"pair","type":"bytes32"},{"indexed":true,"name":"maker","type":"address"},{"indexed":false,"name":"haveToken","type":"address"},{"indexed":false,"name":"wantToken","type":"address"},{"indexed":false,"name":"haveAmount","type":"uint128"},{"indexed":false,"name":"wantAmount","type":"uint128"},{"indexed":false,"name":"timestamp","type":"uint64"}],"name":"LogBump","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"id","type":"bytes32"},{"indexed":true,"name":"pair","type":"bytes32"},{"indexed":true,"name":"maker","type":"address"},{"indexed":false,"name":"haveToken","type":"address"},{"indexed":false,"name":"wantToken","type":"address"},{"indexed":true,"name":"taker","type":"address"},{"indexed":false,"name":"takeAmount","type":"uint128"},{"indexed":false,"name":"giveAmount","type":"uint128"},{"indexed":false,"name":"timestamp","type":"uint64"}],"name":"LogTake","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"id","type":"bytes32"},{"indexed":true,"name":"pair","type":"bytes32"},{"indexed":true,"name":"maker","type":"address"},{"indexed":false,"name":"haveToken","type":"address"},{"indexed":false,"name":"wantToken","type":"address"},{"indexed":false,"name":"haveAmount","type":"uint128"},{"indexed":false,"name":"wantAmount","type":"uint128"},{"indexed":false,"name":"timestamp","type":"uint64"}],"name":"LogKill","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"authority","type":"address"}],"name":"LogSetAuthority","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"}],"name":"LogSetOwner","type":"event"}]

  Contract Creation Code Switch To Opcodes View
606060405234610000576040516020806117be83398101604052515b5b60018054600160a060020a03191633600160a060020a03169081179091556040517fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9490600090a25b60048190558061007f64010000000061097861008a82021704565b016005555b5061008f565b425b90565b6117208061009e6000396000f3006060604052361561010c5763ffffffff60e060020a60003504166307da68f58114610111578063093f51981461012057806313af403514610163578063232cae0b1461017e57806340e58ee51461019d5780634579268a146101c15780634960645514610202578063557ed1ba146102205780636377ebca1461023f57806369d24f631461025e57806375f12b211461027d578063779997c31461029e5780637a9e5e4b146102b057806382afd23b146102cb5780638a72ea6a146102ef5780638da5cb5b14610350578063b4f9b6c814610379578063bf7e214f1461038b578063c2b6b58c146103b4578063c41a360a146103d5578063d6febde814610401578063f09ea2a614610428575b610000565b346100005761011e610460565b005b3461000057610151600160a060020a03600435811690602435166001608060020a036044358116906064351661048f565b60408051918252519081900360200190f35b346100005761011e600160a060020a03600435166104ba565b005b346100005761015161052a565b60408051918252519081900360200190f35b34610000576101ad600435610530565b604080519115158252519081900360200190f35b34610000576101d160043561091c565b60408051948552600160a060020a039384166020860152848101929092529091166060830152519081900360800190f35b346100005761011e6004356001608060020a0360243516610958565b005b3461000057610151610978565b60408051918252519081900360200190f35b346100005761015161097d565b60408051918252519081900360200190f35b3461000057610151610983565b60408051918252519081900360200190f35b34610000576101ad610989565b604080519115158252519081900360200190f35b346100005761011e600435610992565b005b346100005761011e600160a060020a0360043516610a87565b005b34610000576101ad600435610af3565b604080519115158252519081900360200190f35b34610000576102ff600435610b15565b60408051978852600160a060020a0396871660208901528781019590955292851660608701529316608085015291151560a084015267ffffffffffffffff90911660c0830152519081900360e00190f35b346100005761035d610b73565b60408051600160a060020a039092168252519081900360200190f35b346100005761011e600435610b82565b005b346100005761035d610b97565b60408051600160a060020a039092168252519081900360200190f35b34610000576101ad610ba6565b604080519115158252519081900360200190f35b346100005761035d600435610bc8565b60408051600160a060020a039092168252519081900360200190f35b34610000576101ad600435602435610be9565b604080519115158252519081900360200190f35b3461000057610151600435600160a060020a0360243581169060443590606435166110e1565b60408051918252519081900360200190f35b61047e61047933600035600160e060020a03191661143a565b611517565b6006805460ff191660011790555b5b565b60006104af836001608060020a031686846001608060020a0316876110e1565b90505b949350505050565b6104d861047933600035600160e060020a03191661143a565b611517565b60018054600160a060020a031916600160a060020a0383811691909117918290556040519116907fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9490600090a25b5b50565b60035481565b6040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c08101829052818361057b61047982610af3565b611517565b6105af610586610ba6565b80610479575061059582610bc8565b600160a060020a031633600160a060020a0316145b611517565b6001546105c69060a060020a900460ff1615611517565b6001600160146101000a81548160ff0219169083151502179055506002600086815260200190815260200160002060e06040519081016040529081600082015481526020016001820160009054906101000a9004600160a060020a0316600160a060020a0316600160a060020a03168152602001600282015481526020016003820160009054906101000a9004600160a060020a0316600160a060020a0316600160a060020a031681526020016004820160009054906101000a9004600160a060020a0316600160a060020a0316600160a060020a031681526020016004820160149054906101000a900460ff161515151581526020016004820160159054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681525050925060026000868152602001908152602001600020600060008201600090556001820160006101000a815490600160a060020a03021916905560028201600090556003820160006101000a815490600160a060020a0302191690556004820160006101000a815490600160a060020a0302191690556004820160146101000a81549060ff02191690556004820160156101000a81549067ffffffffffffffff021916905550508260200151600160a060020a031663a9059cbb846080015185600001516000604051602001526040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b156100005760325a03f115610000575050604051519250610822905082611517565b6040805186815290516000805160206116d58339815191529181900360200190a1608080840151602080860180516060808901805160408051606060020a600160a060020a039687168102825292861690920260148301528051918290036028018220955192518c51828e01519487168452908616978301979097526001608060020a0396871682820152959091169181019190915267ffffffffffffffff4216958101959095529151919092169288917f9577941d28fff863bfbee4694a6a4a56fb09e169619189d2eaa750b5b48199959181900360a00190a4600193505b6001805460a060020a60ff02191690555b5b505050919050565b6000818152600260208190526040909120805460018201549282015460038301549193600160a060020a0390811693919216905b509193509193565b610973610479836001608060020a038416610be9565b611517565b5b5050565b425b90565b60055481565b60045481565b60065460ff1681565b6000816109a661047982610af3565b611517565b6109b76109b1610ba6565b15611517565b60008381526002602081815260408084206004810154600182015460038301548451606060020a600160a060020a03938416818102835292841690810260148301528651918290036028018220998d905288885285549590980154918152958601969096526001608060020a039283168585015291909416606084015267ffffffffffffffff60a860020a850416608084015290518796509216929185917f70a14c213064359ede031fd2a1645a11ce2ec825ffe6ab5cfb5b160c3ef4d0a2919081900360a00190a45b5b505050565b610aa561047933600035600160e060020a03191661143a565b611517565b60008054600160a060020a031916600160a060020a03838116919091178083556040519116917f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada491a25b5b50565b60008181526002602052604090206004015460a060020a900460ff165b919050565b6002602081905260009182526040909120805460018201549282015460038301546004909301549193600160a060020a03908116939192918116919081169060a060020a810460ff169060a860020a900467ffffffffffffffff1687565b600154600160a060020a031681565b61052661047982610530565b611517565b5b50565b600054600160a060020a031681565b60065460009060ff1680610bc25750600554610bc0610978565b115b90505b90565b600081815260026020526040902060040154600160a060020a03165b919050565b6040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c081018290528184610c3461047982610af3565b611517565b610c456109b1610ba6565b15611517565b600154610c5c9060a060020a900460ff1615611517565b6001805460a060020a60ff02191660a060020a179055610c866001608060020a0386168614611517565b600086815260026020818152604092839020835160e08101855281548082526001830154600160a060020a039081169483019490945293820154948101859052600382015483166060820152600490910154918216608082015260a060020a820460ff16151560a082015260a860020a90910467ffffffffffffffff1660c0820152945090610d16908790611527565b811561000057049150610d3382836001608060020a031614611517565b8260400151821180610d455750825185115b15610d5357600093506110c3565b826040015182148015610d665750825185145b15610f615760008681526002602081815260408320838155600181018054600160a060020a031990811690915592810193909355600383018054909216909155600490910180547fffffff00000000000000000000000000000000000000000000000000000000001690556080840151908401516060850151610def929188913390879061154d565b6040805187815290516000805160206116d58339815191529181900360200190a133600160a060020a03168360800151600160a060020a0316846020015185606001516040518083600160a060020a0316600160a060020a0316606060020a02815260140182600160a060020a0316600160a060020a0316606060020a028152601401925050506040518091039020600019167f3383e3357c77fd2e3a4b30deea81179bc70a795d053d14d5b7f2f01d0fd4596f896001028760200151886060015189600001518a604001514260405180876000191660001916815260200186600160a060020a0316600160a060020a0316815260200185600160a060020a0316600160a060020a03168152602001846001608060020a03166001608060020a03168152602001836001608060020a03166001608060020a031681526020018267ffffffffffffffff1667ffffffffffffffff168152602001965050505050505060405180910390a4600193506110c3565b600082118015610f715750600085115b156110be578251610f8290866116ac565b6000878152600260205260409081902091909155830151610fa390836116ac565b6002600088815260200190815260200160002060020181905550610fd783608001518685602001513386886060015161154d565b6040805187815290516000805160206116d58339815191529181900360200190a1608080840151602080860180516060808901805160408051606060020a600160a060020a039687168102825292861690920260148301528051918290036028018220955192518f835292851696820196909652908316818601526001608060020a03808d16928201929092529088169581019590955267ffffffffffffffff421660a0860152915133831694939092169290917f3383e3357c77fd2e3a4b30deea81179bc70a795d053d14d5b7f2f01d0fd4596f9181900360c00190a4600193506110c3565b600093505b5b5b5b6001805460a060020a60ff02191690555b5b50505092915050565b6040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c081018290528161112b6109b1610ba6565b15611517565b6001546111429060a060020a900460ff1615611517565b6001805460a060020a60ff02191660a060020a17905561116c6001608060020a0388168814611517565b61118085866001608060020a031614611517565b61118c60008811611517565b6111a0600160a060020a0387161515611517565b6111ac60008611611517565b6111c0600160a060020a0385161515611517565b6111de84600160a060020a031687600160a060020a03161415611517565b868252600160a060020a03808716602084015260408301869052848116606084015233166080830152600160a083015267ffffffffffffffff421660c08301526112266116c5565b60008181526002602081815260408084208751815587830151600182018054600160a060020a0319908116600160a060020a039384161790915589840151958301959095556060890151600383018054871691831691909117905560808901516004928301805460a08c015160c08d0151919098169284169290921760a060020a60ff02191660a060020a97151597909702969096177fffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffff1660a860020a67ffffffffffffffff909216919091021790945581518301859052815160e060020a6323b872dd028152338516918101919091523084166024820152604481018d90529051949750918a16936323b872dd936064808501948390030190829087803b156100005760325a03f115610000575050604051519150611367905081611517565b6040805184815290516000805160206116d58339815191529181900360200190a160408051600160a060020a03888116606060020a81810284528883169081026014850152845160289481900394909401842091845260208401526001608060020a038b811684860152891660608401524267ffffffffffffffff166080840152925133909116929186917f773ff502687307abfa024ac9f62f9752a0d210dac2ffd9a29e38e12e2ea82c829160a0908290030190a45b6001805460a060020a60ff02191690555b5b5050949350505050565b600154600090600160a060020a038481169116141561145b5750600161150f565b600054600160a060020a031615156114755750600061150f565b6000805460408051602090810184905281517fb7009613000000000000000000000000000000000000000000000000000000008152600160a060020a0388811660048301523081166024830152600160e060020a0319881660448301529251929093169363b70096139360648082019492918390030190829087803b156100005760325a03f11561000057505060405151915061150f9050565b5b5b92915050565b80151561052657610000565b5b50565b81810261150f831580610479575082848381156100005704145b611517565b5b92915050565b6040805160006020918201819052825160e060020a6323b872dd028152600160a060020a0387811660048301528a8116602483015260448201879052935191938493908616926323b872dd92606480820193929182900301818787803b156100005760325a03f1156100005750506040515192506115cc905082611517565b85600160a060020a031663a9059cbb86896000604051602001526040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b156100005760325a03f11561000057505060405151915061164e905081611517565b82600160a060020a031686600160a060020a03167fa5ca35f5c7b1c108bbc4c25279f619f720805890f993005d9f00ef1e32663f9b8987604051808381526020018281526020019250505060405180910390a35b5050505050505050565b60006116ba83831115611517565b508082035b92915050565b60038054600101908190555b905600de857d2761836ca6234345c7f7f4c783271ed7d1aedf9268b3fe32800d186fdea165627a7a723058204e5c06ed78b1ac49d24218b0fb808b908d9a106c2df9585fd25e1cc17a8632f600290000000000000000000000000000000000000000000000000000000001e13380

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

-----Decoded View---------------
Found 1 constructor arguments :
Arg [0] : 0000000000000000000000000000000000000000000000000000000001e13380


   Swarm Source:
bzzr://4e5c06ed78b1ac49d24218b0fb808b908d9a106c2df9585fd25e1cc17a8632f6
View All
Block Age txn Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward
Make sure to use the "downvote" button for any spammy posts, and the "upvote" for interesting conversations.