Sponsored:   Temco - Join the Largest VC Backed ICO on the Bitcoin Network! TEMCO KYC Whitelist Starts Now!!
Contract Overview |  EtherDelta_2
Balance: 25,015.108073472676734282 Ether
Ether Value: $2,231,597.79 (@ $89.21/ETH)
Transactions: 10606443 txns
Misc:
Address Watch: Option Not Available
Contract Creator: 0x1ed014aec47fae44c9e55bac7662c0b78ae61798at txn 0xc10fc67499a037b6c2f14ae0c63b659b05bd7b553378202f96e777dd4843130f
Token Balance:
 Latest 25 transactions from a total of 10606443 transactions
(> More Than 25 PendingTxns)

TxHash Age From To Value [TxFee]
0xa8220de17f21410e3f9b54c12672fa460c82e6aa37bf9b8bd603760353727b4d(pending)0x561284468cd93315a82813a518936fab3b4340f1  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0x7c18c5ddfbbdad6c6a5c4c598de0d4e710824134c77aa7f4d9fdb0fa38014431(pending)0xf4118c9252781fdc2da918531d5ba926daa87fdd  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0xac8ec7018d1aa7ba7fd99d364d6eb732c2cfaa444a53fa8c604fc172d3576b2d(pending)0x78b350bf421d2a30224a87c28c8aface55692dc2  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0x6cf65be504381237004ba2f7b0f8b7d30df1fc66d2938715b91af1355f5b3e0a(pending)0x4dd9cbacec253bf0edc22911f6b426f7005b83df  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0x2efcf918c5bd24244e6437b6998d66696c828f6aa849793be62cf5275883d041(pending)0xfa48030f5b42241ff3c3fe284766ab8b77dba08c  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0xe99c4eb44382cebc9d017396386428c436018e075d4b9a7b83f8d1959178c468(pending)0xc45da26c46edb4247a2326a71ea809921cdf3c89  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0xc1fcfcfd3a892b9557a31a1808e0e5d06dd72baeae8e81ae2b5693844af367c7(pending)0xe6be9c4a86ba7ec72f44bd0f419dd1e0c0644b33  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0xfa315b95ea40decadac3977670d9ab848fd4faa2e64ea076eff648f5042dd4be(pending)0x303f4005672d5150825eb923f06e5de141f5890e  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0x284c29b049ffcbe72c3036680aa45044c71252b9070ec753f358e148f4940095(pending)0xf399bb0f31308513a0e6bcccb678faaf9f502da7  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0x4156e984b6e894593dde1bea38ed08d47d41a3a0ea2608f482a66d602a744eb4(pending)0xd18656b4971787a21eaf3583f52b37c1d4677dcd  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0xe67d9a6bb3d5c823cece8306c7fe4dc480f0513bc3981b522f7049b4f30497e6(pending)0x76f71b207bf949697e6f4d2d169a1b07d992fdd1  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0xd3b9b61b0de80c72a0922588039b9c29e36c82331bc61bf0a0f5f5ac35ca9d6e(pending)0x49c6948b24207a0ac3445c6bd808fcbd6a9284ed  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0x4b4cf2f5ed788d78d8c1fce58d6ca7547202157e89b2df4f004473d22be51209(pending)0xf4fddcc814d1553d19e408d224a001543ac55f5a  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0xd3598e31d74c307432e002ef56ed3ec8c113530c0f219042645df77ac44969a7(pending)0x8c677156dc02388e61779d2fe612b4914f52defb  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0x4b53f72a58ae39e1e9e7264720a5a76533d07b124230807a897b7be3aac019dc(pending)0x168307f4fc7935d4893a9a51bc4a456ae490e015  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0xb0ac3e055deff30345563859040ade4d3705e533f6a86ec7dddc7723202d7588(pending)0x5d341c718e5d2ef3382f9f9f047aa93eb586f932  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0xa8a1cfc1b5ce15339049929929b6770e0e30fb156be30904d4b3337138201fda(pending)0x9d04a3b4f4a08d80ca7072e4e3ef57e5eb577375  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0x6b3d3dc9b99be161b71bc24ac634ce41336627232bb9964f3a3d377655f6dfaa(pending)0x077bfef5850539a4a8b550ce2618afe9aa2214e9  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc681910 Ether(Pending)
0x848c905360c4b1158cb96daa863d0630561ec7ce83cdf41710e7ae387be17ac0(pending)0x0576651c613a2e1b66a25aa7fd8f45541e82b745  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0xb6b8cef5dc8431eeeb69f9a3dc5ddbc9583512b0194eeef61dde82c256a64dc5(pending)0xfcc58fb3cf9b227dee5eb99d3014bffca39567e1  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0xa0facac6f59a50615757f5b4528423ffa60700f96fd1777023437cd2f708df0b(pending)0x5d521897799769bd79223c294e79a2c6316c9818  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0x0b250a5e809493a8414c7c15c3c5139c7a00094c9abb7617b6549c9bd102f689(pending)0xb09839837235f38e4560f377f3403ad859611daa  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0x26a3d3eebfcd8a04585f9d5757bef0cad9d9f586d0d6a48ed0b8373c1086713b(pending)0x729074fdcaa282d6bac58666b007d4296088885b  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0xf9563f30c4b90c01b71d04ee879f8896831c777daa39f73e1c822371d8c36b97(pending)0x6c9a6a077329f54da1f3486b0ab3725d1eff958f  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
0x166853e4807ccdd2fccf776d5c7953bddb1e13a3a792783830f05491b6cee31d(pending)0x046c66d649629704fc047ecf98c6c618cc177c11  IN  0x8d12a197cb00d4747a1fe03395095ce2a5cc68190 Ether(Pending)
 Internal Transactions as a result of Contract Execution
 Latest 25 Internal Txns, Click here To View More View All
