Sponsored:   [Largest VC Funded] TEMCO, millions sold out in seconds. Join TEMCO's last presale at CoinBene!
Contract Overview |  IDEX_1
Balance: 54,458.523716084305041256 Ether
Ether Value: $4,748,783.27 (@ $87.20/ETH)
Transactions: 5448907 txns
Misc:
Address Watch: Option Not Available
Contract Creator: 0x33daedabab9085bd1a94460a652e7ffff592dfe3at txn 0x24b99bebf8a908be3d09bb8101446350cc7d1bea467b5242352c9c53e85c5283
Token Balance:
 Latest 25 transactions from a total of 5448907 transactions
(> More Than 25 PendingTxns)

TxHash Age From To Value [TxFee]
0x03c2b7f06a6b15641f65c9c0b84b294e4aa57ed20945c6c5565846bdbcf15633(pending)0xa7a7899d944fe658c4b0a1803bab2f490bd3849e  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080 Ether(Pending)
0x7d1c208622fb663d5e55ead253c1a9bbc3a8ad2877f16799359b1770d04342e5(pending)0xa7a7899d944fe658c4b0a1803bab2f490bd3849e  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080 Ether(Pending)
0xe125ccc2825236c521bd548b843597803d1f1982bd49ab17324c78d139023f80(pending)0xa7a7899d944fe658c4b0a1803bab2f490bd3849e  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080 Ether(Pending)
0xd36bb0ccc43dd03c2b160639722abb49f381c8b225f43162399bd3eca740cec0(pending)0xa7a7899d944fe658c4b0a1803bab2f490bd3849e  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080 Ether(Pending)
0x6e010b168085cc5c39b30c4ea51a4c5da58a2e7e5269f76328db6f129ede498d(pending)0xa7a7899d944fe658c4b0a1803bab2f490bd3849e  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080 Ether(Pending)
0x0064719099048fc73ffdb0f55d214c6ac106e161462afa6e6469c4bec8f6012b(pending)0xa7a7899d944fe658c4b0a1803bab2f490bd3849e  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080 Ether(Pending)
0x0f6fc35b108a485646b81163f598c22f77a87fdd0d44b674b30b503f635bade0(pending)0xa7a7899d944fe658c4b0a1803bab2f490bd3849e  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080 Ether(Pending)
0x44e10b7a655168054b881f68b3f17174e20a64278753ad772fe7d305a76d0cd7(pending)0xa7a7899d944fe658c4b0a1803bab2f490bd3849e  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080 Ether(Pending)
0x8e126be6292c0fc76907565eface33037103595d0d7bd7de9c40c2ad42acff06(pending)0xa7a7899d944fe658c4b0a1803bab2f490bd3849e  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080 Ether(Pending)
0x0a26bd0b237a651cc986a4c2c84101c74d6ff8e543374aadf7d51fc813455b4c(pending)0xa7a7899d944fe658c4b0a1803bab2f490bd3849e  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080 Ether(Pending)
0x3750dc1687c42575c1fd5c25c7713dc58f6cf35e1611dce2e5e4d5d83c8e3a4c(pending)0x7876112708fa1c4eab2a34b3a73278eda3e817e0  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080.050247422571306896 Ether(Pending)
0x960668bdb00b11c65c32b0cd55393541e31e214a78dbb4b9a0b2de17081949f5(pending)0x8dcd8659fe72082ba0b5db1c2a47a23562e29470  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080.01380825 Ether(Pending)
0x7847f189cfe7fcfccfa157d8e45891f28637128754fe17177bf01045db256361(pending)0xcab2a313e1b494e0823de723abf13c91a3f73229  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080.002 Ether(Pending)
0xbfa94d01dcd779f253ccb60ef1f423893a22ef19df405266199984e8c8b00637(pending)0x3674ca6f2719e620048b55f59610913dfc195554  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080 Ether(Pending)
0x6c9c73b609ce08ff711f40d888c30346ab0962f59ebf185971515669699b119b(pending)0xc4fd572de52a623fb63aa887c15be12b0397146c  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080 Ether(Pending)
0x12fc246aa9c6fe662755efced5e3cd19100b3ca50fe72c3d1e857347b95422e2(pending)0xf0020d612618764781ac884948dd0e5dbe288f37  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080.489 Ether(Pending)
0xdf8f7fc4ef0755760798cdeee625fe0dbef6937e121a4a3b405cc0a5136c9ba5(pending)0x37742ae99147697e5f329ad7d5baabca9af42fd2  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080.005131875 Ether(Pending)
0xeacc79b6f1601094bc529d7e791b1a191e8f4353273bd05008b4e31e3e96fd2d(pending)0xacd855382358501585bb0192c59c7e616b161c87  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080 Ether(Pending)
0xe69be14e6f6e3f4cb934bf7d7f21a4c1bc1630c70fa2de52244c6a437b83f2f5(pending)0x6b4617a059facc2f5c56b6c021e5e32f2ffa3c13  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080 Ether(Pending)
0xd116ea087f5659b5ad761352c526ead6d20188b0578eefb4402d1215fdc5f12d(pending)0x167f897440cfd5227f22349779841f83ddda126a  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080 Ether(Pending)
0x13460c81d75684e31ba41fb6bf36ebf102d2eb9ede8b405fc9d44c235bec97c2(pending)0xae3be00da0b273541021765484bc654df7b715c2  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080 Ether(Pending)
0xe2567e918f36e9c8656f8b8bb93d7662bf7f01cef621c5a5d4712b419bd9f8c9(pending)0xbab1062a7f23b8868e3164a41cded432935004f2  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080 Ether(Pending)
0xf53b5626f18469f01d96787970a01b0d168aa5def063f263b4062986c1f1abd1(pending)0x59ac817bd958a71006435f6ac7fc2f0f13e26ead  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080 Ether(Pending)
0x3c077b5da10d6d213eefecad9a147fd2185cf0e36f2c208b1056612460474184(pending)0x79de6864be1dafea9f2565a4f410a35805189b74  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080.000275506 Ether(Pending)
0x4f6f1f82c2428e5e463fea9bf119c110bd9428726254d6a03d56aea9075d50e4(pending)0xd38e5c67423bd0173be5e95be8e211df6656435b  IN  0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080 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
0xf80fe4fb3d95081aab4ac97778f83d18a012fce1710c17a4b8258ce7a061ac1568957075 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080x8574689c86e05bb0d3ac997a4bf9eaf46f79fe960.045868400064053242 Ether
0xcb81e3210908509f16ea5ab78a4f292d678ec90edf548ca842908ec1f6161f55689568211 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080x8599ead5a87d521503a3ad94a7240963cd17515d2.230590007210031951 Ether
0x006deead33136574737e4a7d4ed5235d3f919c2094a5aab1890e90a5f27fb431689566115 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080xc7ff069de178da68c816e8053c3df4c482f3019e0.16803978029961 Ether
0x70f402716a6242631247e258b4ea31dee47ba3d51579f08fa4fdf80a4ce95ddd689565915 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080x08a5151ae6306912ed1655f81057fb4b4344697f11.15301636000000001 Ether
0xd912331f57ea67a9309b73cd1ded9c733f4eeed92167e85b780309effd26021f689560128 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080xc09c84b72450e1082cb3187e8d22fed3bf44662611.254107095817568996 Ether
0xe47df6f2285dde2ec2959968f34a28bfcbf56cc9b963476ef8e36f50c76a6b69689558931 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080x82a4b76dda0bb9f6c46b17c8a2b45067e0dfd0c40.2452913431372187 Ether
0xfe398abe12b0d7ac540df5ed8b7702ce67dd5ba7fd62cf9d6dcd7b81f424ca63689556339 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080x3fcc8923358ac96227976c5238e5e1f15435faf40.122822172574879165 Ether
0x4648e0034dd7d8c426f97c0ac2c88caebf73a7805c47988b39beb8bcd49337b8689553644 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080xa0d05740f3f47cd2f0437d63d8c744b4dd9e7e3a3.607642260217268491 Ether
0x78d0be9c9651654c1d3dc00aaf9a36687a356b2c3b1d351201af69025fadc482689549656 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080x5aa0bfc4c6d1862079a7fa50d3311f7bc2d138401.496852246960939429 Ether
0x0de2ef66a5e679f3246fdf1d506b7c38d2acab2f7275f31d80f8604b7ccda7b968954681 hr 3 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080x8c29008419882570e6561dd2811967f34024f16519.9975 Ether
0x229f2505c6c067be52093d1ba662ad8b91547a83c2a837c0046ae2bbe6d24aef68954461 hr 9 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080xf293b6585b17405c81bcddcbc1177487d635d7fc0.275783799999999995 Ether
0xd962961bfefe431461a4cc7ee703741b78c84c868ddf926027954b5379cf93cf68954431 hr 11 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080xd98f025def16cc926290f02d3ced42ebd27e0fc23.211108777000000003 Ether
0xa457c4f7f30ec0a09ad99f31d0c99d54baba5ae46614d922ea76d5f55047667c68954381 hr 12 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080xcab997ce79c2e50c2a708ab0b4db6983572b89fa0.64781 Ether
0x112b86b51a6768e0dcc6cc82c9ee2a68b14d6cde8e9f4babbb3de267ac018bba68954381 hr 12 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080x5e020023d2a4ee87d0a857463ded02dd739918030.776716272272827019 Ether
0xc7938a4f98ea77041ce76d237d2e3a4cd6c027e3eb0979871fd5748b0b361ba368954031 hr 20 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080x28e51d9c52416328d6d9d31dec414215b92172040.2755 Ether
0xbea895c2a49762e58fe0e46afe07bb2bfaecd729d53d0444b2a73ad9e632bceb68953941 hr 22 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080x0502c0e51a5fc8d7efbde12241d7ce4941bc79830.716018895254093656 Ether
0x7ce131c6d7e248701ca88fdd96840180c532b4d6b99234ad4eb75d8690cdd8e568953941 hr 22 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080xd337096d22b16dd9f2869d2dc48850c0c060ff940.778487201538806054 Ether
0x49aa36a1c7313263ab5a55d89827e42a18e7c356bd12d826acc6a686890ed7c568953941 hr 22 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080xf293b6585b17405c81bcddcbc1177487d635d7fc0.353527999999999975 Ether
0x8d3304bd1bcf24292a562b6bf3db0e0d94e43f7d3d8dc713295109bc3f6964ae68953851 hr 27 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080x172c125b2a6614cea918d362f48423f6cd6605853.9975 Ether
0xff77170a3b00960462c8d426efdd075ccea892ecceef9174a76f27dbd2755ffd68953701 hr 30 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080x0a905ab169df1bdd875ba5276985426f65f3364b0.9137557655174045 Ether
0x3e0ed1dee2f0b3714c0fc24fee91abf3c01f87af2709b632d5e6e67de80f052568953651 hr 31 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080x1856b0ad6fd25f9a78bda3a11eca300f35276c7c0.429318706317486449 Ether
0xf9df5aaf3ebd78c92bcb628be6a2304af01419f9bf457e16bfa63b28fb6fc84d68953561 hr 33 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080xf3563f4648917e990caeb257d98c690f4be2c0230.937500000000000001 Ether
0x38c434bac22aaf86fc038d15323564077fface19a3af6158a248b2d5860af8d868953341 hr 37 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080xd91bed13a040af6ced4cf4905f66f4b2fb49e0682.0475 Ether
0xa25bca128041e9f79325fa7dd95692509e0384efd0c7ccfa4c2ce5489608532c68953241 hr 41 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080x2f8edd9120ad378137245b4b42b26961f5764c2a0.497500699999999999 Ether
0x2c02933018dbea6192e7b0c35ba28299f8e272f32c9e84ebd0cd23ec5a3edfa368953001 hr 49 mins ago0x2a0c0dbecc7e4d658f48e01e3fa353f44050c2080x89d052daf3f93ac664d79125a7bc1a497dad3fa80.749070378104265112 Ether
[ Download CSV Export  ] 
Warning: The Compiled Contract might be susceptible to ExpExponentCleanup (medium/high-severity), NestedArrayFunctionCallDecoder (medium-severity), ZeroFunctionSelector (very low-severity) SolidityCompiler Bugs.