ParentTxHash Block Age From To Value
0x245e591ee6f55f77dbec1ba3adc0f6fa2bcb9b8666f0609c565f5791e0a8d7c368779341 min ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190x452abe74f7e59f92f92e974afc71cec01d72c1930.05 Ether
0x39afc28fcd7edca6f1352f4b568b3887089e2ea8c0ac33d5dc10ddf920969a0968779321 min ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190x92f5f608873d2aa74ddbdcee98d2bc7e38ba44e50.069853062203257029 Ether
0x52b381b5e3326edc51603edd4ab9cfdb8153e107789a05a0796bd3fb43b35abf68779164 mins ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190x7dd0558e10d8358fa4c4994909f46e234265cc1f13.922569020755733919 Ether
0x7057f0627a8d1513e0b8c6b678b4ba3806b9876feee87bcab98e6f7ce1ef6d2b687785416 mins ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190xe992fe5238f6f57686c22a0628db5c793414aa680.8970940188 Ether
0x12da053aef004ba6fef1e56e5722b6b0b02488ca248ec71651b81cd9e15d2bcc68776801 hr ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190x00bba4e30fe56326a7516e908965c92d0eae0d6f0.2801596052238062 Ether
0xab5d8d45d6218fb4bd68241984dc58e9d2b09904648faf07d02a25cdc753a5f068776801 hr ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190xc3a2cf7681d041df803d13433b09a77b67c144810.65 Ether
0x4aea81318daf4f5b0726ae17c83f9b13030b78414a1bdd851fc0e1831bb3121f68776661 hr 3 mins ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190x62a4f01b232303121f9fd522dc78e13baa75bd743.109 Ether
0x82426b085f13c7984502ed50033600656975aef2edd3b80a0303c6a4afd999cf68776651 hr 4 mins ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190xd11e5832fa6df2fce66c2d31427ad80211bf66bc8.48 Ether
0xbb262125002928f0f76d5995c472db4436b6f26a01eb9b02ba39f3ae345e72ea68775651 hr 31 mins ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190x264da444b71cad1055babf717edfbd2c270694a89.4 Ether
0xe2866b17281e91af1b3565a1c3330c06916038e900a7259f89f1195de3837f8568775581 hr 32 mins ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190x8574689c86e05bb0d3ac997a4bf9eaf46f79fe960.005 Ether
0x3a1c09302ceb66c49b7c207929a97a22baa80d935b759f3fcf160771216a513e68775531 hr 35 mins ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190x8574689c86e05bb0d3ac997a4bf9eaf46f79fe960.101796408711 Ether
0x40dbe46e3ca5f72de1259644b544e74051ac88328ef1ca2d6e43bfc866f6f25968775061 hr 44 mins ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190xc3a2cf7681d041df803d13433b09a77b67c144810.0985 Ether
0x0c94d50adfd9045a9db628fecde2808d8bfa754f2c11a9122ca7a07ec8b9e35168774501 hr 57 mins ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190xe676e5af815ee737dd8c3aa61816ea8bab8cb9bf0.16 Ether
0x5ed6b6850ef7a7df1f75201137c806a8f2cf37132ce12b9c3a8acd27ef69e20368774441 hr 59 mins ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190x2c6ff8b493d5fa55168cd9876fd93698a3ba89763.03887 Ether
0x844a4ae534b11898397265dadf4fa2e2831e2274c2868605c1e2994df66a88d568774262 hrs 3 mins ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190x25a169ee2bd5773b6f870b3867fec63fa898418012.013891157018429742 Ether
0x0874357a77888b6089ebe8360471059c36bd56220f069035d23c33ec23cffe6368774182 hrs 5 mins ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190xb97ce8903b2da70a67ce84379eb6c2a0e6b917200.24 Ether
0xeb3a77846b5180de7c909f639f1d0f060ff22257c17e7f0fc0c61704bb62fdb868773892 hrs 13 mins ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190x92f5f608873d2aa74ddbdcee98d2bc7e38ba44e50.008863922780174143 Ether
0xc678297dd67bd33d5dfb6187e72653a658dbbddaf6a01dea0c03dbecdf2350db68773842 hrs 14 mins ago0xc2a694c5ced27e3d3a5a8bd515a42f2b896650030x8d12a197cb00d4747a1fe03395095ce2a5cc68191.67825987128974676 Ether
0x78c5e7b195dfd353c082b39eb01188ff8e2750a267fc949d8c5dc6b86eb3b7ff68773632 hrs 19 mins ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190xbfe49e7b66ff81211aa5642a4310c95c523a19600.007614 Ether
0x1cb68883cfda5bd2a1969eb3c490e7255835a8ac2943f18ecaca0a21f6b6009f68773622 hrs 20 mins ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190x9f0beb8277c1c15395df280ebf50e623d46f97aa4.383 Ether
0xf91f6a53c2614920a59b56e33af833271591978c4947a6ac7c824be8f8a01e1268773152 hrs 29 mins ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190xb8bea4a946ed1ad90eb85da4217cbcd447b346b49.75 Ether
0xc9c8c91a0ae9feeb16100785df4d2f47c749d8817258f6bf2c571f77027eb22968773022 hrs 31 mins ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190x5c0fbefb21b6a171d6dea6a1b7bc5b7cb8a0dcbd8 Ether
0xa1c3d28f789208a2205df4367bc66223487e9f4ccf42dfbbfcb3f36e139630df68772952 hrs 32 mins ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190xb8bea4a946ed1ad90eb85da4217cbcd447b346b40.15 Ether
0x4173b298210f6d37e3d7048da2523c958f1111fa6a8318df52e467d2b88659ec68772682 hrs 38 mins ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190x33719bbf83e21df8997f72bd372f5b431fb856460.06 Ether
0xd2558a5ef5abaab679de13c7ec6fccdecfe46df28fe18e1215ba834f063c639968772582 hrs 39 mins ago0x8d12a197cb00d4747a1fe03395095ce2a5cc68190xde7c68cc292c000b12b07899ad193312c1dddd8d9.546 Ether
[ Download CSV Export  ] 
Contract Name: EtherDelta
Compiler Text: v0.4.9+commit.364da425
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