Contract Source Code Verified (Exact Match)
Contract Name: Exchange
Compiler Text: v0.4.16+commit.d7661dd9
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

pragma solidity ^0.4.16;

contract Token {
    bytes32 public standard;
    bytes32 public name;
    bytes32 public symbol;
    uint256 public totalSupply;
    uint8 public decimals;
    bool public allowTransactions;
    mapping (address => uint256) public balanceOf;
    mapping (address => mapping (address => uint256)) public allowance;
    function transfer(address _to, uint256 _value) returns (bool success);
    function approveAndCall(address _spender, uint256 _value, bytes _extraData) returns (bool success);
    function approve(address _spender, uint256 _value) returns (bool success);
    function transferFrom(address _from, address _to, uint256 _value) returns (bool success);
}

contract Exchange {
  function assert(bool assertion) {
    if (!assertion) throw;
  }
  function safeMul(uint a, uint b) returns (uint) {
    uint c = a * b;
    assert(a == 0 || c / a == b);
    return c;
  }

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

  function safeAdd(uint a, uint b) returns (uint) {
    uint c = a + b;
    assert(c>=a && c>=b);
    return c;
  }
  address public owner;
  mapping (address => uint256) public invalidOrder;
  event SetOwner(address indexed previousOwner, address indexed newOwner);
  modifier onlyOwner {
    assert(msg.sender == owner);
    _;
  }
  function setOwner(address newOwner) onlyOwner {
    SetOwner(owner, newOwner);
    owner = newOwner;
  }
  function getOwner() returns (address out) {
    return owner;
  }
  function invalidateOrdersBefore(address user, uint256 nonce) onlyAdmin {
    if (nonce < invalidOrder[user]) throw;
    invalidOrder[user] = nonce;
  }

  mapping (address => mapping (address => uint256)) public tokens; //mapping of token addresses to mapping of account balances

  mapping (address => bool) public admins;
  mapping (address => uint256) public lastActiveTransaction;
  mapping (bytes32 => uint256) public orderFills;
  address public feeAccount;
  uint256 public inactivityReleasePeriod;
  mapping (bytes32 => bool) public traded;
  mapping (bytes32 => bool) public withdrawn;
  event Order(address tokenBuy, uint256 amountBuy, address tokenSell, uint256 amountSell, uint256 expires, uint256 nonce, address user, uint8 v, bytes32 r, bytes32 s);
  event Cancel(address tokenBuy, uint256 amountBuy, address tokenSell, uint256 amountSell, uint256 expires, uint256 nonce, address user, uint8 v, bytes32 r, bytes32 s);
  event Trade(address tokenBuy, uint256 amountBuy, address tokenSell, uint256 amountSell, address get, address give);
  event Deposit(address token, address user, uint256 amount, uint256 balance);
  event Withdraw(address token, address user, uint256 amount, uint256 balance);

  function setInactivityReleasePeriod(uint256 expiry) onlyAdmin returns (bool success) {
    if (expiry > 1000000) throw;
    inactivityReleasePeriod = expiry;
    return true;
  }

  function Exchange(address feeAccount_) {
    owner = msg.sender;
    feeAccount = feeAccount_;
    inactivityReleasePeriod = 100000;
  }

  function setAdmin(address admin, bool isAdmin) onlyOwner {
    admins[admin] = isAdmin;
  }

  modifier onlyAdmin {
    if (msg.sender != owner && !admins[msg.sender]) throw;
    _;
  }

  function() external {
    throw;
  }

  function depositToken(address token, uint256 amount) {
    tokens[token][msg.sender] = safeAdd(tokens[token][msg.sender], amount);
    lastActiveTransaction[msg.sender] = block.number;
    if (!Token(token).transferFrom(msg.sender, this, amount)) throw;
    Deposit(token, msg.sender, amount, tokens[token][msg.sender]);
  }

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

  function withdraw(address token, uint256 amount) returns (bool success) {
    if (safeSub(block.number, lastActiveTransaction[msg.sender]) < inactivityReleasePeriod) throw;
    if (tokens[token][msg.sender] < amount) throw;
    tokens[token][msg.sender] = safeSub(tokens[token][msg.sender], amount);
    if (token == address(0)) {
      if (!msg.sender.send(amount)) throw;
    } else {
      if (!Token(token).transfer(msg.sender, amount)) throw;
    }
    Withdraw(token, msg.sender, amount, tokens[token][msg.sender]);
  }

  function adminWithdraw(address token, uint256 amount, address user, uint256 nonce, uint8 v, bytes32 r, bytes32 s, uint256 feeWithdrawal) onlyAdmin returns (bool success) {
    bytes32 hash = keccak256(this, token, amount, user, nonce);
    if (withdrawn[hash]) throw;
    withdrawn[hash] = true;
    if (ecrecover(keccak256("\x19Ethereum Signed Message:\n32", hash), v, r, s) != user) throw;
    if (feeWithdrawal > 50 finney) feeWithdrawal = 50 finney;
    if (tokens[token][user] < amount) throw;
    tokens[token][user] = safeSub(tokens[token][user], amount);
    tokens[token][feeAccount] = safeAdd(tokens[token][feeAccount], safeMul(feeWithdrawal, amount) / 1 ether);
    amount = safeMul((1 ether - feeWithdrawal), amount) / 1 ether;
    if (token == address(0)) {
      if (!user.send(amount)) throw;
    } else {
      if (!Token(token).transfer(user, amount)) throw;
    }
    lastActiveTransaction[user] = block.number;
    Withdraw(token, user, amount, tokens[token][user]);
  }

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

  function trade(uint256[8] tradeValues, address[4] tradeAddresses, uint8[2] v, bytes32[4] rs) onlyAdmin returns (bool success) {
    /* amount is in amountBuy terms */
    /* tradeValues
       [0] amountBuy
       [1] amountSell
       [2] expires
       [3] nonce
       [4] amount
       [5] tradeNonce
       [6] feeMake
       [7] feeTake
     tradeAddressses
       [0] tokenBuy
       [1] tokenSell
       [2] maker
       [3] taker
     */
    if (invalidOrder[tradeAddresses[2]] > tradeValues[3]) throw;
    bytes32 orderHash = keccak256(this, tradeAddresses[0], tradeValues[0], tradeAddresses[1], tradeValues[1], tradeValues[2], tradeValues[3], tradeAddresses[2]);
    if (ecrecover(keccak256("\x19Ethereum Signed Message:\n32", orderHash), v[0], rs[0], rs[1]) != tradeAddresses[2]) throw;
    bytes32 tradeHash = keccak256(orderHash, tradeValues[4], tradeAddresses[3], tradeValues[5]); 
    if (ecrecover(keccak256("\x19Ethereum Signed Message:\n32", tradeHash), v[1], rs[2], rs[3]) != tradeAddresses[3]) throw;
    if (traded[tradeHash]) throw;
    traded[tradeHash] = true;
    if (tradeValues[6] > 100 finney) tradeValues[6] = 100 finney;
    if (tradeValues[7] > 100 finney) tradeValues[7] = 100 finney;
    if (safeAdd(orderFills[orderHash], tradeValues[4]) > tradeValues[0]) throw;
    if (tokens[tradeAddresses[0]][tradeAddresses[3]] < tradeValues[4]) throw;
    if (tokens[tradeAddresses[1]][tradeAddresses[2]] < (safeMul(tradeValues[1], tradeValues[4]) / tradeValues[0])) throw;
    tokens[tradeAddresses[0]][tradeAddresses[3]] = safeSub(tokens[tradeAddresses[0]][tradeAddresses[3]], tradeValues[4]);
    tokens[tradeAddresses[0]][tradeAddresses[2]] = safeAdd(tokens[tradeAddresses[0]][tradeAddresses[2]], safeMul(tradeValues[4], ((1 ether) - tradeValues[6])) / (1 ether));
    tokens[tradeAddresses[0]][feeAccount] = safeAdd(tokens[tradeAddresses[0]][feeAccount], safeMul(tradeValues[4], tradeValues[6]) / (1 ether));
    tokens[tradeAddresses[1]][tradeAddresses[2]] = safeSub(tokens[tradeAddresses[1]][tradeAddresses[2]], safeMul(tradeValues[1], tradeValues[4]) / tradeValues[0]);
    tokens[tradeAddresses[1]][tradeAddresses[3]] = safeAdd(tokens[tradeAddresses[1]][tradeAddresses[3]], safeMul(safeMul(((1 ether) - tradeValues[7]), tradeValues[1]), tradeValues[4]) / tradeValues[0] / (1 ether));
    tokens[tradeAddresses[1]][feeAccount] = safeAdd(tokens[tradeAddresses[1]][feeAccount], safeMul(safeMul(tradeValues[7], tradeValues[1]), tradeValues[4]) / tradeValues[0] / (1 ether));
    orderFills[orderHash] = safeAdd(orderFills[orderHash], tradeValues[4]);
    lastActiveTransaction[tradeAddresses[2]] = block.number;
    lastActiveTransaction[tradeAddresses[3]] = block.number;
  }
}

    Contract ABI  
[{"constant":false,"inputs":[{"name":"assertion","type":"bool"}],"name":"assert","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"setOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"},{"name":"amount","type":"uint256"},{"name":"user","type":"address"},{"name":"nonce","type":"uint256"},{"name":"v","type":"uint8"},{"name":"r","type":"bytes32"},{"name":"s","type":"bytes32"},{"name":"feeWithdrawal","type":"uint256"}],"name":"adminWithdraw","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"lastActiveTransaction","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"depositToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"withdrawn","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"admins","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"admin","type":"address"},{"name":"isAdmin","type":"bool"}],"name":"setAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"tokens","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"feeAccount","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"invalidOrder","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"getOwner","outputs":[{"name":"out","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"a","type":"uint256"},{"name":"b","type":"uint256"}],"name":"safeSub","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"user","type":"address"},{"name":"nonce","type":"uint256"}],"name":"invalidateOrdersBefore","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"a","type":"uint256"},{"name":"b","type":"uint256"}],"name":"safeMul","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"deposit","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"traded","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"expiry","type":"uint256"}],"name":"setInactivityReleasePeriod","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"a","type":"uint256"},{"name":"b","type":"uint256"}],"name":"safeAdd","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"tradeValues","type":"uint256[8]"},{"name":"tradeAddresses","type":"address[4]"},{"name":"v","type":"uint8[2]"},{"name":"rs","type":"bytes32[4]"}],"name":"trade","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"inactivityReleasePeriod","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"withdraw","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"orderFills","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"token","type":"address"},{"name":"user","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"feeAccount_","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":false,"stateMutability":"nonpayable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"SetOwner","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenBuy","type":"address"},{"indexed":false,"name":"amountBuy","type":"uint256"},{"indexed":false,"name":"tokenSell","type":"address"},{"indexed":false,"name":"amountSell","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":"Order","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenBuy","type":"address"},{"indexed":false,"name":"amountBuy","type":"uint256"},{"indexed":false,"name":"tokenSell","type":"address"},{"indexed":false,"name":"amountSell","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":"tokenBuy","type":"address"},{"indexed":false,"name":"amountBuy","type":"uint256"},{"indexed":false,"name":"tokenSell","type":"address"},{"indexed":false,"name":"amountSell","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
6060604052341561000f57600080fd5b604051602080611d0c833981016040528080519150505b60008054600160a060020a03338116600160a060020a0319928316179092556006805492841692909116919091179055620186a06007555b505b611c9d8061006f6000396000f3006060604052361561012d5763ffffffff60e060020a6000350416630674763c811461014057806313af40351461015a5780632295115b1461017b578063254dcfe2146101ca578063338b5dea146101fb5780633823d66c1461021f578063429b62e5146102495780634b0bddd21461027c578063508493bc146102a257806365e17c9d146102d957806383dbb27b14610308578063893d20e8146103395780638da5cb5b14610368578063a293d1e814610397578063b12de559146103c2578063d05c78da146103e6578063d0e30db014610411578063d58133231461041b578063dd93c74a14610445578063e6cb90131461046f578063ef3435881461049a578063f31174ee14610566578063f3fef3a31461058b578063f7213db6146105c1578063f7888aec146105e9575b341561013857600080fd5b5b600080fd5b005b341561014b57600080fd5b61013e6004351515610620565b005b341561016557600080fd5b61013e600160a060020a0360043516610630565b005b341561018657600080fd5b6101b6600160a060020a03600435811690602435906044351660643560ff6084351660a43560c43560e4356106b4565b604051901515815260200160405180910390f35b34156101d557600080fd5b6101e9600160a060020a0360043516610ad9565b60405190815260200160405180910390f35b341561020657600080fd5b61013e600160a060020a0360043516602435610aeb565b005b341561022a57600080fd5b6101b6600435610c62565b604051901515815260200160405180910390f35b341561025457600080fd5b6101b6600160a060020a0360043516610c77565b604051901515815260200160405180910390f35b341561028757600080fd5b61013e600160a060020a03600435166024351515610c8c565b005b34156102ad57600080fd5b6101e9600160a060020a0360043581169060243516610cd1565b60405190815260200160405180910390f35b34156102e457600080fd5b6102ec610cee565b604051600160a060020a03909116815260200160405180910390f35b341561031357600080fd5b6101e9600160a060020a0360043516610cfd565b60405190815260200160405180910390f35b341561034457600080fd5b6102ec610d0f565b604051600160a060020a03909116815260200160405180910390f35b341561037357600080fd5b6102ec610d1f565b604051600160a060020a03909116815260200160405180910390f35b34156103a257600080fd5b6101e9600435602435610d2e565b60405190815260200160405180910390f35b34156103cd57600080fd5b61013e600160a060020a0360043516602435610d47565b005b34156103f157600080fd5b6101e9600435602435610dcf565b60405190815260200160405180910390f35b61013e610dfe565b005b341561042657600080fd5b6101b6600435610eea565b604051901515815260200160405180910390f35b341561045057600080fd5b6101b6600435610eff565b604051901515815260200160405180910390f35b341561047a57600080fd5b6101e9600435602435610f61565b60405190815260200160405180910390f35b34156104a557600080fd5b6101b6600461010481600861010060405190810160405291908282610100808284378201915050505050919080608001906004806020026040519081016040529190828260808082843782019150505050509190806040019060028060200260405190810160405280929190826002602002808284378201915050505050919080608001906004806020026040519081016040529190828260808082843750939550610f89945050505050565b604051901515815260200160405180910390f35b341561057157600080fd5b6101e9611a1a565b60405190815260200160405180910390f35b341561059657600080fd5b6101b6600160a060020a0360043516602435611a20565b604051901515815260200160405180910390f35b34156105cc57600080fd5b6101e9600435611c32565b60405190815260200160405180910390f35b34156105f457600080fd5b6101e9600160a060020a0360043581169060243516611c44565b60405190815260200160405180910390f35b80151561062c57600080fd5b5b50565b60005461064b9033600160a060020a03908116911614610620565b600054600160a060020a0380831691167fcbf985117192c8f614a58aaf97226bb80a754772f5f6edf06f87c675f2e6c66360405160405180910390a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b60008054819033600160a060020a039081169116148015906106ef5750600160a060020a03331660009081526003602052604090205460ff16155b156106f957600080fd5b308a8a8a8a6040516c01000000000000000000000000600160a060020a039687168102825294861685026014820152602881019390935293169091026048820152605c810191909152607c0160405190819003902060008181526009602052604090205490915060ff161561076d57600080fd5b60008181526009602052604090819020805460ff19166001908117909155600160a060020a038a16918390517f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c810191909152603c0160405180910390208888886040516000815260200160405260006040516020015260405193845260ff90921660208085019190915260408085019290925260608401929092526080909201915160208103908084039060008661646e5a03f1151561083157600080fd5b505060206040510351600160a060020a03161461084d57600080fd5b66b1a2bc2ec500008311156108675766b1a2bc2ec5000092505b600160a060020a03808b166000908152600260209081526040808320938c16835292905220548990101561089a57600080fd5b600160a060020a03808b166000908152600260209081526040808320938c16835292905220546108ca908a610d2e565b600160a060020a038b811660009081526002602090815260408083208d85168452909152808220939093556006549091168152205461092590670de0b6b3a7640000610916868d610dcf565b81151561091f57fe5b04610f61565b600160a060020a03808c16600090815260026020908152604080832060065490941683529290522055670de0b6b3a76400006109638482038b610dcf565b81151561096c57fe5b049850600160a060020a038a1615156109b557600160a060020a03881689156108fc028a604051600060405180830381858888f1935050505015156109b057600080fd5b610a38565b89600160a060020a031663a9059cbb898b60006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610a1257600080fd5b6102c65a03f11515610a2357600080fd5b505050604051805190501515610a3857600080fd5b5b600160a060020a038089166000818152600460209081526040808320439055938e1682526002815283822092825291909152819020547ff341246adaac6f497bc2a656f546ab9e182111d630394f0c57c710a59a2cb567918c918b918d919051600160a060020a0394851681529290931660208301526040808301919091526060820192909252608001905180910390a15b5b5098975050505050505050565b60046020526000908152604090205481565b600160a060020a0380831660009081526002602090815260408083203390941683529290522054610b1c9082610f61565b600160a060020a0380841660008181526002602090815260408083203395861684528252808320959095556004905283812043905590926323b872dd92913091869190516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b1515610bb357600080fd5b6102c65a03f11515610bc457600080fd5b505050604051805190501515610bd957600080fd5b600160a060020a03808316600090815260026020908152604080832033948516845290915290819020547fdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d79285929091859151600160a060020a0394851681529290931660208301526040808301919091526060820192909252608001905180910390a15b5050565b60096020526000908152604090205460ff1681565b60036020526000908152604090205460ff1681565b600054610ca79033600160a060020a03908116911614610620565b600160a060020a0382166000908152600360205260409020805460ff19168215151790555b5b5050565b600260209081526000928352604080842090915290825290205481565b600654600160a060020a031681565b60016020526000908152604090205481565b600054600160a060020a03165b90565b600054600160a060020a031681565b6000610d3c83831115610620565b508082035b92915050565b60005433600160a060020a03908116911614801590610d7f5750600160a060020a03331660009081526003602052604090205460ff16155b15610d8957600080fd5b600160a060020a038216600090815260016020526040902054811015610dae57600080fd5b600160a060020a03821660009081526001602052604090208190555b5b5050565b6000828202610df3841580610dee5750838583811515610deb57fe5b04145b610620565b8091505b5092915050565b33600160a060020a031660009081527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b6020526040902054610e409034610f61565b33600160a060020a03811660008181527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b60208181526040808420968755600482528084204390559383525292547fdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d793929134919051600160a060020a0394851681529290931660208301526040808301919091526060820192909252608001905180910390a15b565b60086020526000908152604090205460ff1681565b6000805433600160a060020a03908116911614801590610f385750600160a060020a03331660009081526003602052604090205460ff16155b15610f4257600080fd5b620f4240821115610f5257600080fd5b50600781905560015b5b919050565b6000828201610df3848210801590610dee5750838210155b610620565b8091505b5092915050565b600080548190819033600160a060020a03908116911614801590610fc65750600160a060020a03331660009081526003602052604090205460ff16155b15610fd057600080fd5b8660035b6020020151600160008860025b6020020151600160a060020a0316600160a060020a0316815260200190815260200160002054111561101257600080fd5b308660005b60200201518860005b60200201518860015b60200201518a60015b60200201518b60025b60200201518c60035b60200201518c60025b60200201516040516c01000000000000000000000000600160a060020a03998a168102825297891688026014820152602881019690965293871686026048860152605c850192909252607c840152609c8301529092160260bc82015260d00160405190819003902091508560025b6020020151600160a060020a03166001836040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c810191909152603c016040519081900390208760005b60200201518760005b60200201518860015b60200201516040516000815260200160405260006040516020015260405193845260ff90921660208085019190915260408085019290925260608401929092526080909201915160208103908084039060008661646e5a03f1151561118057600080fd5b505060206040510351600160a060020a03161461119c57600080fd5b818760045b60200201518760035b60200201518960055b60200201516040519384526020840192909252600160a060020a03166c010000000000000000000000000260408084019190915260548301919091526074909101905190819003902090508560035b6020020151600160a060020a03166001826040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c810191909152603c016040519081900390208760015b60200201518760025b60200201518860035b60200201516040516000815260200160405260006040516020015260405193845260ff90921660208085019190915260408085019290925260608401929092526080909201915160208103908084039060008661646e5a03f115156112c757600080fd5b505060206040510351600160a060020a0316146112e357600080fd5b60008181526008602052604090205460ff16156112ff57600080fd5b6000818152600860205260409020805460ff1916600117905567016345785d8a00008760065b602002015111156113435767016345785d8a00008760065b60200201525b67016345785d8a00008760075b6020020151111561136e5767016345785d8a00008760075b60200201525b8660005b6020020151600083815260056020526040902054611398908960045b6020020151610f61565b11156113a357600080fd5b8660045b60200201516002600088815b6020020151600160a060020a0316815260208101919091526040016000908120908860035b6020020151600160a060020a0316600160a060020a0316815260200190815260200160002054101561140957600080fd5b8660005b602002015161142c8860015b60200201518960045b6020020151610dcf565b81151561143557fe5b04600260008860015b6020020151600160a060020a0316815260208101919091526040016000908120908860025b6020020151600160a060020a0316600160a060020a0316815260200190815260200160002054101561149457600080fd5b6114f06002600088815b6020020151600160a060020a0316815260208101919091526040016000908120908860035b6020020151600160a060020a031681526020810191909152604001600020548860045b6020020151610d2e565b6002600088815b6020020151600160a060020a0316815260208101919091526040016000908120908860035b6020020151600160a060020a0316815260208101919091526040016000908120919091556115ca9060029088815b6020020151600160a060020a0316815260208101919091526040016000908120908860025b6020020151600160a060020a03168152602081019190915260400160002054670de0b6b3a76400006109168a60045b60200201518b60065b6020020151670de0b6b3a764000003610dcf565b81151561091f57fe5b04610f61565b6002600088815b6020020151600160a060020a0316815260208101919091526040016000908120908860025b6020020151600160a060020a03168152602081019190915260400160009081209190915561168c9060029088815b6020020151600160a060020a0390811682526020808301939093526040918201600090812060065490921681529252902054670de0b6b3a76400006109168a60045b60200201518b6006611422565b6020020151610dcf565b81151561091f57fe5b04610f61565b6002600088815b6020020151600160a060020a039081168252602080830193909352604091820160009081206006549092168152925281209190915561174f906002908860015b6020020151600160a060020a0316815260208101919091526040016000908120908860025b6020020151600160a060020a0316815260208101919091526040016000908120549089905b60200201516117408a60015b60200201518b6004611422565b6020020151610dcf565b81151561174957fe5b04610d2e565b600260008860015b6020020151600160a060020a0316815260208101919091526040016000908120908860025b6020020151600160a060020a03168152602081019190915260400160009081209190915561185a906002908860015b6020020151600160a060020a0316815260208101919091526040016000908120908860035b6020020151600160a060020a03168152602081019190915260400160009081205490670de0b6b3a7640000908a905b602002015161184161182f8c60075b6020020151670de0b6b3a7640000038d6001611422565b6020020151610dcf565b8c6004611422565b6020020151610dcf565b81151561184a57fe5b0481151561091f57fe5b04610f61565b600260008860015b6020020151600160a060020a0316815260208101919091526040016000908120908860035b6020020151600160a060020a031681526020810191909152604001600090812091909155611947906002908860015b6020020151600160a060020a039081168252602080830193909352604091820160009081206006549092168152925281205490670de0b6b3a7640000908a905b602002015161184161182f8c60075b60200201518d6001611422565b6020020151610dcf565b8c6004611422565b6020020151610dcf565b81151561184a57fe5b0481151561091f57fe5b04610f61565b600260008860015b6020020151600160a060020a0390811682526020808301939093526040918201600090812060065490921681529083528181209390935584835260059091529020546119a79088600461138e565b6020020151610f61565b60008381526005602052604081209190915543906004908860025b6020020151600160a060020a03168152602081019190915260400160009081209190915543906004908860035b6020020151600160a060020a031681526020810191909152604001600020555b5b5050949350505050565b60075481565b600754600160a060020a033316600090815260046020526040812054909190611a4a904390610d2e565b1015611a5557600080fd5b600160a060020a038084166000908152600260209081526040808320339094168352929052205482901015611a8957600080fd5b600160a060020a0380841660009081526002602090815260408083203390941683529290522054611aba9083610d2e565b600160a060020a03808516600081815260026020908152604080832033909516835293905291909120919091551515611b2357600160a060020a03331682156108fc0283604051600060405180830381858888f193505050501515611b1e57600080fd5b611ba6565b82600160a060020a031663a9059cbb338460006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515611b8057600080fd5b6102c65a03f11515611b9157600080fd5b505050604051805190501515611ba657600080fd5b5b600160a060020a03808416600090815260026020908152604080832033948516845290915290819020547ff341246adaac6f497bc2a656f546ab9e182111d630394f0c57c710a59a2cb5679286929091869151600160a060020a0394851681529290931660208301526040808301919091526060820192909252608001905180910390a15b92915050565b60056020526000908152604090205481565b600160a060020a038083166000908152600260209081526040808320938516835292905220545b929150505600a165627a7a7230582011e441ee389dad20321e055f3c597af6c5b1c374e4c13ea473f285fc075e8dbc0029000000000000000000000000034767f3c519f361c5ecf46ebfc08981c629d381

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

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000034767f3c519f361c5ecf46ebfc08981c629d381


   Swarm Source:
bzzr://11e441ee389dad20321e055f3c597af6c5b1c374e4c13ea473f285fc075e8dbc

 

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.