pragma solidity ^0.4.9;

contract SafeMath {
  function safeMul(uint a, uint b) internal returns (uint) {
    uint c = a * b;
    assert(a == 0 || c / a == b);
    return c;
  }

  function safeSub(uint a, uint b) internal returns (uint) {
    assert(b <= a);
    return a - b;
  }

  function safeAdd(uint a, uint b) internal returns (uint) {
    uint c = a + b;
    assert(c>=a && c>=b);
    return c;
  }

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

contract Token {
  /// @return total amount of tokens
  function totalSupply() constant returns (uint256 supply) {}

  /// @param _owner The address from which the balance will be retrieved
  /// @return The balance
  function balanceOf(address _owner) constant returns (uint256 balance) {}

  /// @notice send `_value` token to `_to` from `msg.sender`
  /// @param _to The address of the recipient
  /// @param _value The amount of token to be transferred
  /// @return Whether the transfer was successful or not
  function transfer(address _to, uint256 _value) returns (bool success) {}

  /// @notice send `_value` token to `_to` from `_from` on the condition it is approved by `_from`
  /// @param _from The address of the sender
  /// @param _to The address of the recipient
  /// @param _value The amount of token to be transferred
  /// @return Whether the transfer was successful or not
  function transferFrom(address _from, address _to, uint256 _value) returns (bool success) {}

  /// @notice `msg.sender` approves `_addr` to spend `_value` tokens
  /// @param _spender The address of the account able to transfer the tokens
  /// @param _value The amount of wei to be approved for transfer
  /// @return Whether the approval was successful or not
  function approve(address _spender, uint256 _value) returns (bool success) {}

  /// @param _owner The address of the account owning tokens
  /// @param _spender The address of the account able to transfer the tokens
  /// @return Amount of remaining tokens allowed to spent
  function allowance(address _owner, address _spender) constant returns (uint256 remaining) {}

  event Transfer(address indexed _from, address indexed _to, uint256 _value);
  event Approval(address indexed _owner, address indexed _spender, uint256 _value);

  uint public decimals;
  string public name;
}

contract StandardToken is Token {

  function transfer(address _to, uint256 _value) returns (bool success) {
    //Default assumes totalSupply can't be over max (2^256 - 1).
    //If your token leaves out totalSupply and can issue more tokens as time goes on, you need to check if it doesn't wrap.
    //Replace the if with this one instead.
    if (balances[msg.sender] >= _value && balances[_to] + _value > balances[_to]) {
    //if (balances[msg.sender] >= _value && _value > 0) {
      balances[msg.sender] -= _value;
      balances[_to] += _value;
      Transfer(msg.sender, _to, _value);
      return true;
    } else { return false; }
  }

  function transferFrom(address _from, address _to, uint256 _value) returns (bool success) {
    //same as above. Replace this line with the following if you want to protect against wrapping uints.
    if (balances[_from] >= _value && allowed[_from][msg.sender] >= _value && balances[_to] + _value > balances[_to]) {
    //if (balances[_from] >= _value && allowed[_from][msg.sender] >= _value && _value > 0) {
      balances[_to] += _value;
      balances[_from] -= _value;
      allowed[_from][msg.sender] -= _value;
      Transfer(_from, _to, _value);
      return true;
    } else { return false; }
  }

  function balanceOf(address _owner) constant returns (uint256 balance) {
    return balances[_owner];
  }

  function approve(address _spender, uint256 _value) returns (bool success) {
    allowed[msg.sender][_spender] = _value;
    Approval(msg.sender, _spender, _value);
    return true;
  }

  function allowance(address _owner, address _spender) constant returns (uint256 remaining) {
    return allowed[_owner][_spender];
  }

  mapping(address => uint256) balances;

  mapping (address => mapping (address => uint256)) allowed;

  uint256 public totalSupply;
}

contract ReserveToken is StandardToken, SafeMath {
  address public minter;
  function ReserveToken() {
    minter = msg.sender;
  }
  function create(address account, uint amount) {
    if (msg.sender != minter) throw;
    balances[account] = safeAdd(balances[account], amount);
    totalSupply = safeAdd(totalSupply, amount);
  }
  function destroy(address account, uint amount) {
    if (msg.sender != minter) throw;
    if (balances[account] < amount) throw;
    balances[account] = safeSub(balances[account], amount);
    totalSupply = safeSub(totalSupply, amount);
  }
}

contract AccountLevels {
  //given a user, returns an account level
  //0 = regular user (pays take fee and make fee)
  //1 = market maker silver (pays take fee, no make fee, gets rebate)
  //2 = market maker gold (pays take fee, no make fee, gets entire counterparty's take fee as rebate)
  function accountLevel(address user) constant returns(uint) {}
}

contract AccountLevelsTest is AccountLevels {
  mapping (address => uint) public accountLevels;

  function setAccountLevel(address user, uint level) {
    accountLevels[user] = level;
  }

  function accountLevel(address user) constant returns(uint) {
    return accountLevels[user];
  }
}

contract EtherDelta is SafeMath {
  address public admin; //the admin address
  address public feeAccount; //the account that will receive fees
  address public accountLevelsAddr; //the address of the AccountLevels contract
  uint public feeMake; //percentage times (1 ether)
  uint public feeTake; //percentage times (1 ether)
  uint public feeRebate; //percentage times (1 ether)
  mapping (address => mapping (address => uint)) public tokens; //mapping of token addresses to mapping of account balances (token=0 means Ether)
  mapping (address => mapping (bytes32 => bool)) public orders; //mapping of user accounts to mapping of order hashes to booleans (true = submitted by user, equivalent to offchain signature)
  mapping (address => mapping (bytes32 => uint)) public orderFills; //mapping of user accounts to mapping of order hashes to uints (amount of order that has been filled)

  event Order(address tokenGet, uint amountGet, address tokenGive, uint amountGive, uint expires, uint nonce, address user);
  event Cancel(address tokenGet, uint amountGet, address tokenGive, uint amountGive, uint expires, uint nonce, address user, uint8 v, bytes32 r, bytes32 s);
  event Trade(address tokenGet, uint amountGet, address tokenGive, uint amountGive, address get, address give);
  event Deposit(address token, address user, uint amount, uint balance);
  event Withdraw(address token, address user, uint amount, uint balance);

  function EtherDelta(address admin_, address feeAccount_, address accountLevelsAddr_, uint feeMake_, uint feeTake_, uint feeRebate_) {
    admin = admin_;
    feeAccount = feeAccount_;
    accountLevelsAddr = accountLevelsAddr_;
    feeMake = feeMake_;
    feeTake = feeTake_;
    feeRebate = feeRebate_;
  }

  function() {
    throw;
  }

  function changeAdmin(address admin_) {
    if (msg.sender != admin) throw;
    admin = admin_;
  }

  function changeAccountLevelsAddr(address accountLevelsAddr_) {
    if (msg.sender != admin) throw;
    accountLevelsAddr = accountLevelsAddr_;
  }

  function changeFeeAccount(address feeAccount_) {
    if (msg.sender != admin) throw;
    feeAccount = feeAccount_;
  }

  function changeFeeMake(uint feeMake_) {
    if (msg.sender != admin) throw;
    if (feeMake_ > feeMake) throw;
    feeMake = feeMake_;
  }

  function changeFeeTake(uint feeTake_) {
    if (msg.sender != admin) throw;
    if (feeTake_ > feeTake || feeTake_ < feeRebate) throw;
    feeTake = feeTake_;
  }

  function changeFeeRebate(uint feeRebate_) {
    if (msg.sender != admin) throw;
    if (feeRebate_ < feeRebate || feeRebate_ > feeTake) throw;
    feeRebate = feeRebate_;
  }

  function deposit() payable {
    tokens[0][msg.sender] = safeAdd(tokens[0][msg.sender], msg.value);
    Deposit(0, msg.sender, msg.value, tokens[0][msg.sender]);
  }

  function withdraw(uint amount) {
    if (tokens[0][msg.sender] < amount) throw;
    tokens[0][msg.sender] = safeSub(tokens[0][msg.sender], amount);
    if (!msg.sender.call.value(amount)()) throw;
    Withdraw(0, msg.sender, amount, tokens[0][msg.sender]);
  }

  function depositToken(address token, uint amount) {
    //remember to call Token(address).approve(this, amount) or this contract will not be able to do the transfer on your behalf.
    if (token==0) throw;
    if (!Token(token).transferFrom(msg.sender, this, amount)) throw;
    tokens[token][msg.sender] = safeAdd(tokens[token][msg.sender], amount);
    Deposit(token, msg.sender, amount, tokens[token][msg.sender]);
  }

  function withdrawToken(address token, uint amount) {
    if (token==0) throw;
    if (tokens[token][msg.sender] < amount) throw;
    tokens[token][msg.sender] = safeSub(tokens[token][msg.sender], amount);
    if (!Token(token).transfer(msg.sender, amount)) throw;
    Withdraw(token, msg.sender, amount, tokens[token][msg.sender]);
  }

  function balanceOf(address token, address user) constant returns (uint) {
    return tokens[token][user];
  }

  function order(address tokenGet, uint amountGet, address tokenGive, uint amountGive, uint expires, uint nonce) {
    bytes32 hash = sha256(this, tokenGet, amountGet, tokenGive, amountGive, expires, nonce);
    orders[msg.sender][hash] = true;
    Order(tokenGet, amountGet, tokenGive, amountGive, expires, nonce, msg.sender);
  }

  function trade(address tokenGet, uint amountGet, address tokenGive, uint amountGive, uint expires, uint nonce, address user, uint8 v, bytes32 r, bytes32 s, uint amount) {
    //amount is in amountGet terms
    bytes32 hash = sha256(this, tokenGet, amountGet, tokenGive, amountGive, expires, nonce);
    if (!(
      (orders[user][hash] || ecrecover(sha3("\x19Ethereum Signed Message:\n32", hash),v,r,s) == user) &&
      block.number <= expires &&
      safeAdd(orderFills[user][hash], amount) <= amountGet
    )) throw;
    tradeBalances(tokenGet, amountGet, tokenGive, amountGive, user, amount);
    orderFills[user][hash] = safeAdd(orderFills[user][hash], amount);
    Trade(tokenGet, amount, tokenGive, amountGive * amount / amountGet, user, msg.sender);
  }

  function tradeBalances(address tokenGet, uint amountGet, address tokenGive, uint amountGive, address user, uint amount) private {
    uint feeMakeXfer = safeMul(amount, feeMake) / (1 ether);
    uint feeTakeXfer = safeMul(amount, feeTake) / (1 ether);
    uint feeRebateXfer = 0;
    if (accountLevelsAddr != 0x0) {
      uint accountLevel = AccountLevels(accountLevelsAddr).accountLevel(user);
      if (accountLevel==1) feeRebateXfer = safeMul(amount, feeRebate) / (1 ether);
      if (accountLevel==2) feeRebateXfer = feeTakeXfer;
    }
    tokens[tokenGet][msg.sender] = safeSub(tokens[tokenGet][msg.sender], safeAdd(amount, feeTakeXfer));
    tokens[tokenGet][user] = safeAdd(tokens[tokenGet][user], safeSub(safeAdd(amount, feeRebateXfer), feeMakeXfer));
    tokens[tokenGet][feeAccount] = safeAdd(tokens[tokenGet][feeAccount], safeSub(safeAdd(feeMakeXfer, feeTakeXfer), feeRebateXfer));
    tokens[tokenGive][user] = safeSub(tokens[tokenGive][user], safeMul(amountGive, amount) / amountGet);
    tokens[tokenGive][msg.sender] = safeAdd(tokens[tokenGive][msg.sender], safeMul(amountGive, amount) / amountGet);
  }

  function testTrade(address tokenGet, uint amountGet, address tokenGive, uint amountGive, uint expires, uint nonce, address user, uint8 v, bytes32 r, bytes32 s, uint amount, address sender) constant returns(bool) {
    if (!(
      tokens[tokenGet][sender] >= amount &&
      availableVolume(tokenGet, amountGet, tokenGive, amountGive, expires, nonce, user, v, r, s) >= amount
    )) return false;
    return true;
  }

  function availableVolume(address tokenGet, uint amountGet, address tokenGive, uint amountGive, uint expires, uint nonce, address user, uint8 v, bytes32 r, bytes32 s) constant returns(uint) {
    bytes32 hash = sha256(this, tokenGet, amountGet, tokenGive, amountGive, expires, nonce);
    if (!(
      (orders[user][hash] || ecrecover(sha3("\x19Ethereum Signed Message:\n32", hash),v,r,s) == user) &&
      block.number <= expires
    )) return 0;
    uint available1 = safeSub(amountGet, orderFills[user][hash]);
    uint available2 = safeMul(tokens[tokenGive][user], amountGet) / amountGive;
    if (available1<available2) return available1;
    return available2;
  }

  function amountFilled(address tokenGet, uint amountGet, address tokenGive, uint amountGive, uint expires, uint nonce, address user, uint8 v, bytes32 r, bytes32 s) constant returns(uint) {
    bytes32 hash = sha256(this, tokenGet, amountGet, tokenGive, amountGive, expires, nonce);
    return orderFills[user][hash];
  }

  function cancelOrder(address tokenGet, uint amountGet, address tokenGive, uint amountGive, uint expires, uint nonce, uint8 v, bytes32 r, bytes32 s) {
    bytes32 hash = sha256(this, tokenGet, amountGet, tokenGive, amountGive, expires, nonce);
    if (!(orders[msg.sender][hash] || ecrecover(sha3("\x19Ethereum Signed Message:\n32", hash),v,r,s) == msg.sender)) throw;
    orderFills[msg.sender][hash] = amountGet;
    Cancel(tokenGet, amountGet, tokenGive, amountGive, expires, nonce, msg.sender, v, r, s);
  }
}

    Contract ABI  
[{"constant":false,"inputs":[{"name":"tokenGet","type":"address"},{"name":"amountGet","type":"uint256"},{"name":"tokenGive","type":"address"},{"name":"amountGive","type":"uint256"},{"name":"expires","type":"uint256"},{"name":"nonce","type":"uint256"},{"name":"user","type":"address"},{"name":"v","type":"uint8"},{"name":"r","type":"bytes32"},{"name":"s","type":"bytes32"},{"name":"amount","type":"uint256"}],"name":"trade","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"tokenGet","type":"address"},{"name":"amountGet","type":"uint256"},{"name":"tokenGive","type":"address"},{"name":"amountGive","type":"uint256"},{"name":"expires","type":"uint256"},{"name":"nonce","type":"uint256"}],"name":"order","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"bytes32"}],"name":"orderFills","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"tokenGet","type":"address"},{"name":"amountGet","type":"uint256"},{"name":"tokenGive","type":"address"},{"name":"amountGive","type":"uint256"},{"name":"expires","type":"uint256"},{"name":"nonce","type":"uint256"},{"name":"v","type":"uint8"},{"name":"r","type":"bytes32"},{"name":"s","type":"bytes32"}],"name":"cancelOrder","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"depositToken","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"tokenGet","type":"address"},{"name":"amountGet","type":"uint256"},{"name":"tokenGive","type":"address"},{"name":"amountGive","type":"uint256"},{"name":"expires","type":"uint256"},{"name":"nonce","type":"uint256"},{"name":"user","type":"address"},{"name":"v","type":"uint8"},{"name":"r","type":"bytes32"},{"name":"s","type":"bytes32"}],"name":"amountFilled","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"tokens","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"feeMake_","type":"uint256"}],"name":"changeFeeMake","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"feeMake","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"feeRebate_","type":"uint256"}],"name":"changeFeeRebate","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"feeAccount","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"tokenGet","type":"address"},{"name":"amountGet","type":"uint256"},{"name":"tokenGive","type":"address"},{"name":"amountGive","type":"uint256"},{"name":"expires","type":"uint256"},{"name":"nonce","type":"uint256"},{"name":"user","type":"address"},{"name":"v","type":"uint8"},{"name":"r","type":"bytes32"},{"name":"s","type":"bytes32"},{"name":"amount","type":"uint256"},{"name":"sender","type":"address"}],"name":"testTrade","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"feeAccount_","type":"address"}],"name":"changeFeeAccount","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"feeRebate","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"feeTake_","type":"uint256"}],"name":"changeFeeTake","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"admin_","type":"address"}],"name":"changeAdmin","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"withdrawToken","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"bytes32"}],"name":"orders","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"feeTake","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"deposit","outputs":[],"payable":true,"type":"function"},{"constant":false,"inputs":[{"name":"accountLevelsAddr_","type":"address"}],"name":"changeAccountLevelsAddr","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"accountLevelsAddr","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"},{"name":"user","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"admin","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"tokenGet","type":"address"},{"name":"amountGet","type":"uint256"},{"name":"tokenGive","type":"address"},{"name":"amountGive","type":"uint256"},{"name":"expires","type":"uint256"},{"name":"nonce","type":"uint256"},{"name":"user","type":"address"},{"name":"v","type":"uint8"},{"name":"r","type":"bytes32"},{"name":"s","type":"bytes32"}],"name":"availableVolume","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"inputs":[{"name":"admin_","type":"address"},{"name":"feeAccount_","type":"address"},{"name":"accountLevelsAddr_","type":"address"},{"name":"feeMake_","type":"uint256"},{"name":"feeTake_","type":"uint256"},{"name":"feeRebate_","type":"uint256"}],"payable":false,"type":"constructor"},{"payable":false,"type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenGet","type":"address"},{"indexed":false,"name":"amountGet","type":"uint256"},{"indexed":false,"name":"tokenGive","type":"address"},{"indexed":false,"name":"amountGive","type":"uint256"},{"indexed":false,"name":"expires","type":"uint256"},{"indexed":false,"name":"nonce","type":"uint256"},{"indexed":false,"name":"user","type":"address"}],"name":"Order","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenGet","type":"address"},{"indexed":false,"name":"amountGet","type":"uint256"},{"indexed":false,"name":"tokenGive","type":"address"},{"indexed":false,"name":"amountGive","type":"uint256"},{"indexed":false,"name":"expires","type":"uint256"},{"indexed":false,"name":"nonce","type":"uint256"},{"indexed":false,"name":"user","type":"address"},{"indexed":false,"name":"v","type":"uint8"},{"indexed":false,"name":"r","type":"bytes32"},{"indexed":false,"name":"s","type":"bytes32"}],"name":"Cancel","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenGet","type":"address"},{"indexed":false,"name":"amountGet","type":"uint256"},{"indexed":false,"name":"tokenGive","type":"address"},{"indexed":false,"name":"amountGive","type":"uint256"},{"indexed":false,"name":"get","type":"address"},{"indexed":false,"name":"give","type":"address"}],"name":"Trade","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"token","type":"address"},{"indexed":false,"name":"user","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"balance","type":"uint256"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"token","type":"address"},{"indexed":false,"name":"user","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"balance","type":"uint256"}],"name":"Withdraw","type":"event"}]

  Contract Creation Code Switch To Opcodes View
6060604052341561000c57fe5b60405160c080611a7983398101604090815281516020830151918301516060840151608085015160a090950151929491929091905b60008054600160a060020a03808916600160a060020a0319928316179092556001805488841690831617905560028054928716929091169190911790556003839055600482905560058190555b5050505050505b6119d5806100a46000396000f300606060405236156101385763ffffffff60e060020a6000350416630a19b14a811461014d5780630b9276661461019957806319774d43146101ca578063278b8c0e146101fb5780632e1a7d4d14610239578063338b5dea1461024e57806346be96c31461026f578063508493bc146102c757806354d03b5c146102fb57806357786394146103105780635e1d7ae41461033257806365e17c9d146103475780636c86888b1461037357806371ffcb16146103dc578063731c2f81146103fa5780638823a9c01461041c5780638f283970146104315780639e281a981461044f578063bb5f462914610470578063c281309e146104a3578063d0e30db0146104c5578063e8f6bc2e146104cf578063f3412942146104ed578063f7888aec14610519578063f851a4401461054d578063fb6e155f14610579575b341561014057fe5b61014b5b610000565b565b005b341561015557fe5b61014b600160a060020a0360043581169060243590604435811690606435906084359060a4359060c4351660ff60e435166101043561012435610144356105d1565b005b34156101a157fe5b61014b600160a060020a03600435811690602435906044351660643560843560a435610896565b005b34156101d257fe5b6101e9600160a060020a03600435166024356109a7565b60408051918252519081900360200190f35b341561020357fe5b61014b600160a060020a03600435811690602435906044351660643560843560a43560ff60c4351660e435610104356109c4565b005b341561024157fe5b61014b600435610bd4565b005b341561025657fe5b61014b600160a060020a0360043516602435610cf2565b005b341561027757fe5b6101e9600160a060020a0360043581169060243590604435811690606435906084359060a4359060c4351660ff60e435166101043561012435610e46565b60408051918252519081900360200190f35b34156102cf57fe5b6101e9600160a060020a0360043581169060243516610f33565b60408051918252519081900360200190f35b341561030357fe5b61014b600435610f50565b005b341561031857fe5b6101e9610f83565b60408051918252519081900360200190f35b341561033a57fe5b61014b600435610f89565b005b341561034f57fe5b610357610fc8565b60408051600160a060020a039092168252519081900360200190f35b341561037b57fe5b6103c8600160a060020a0360043581169060243590604435811690606435906084359060a4359060c43581169060ff60e43516906101043590610124359061014435906101643516610fd7565b604080519115158252519081900360200190f35b34156103e457fe5b61014b600160a060020a0360043516611042565b005b341561040257fe5b6101e961107c565b60408051918252519081900360200190f35b341561042457fe5b61014b600435611082565b005b341561043957fe5b61014b600160a060020a03600435166110c1565b005b341561045757fe5b61014b600160a060020a03600435166024356110fb565b005b341561047857fe5b6103c8600160a060020a0360043516602435611299565b604080519115158252519081900360200190f35b34156104ab57fe5b6101e96112b9565b60408051918252519081900360200190f35b61014b6112bf565b005b34156104d757fe5b61014b600160a060020a0360043516611361565b005b34156104f557fe5b61035761139b565b60408051600160a060020a039092168252519081900360200190f35b341561052157fe5b6101e9600160a060020a03600435811690602435166113aa565b60408051918252519081900360200190f35b341561055557fe5b6103576113d7565b60408051600160a060020a039092168252519081900360200190f35b341561058157fe5b6101e9600160a060020a0360043581169060243590604435811690606435906084359060a4359060c4351660ff60e4351661010435610124356113e6565b60408051918252519081900360200190f35b60006002308d8d8d8d8d8d6000604051602001526040518088600160a060020a0316600160a060020a0316606060020a02815260140187600160a060020a0316600160a060020a0316606060020a02815260140186815260200185600160a060020a0316600160a060020a0316606060020a0281526014018481526020018381526020018281526020019750505050505050506020604051808303816000866161da5a03f1151561067e57fe5b50506040805151600160a060020a0388166000908152600760209081528382208383529052919091205490915060ff16806107625750604080517f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c8101839052815190819003603c018120600082815260208381018552928401819052835191825260ff891682840152818401889052606082018790529251600160a060020a038a16936001936080808501949193601f198101939281900390910191866161da5a03f1151561074e57fe5b505060206040510351600160a060020a0316145b801561076e5750874311155b80156107a85750600160a060020a03861660009081526008602090815260408083208484529091529020548b906107a5908461162d565b11155b15156107b357610000565b6107c18c8c8c8c8a87611655565b600160a060020a03861660009081526008602090815260408083208484529091529020546107ef908361162d565b600160a060020a03871660009081526008602090815260408083208584529091529020557f6effdda786735d5033bfad5f53e5131abcced9e52be6c507b62d639685fbed6d8c838c8e8d830281151561084457fe5b60408051600160a060020a039687168152602081019590955292851684840152046060830152828a166080830152339290921660a082015290519081900360c00190a15b505050505050505050505050565b60408051600060209182018190528251606060020a600160a060020a0330811682028352808c1682026014840152602883018b90528916026048820152605c8101879052607c8101869052609c81018590529251909260029260bc808301939192829003018186866161da5a03f1151561090c57fe5b5050604080518051600160a060020a03338116600081815260076020908152868220858352815290869020805460ff191660011790558c8316855284018b905290891683850152606083018890526080830187905260a0830186905260c083015291519192507f3f7f2eda73683c21a15f9435af1028c93185b5f1fa38270762dc32be606b3e85919081900360e00190a15b50505050505050565b600860209081526000928352604080842090915290825290205481565b60408051600060209182018190528251606060020a600160a060020a0330811682028352808f1682026014840152602883018e90528c16026048820152605c81018a9052607c8101899052609c81018890529251909260029260bc808301939192829003018186866161da5a03f11515610a3a57fe5b50506040805151600160a060020a0333166000908152600760209081528382208383529052919091205490915060ff1680610b1e5750604080517f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c8101839052815190819003603c018120600082815260208381018552928401819052835191825260ff881682840152818401879052606082018690529251600160a060020a033316936001936080808501949193601f198101939281900390910191866161da5a03f11515610b0a57fe5b505060206040510351600160a060020a0316145b1515610b2957610000565b600160a060020a0333811660008181526008602090815260408083208684528252918290208d905581518e851681529081018d9052928b1683820152606083018a90526080830189905260a0830188905260c083019190915260ff861660e083015261010082018590526101208201849052517f1e0b760c386003e9cb9bcf4fcf3997886042859d9b6ed6320e804597fcdb28b0918190036101400190a15b50505050505050505050565b33600160a060020a0316600090815260008051602061198a833981519152602052604090205481901015610c0757610000565b33600160a060020a0316600090815260008051602061198a8339815191526020526040902054610c379082611931565b33600160a060020a0316600081815260008051602061198a8339815191526020526040808220939093559151909183919081818185876185025a03f1925050501515610c8257610000565b600160a060020a033316600081815260008051602061198a8339815191526020908152604080832054815193845291830193909352818301849052606082015290517ff341246adaac6f497bc2a656f546ab9e182111d630394f0c57c710a59a2cb5679181900360800190a15b50565b600160a060020a0382161515610d0757610000565b604080516000602091820181905282517f23b872dd000000000000000000000000000000000000000000000000000000008152600160a060020a0333811660048301523081166024830152604482018690529351938616936323b872dd9360648084019491938390030190829087803b1515610d7f57fe5b60325a03f11515610d8c57fe5b50506040515115159050610d9f57610000565b600160a060020a0380831660009081526006602090815260408083203390941683529290522054610dd0908261162d565b600160a060020a038381166000818152600660209081526040808320339095168084529482529182902085905581519283528201929092528082018490526060810192909252517fdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d79181900360800190a15b5050565b600060006002308d8d8d8d8d8d6000604051602001526040518088600160a060020a0316600160a060020a0316606060020a02815260140187600160a060020a0316600160a060020a0316606060020a02815260140186815260200185600160a060020a0316600160a060020a0316606060020a0281526014018481526020018381526020018281526020019750505050505050506020604051808303816000866161da5a03f11515610ef557fe5b50506040805151600160a060020a03881660009081526008602090815283822083835290529190912054925090505b509a9950505050505050505050565b600660209081526000928352604080842090915290825290205481565b60005433600160a060020a03908116911614610f6b57610000565b600354811115610f7a57610000565b60038190555b50565b60035481565b60005433600160a060020a03908116911614610fa457610000565b600554811080610fb5575060045481115b15610fbf57610000565b60058190555b50565b600154600160a060020a031681565b600160a060020a03808d16600090815260066020908152604080832093851683529290529081205483901080159061102057508261101d8e8e8e8e8e8e8e8e8e8e6113e6565b10155b151561102e57506000611032565b5060015b9c9b505050505050505050505050565b60005433600160a060020a0390811691161461105d57610000565b60018054600160a060020a031916600160a060020a0383161790555b50565b60055481565b60005433600160a060020a0390811691161461109d57610000565b6004548111806110ae575060055481105b156110b857610000565b60048190555b50565b60005433600160a060020a039081169116146110dc57610000565b60008054600160a060020a031916600160a060020a0383161790555b50565b600160a060020a038216151561111057610000565b600160a060020a03808316600090815260066020908152604080832033909416835292905220548190101561114457610000565b600160a060020a03808316600090815260066020908152604080832033909416835292905220546111759082611931565b600160a060020a03808416600081815260066020908152604080832033909516808452948252808320959095558451810182905284517fa9059cbb0000000000000000000000000000000000000000000000000000000081526004810194909452602484018690529351919363a9059cbb936044808201949293918390030190829087803b151561120257fe5b60325a03f1151561120f57fe5b5050604051511515905061122257610000565b600160a060020a03808316600081815260066020908152604080832033959095168084529482529182902054825193845290830193909352818101849052606082019290925290517ff341246adaac6f497bc2a656f546ab9e182111d630394f0c57c710a59a2cb5679181900360800190a15b5050565b600760209081526000928352604080842090915290825290205460ff1681565b60045481565b33600160a060020a0316600090815260008051602061198a83398151915260205260409020546112ef903461162d565b33600160a060020a0316600081815260008051602061198a8339815191526020908152604080832085905580519283529082019290925234818301526060810192909252517fdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d79181900360800190a15b565b60005433600160a060020a0390811691161461137c57610000565b60028054600160a060020a031916600160a060020a0383161790555b50565b600254600160a060020a031681565b600160a060020a038083166000908152600660209081526040808320938516835292905220545b92915050565b600054600160a060020a031681565b60006000600060006002308f8f8f8f8f8f6000604051602001526040518088600160a060020a0316600160a060020a0316606060020a02815260140187600160a060020a0316600160a060020a0316606060020a02815260140186815260200185600160a060020a0316600160a060020a0316606060020a0281526014018481526020018381526020018281526020019750505050505050506020604051808303816000866161da5a03f1151561149957fe5b50506040805151600160a060020a038a166000908152600760209081528382208383529052919091205490935060ff168061157d5750604080517f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c8101859052815190819003603c018120600082815260208381018552928401819052835191825260ff8b16828401528184018a9052606082018990529251600160a060020a038c16936001936080808501949193601f198101939281900390910191866161da5a03f1151561156957fe5b505060206040510351600160a060020a0316145b80156115895750894311155b1515611598576000935061161c565b600160a060020a03881660009081526008602090815260408083208684529091529020546115c7908e90611931565b600160a060020a03808e166000908152600660209081526040808320938d16835292905220549092508b906115fc908f61194a565b81151561160557fe5b049050808210156116185781935061161c565b8093505b5050509a9950505050505050505050565b600082820161164a8482108015906116455750838210155b611979565b8091505b5092915050565b6000600060006000670de0b6b3a76400006116728660035461194a565b81151561167b57fe5b049350670de0b6b3a76400006116938660045461194a565b81151561169c57fe5b600254919004935060009250600160a060020a03161561177257600254604080516000602091820181905282517f1cbd0519000000000000000000000000000000000000000000000000000000008152600160a060020a038b8116600483015293519390941693631cbd0519936024808301949391928390030190829087803b151561172457fe5b60325a03f1151561173157fe5b505060405151915050600181141561176557670de0b6b3a76400006117588660055461194a565b81151561176157fe5b0491505b8060021415611772578291505b5b600160a060020a03808b16600090815260066020908152604080832033909416835292905220546117ad906117a8878661162d565b611931565b600160a060020a038b81166000908152600660209081526040808320338516845290915280822093909355908816815220546117fb906117f66117f0888661162d565b87611931565b61162d565b600160a060020a038b811660009081526006602090815260408083208b85168452909152808220939093556001549091168152205461184c906117f6611841878761162d565b85611931565b61162d565b600160a060020a03808c166000908152600660208181526040808420600154861685528252808420959095558c84168352908152838220928a1682529190915220546118ac908a61189d8a8961194a565b8115156118a657fe5b04611931565b600160a060020a0389811660009081526006602090815260408083208b851684529091528082209390935533909116815220546118fd908a6118ee8a8961194a565b8115156118f757fe5b0461162d565b600160a060020a03808a16600090815260066020908152604080832033909416835292905220555b50505050505050505050565b600061193f83831115611979565b508082035b92915050565b600082820261164a841580611645575083858381151561196657fe5b04145b611979565b8091505b5092915050565b801515610cef57610000565b5b50560054cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8a165627a7a723058201f5c6afd64915184f48f2f470649fb4e2cba0d79c31de45410dc1c0b6fc0a62f0029

    Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000001ed014aec47fae44c9e55bac7662c0b78ae617980000000000000000000000001ed014aec47fae44c9e55bac7662c0b78ae6179800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000aa87bee5380000000000000000000000000000000000000000000000000000000000000000000

-----Encoded View---------------
6 Constructor Arguments found :
Arg [0] : 0000000000000000000000001ed014aec47fae44c9e55bac7662c0b78ae61798
Arg [1] : 0000000000000000000000001ed014aec47fae44c9e55bac7662c0b78ae61798
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [4] : 000000000000000000000000000000000000000000000000000aa87bee538000
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000000


   Swarm Source:
bzzr://468be9e52c7f41ff50afc583b7c02aff6937a69ed155212dd15604aa874fef0a

 

View All
Block Age transaction Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.