Feature Tip: Add private address tag to any address under My Name Tag !
More Info
Private Name Tags
ContractCreator
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
6679410 | 2252 days ago | 0.01566 ETH | ||||
6679410 | 2252 days ago | 0.01566 ETH | ||||
6679375 | 2252 days ago | 0.01566 ETH | ||||
6679375 | 2252 days ago | 0.01566 ETH | ||||
6679370 | 2252 days ago | 0.01566 ETH | ||||
6679370 | 2252 days ago | 0.01566 ETH | ||||
6673443 | 2252 days ago | 0.11851776 ETH | ||||
6673443 | 2252 days ago | 0.11851776 ETH | ||||
6673443 | 2252 days ago | 0.01973212 ETH | ||||
6673443 | 2252 days ago | 0.01973212 ETH | ||||
6671153 | 2253 days ago | 0.04368977 ETH | ||||
6671153 | 2253 days ago | 0.04368977 ETH | ||||
6671153 | 2253 days ago | 0.00014006 ETH | ||||
6671153 | 2253 days ago | 0.00014006 ETH | ||||
6671153 | 2253 days ago | 0.40898777 ETH | ||||
6671153 | 2253 days ago | 0.40898777 ETH | ||||
6667434 | 2253 days ago | 0.11851776 ETH | ||||
6667434 | 2253 days ago | 0.11851776 ETH | ||||
6667434 | 2253 days ago | 0.01973212 ETH | ||||
6667434 | 2253 days ago | 0.01973212 ETH | ||||
6667416 | 2253 days ago | 0.00261922 ETH | ||||
6667416 | 2253 days ago | 0.00261922 ETH | ||||
6667416 | 2253 days ago | 0.0484 ETH | ||||
6667416 | 2253 days ago | 0.0484 ETH | ||||
6667416 | 2253 days ago | 0.252 ETH |
Loading...
Loading
Contract Name:
EtherDeltaHandler
Compiler Version
v0.4.21+commit.dfe3193c
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-06-03 */ pragma solidity 0.4.21; // File: contracts/ExchangeHandler.sol /// @title Interface for all exchange handler contracts interface ExchangeHandler { /// @dev Get the available amount left to fill for an order /// @param orderAddresses Array of address values needed for this DEX order /// @param orderValues Array of uint values needed for this DEX order /// @param exchangeFee Value indicating the fee for this DEX order /// @param v ECDSA signature parameter v /// @param r ECDSA signature parameter r /// @param s ECDSA signature parameter s /// @return Available amount left to fill for this order function getAvailableAmount( address[8] orderAddresses, uint256[6] orderValues, uint256 exchangeFee, uint8 v, bytes32 r, bytes32 s ) external returns (uint256); /// @dev Perform a buy order at the exchange /// @param orderAddresses Array of address values needed for each DEX order /// @param orderValues Array of uint values needed for each DEX order /// @param exchangeFee Value indicating the fee for this DEX order /// @param amountToFill Amount to fill in this order /// @param v ECDSA signature parameter v /// @param r ECDSA signature parameter r /// @param s ECDSA signature parameter s /// @return Amount filled in this order function performBuy( address[8] orderAddresses, uint256[6] orderValues, uint256 exchangeFee, uint256 amountToFill, uint8 v, bytes32 r, bytes32 s ) external payable returns (uint256); /// @dev Perform a sell order at the exchange /// @param orderAddresses Array of address values needed for each DEX order /// @param orderValues Array of uint values needed for each DEX order /// @param exchangeFee Value indicating the fee for this DEX order /// @param amountToFill Amount to fill in this order /// @param v ECDSA signature parameter v /// @param r ECDSA signature parameter r /// @param s ECDSA signature parameter s /// @return Amount filled in this order function performSell( address[8] orderAddresses, uint256[6] orderValues, uint256 exchangeFee, uint256 amountToFill, uint8 v, bytes32 r, bytes32 s ) external returns (uint256); } // File: openzeppelin-solidity/contracts/math/SafeMath.sol /** * @title SafeMath * @dev Math operations with safety checks that throw on error */ library SafeMath { /** * @dev Multiplies two numbers, throws on overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256 c) { if (a == 0) { return 0; } c = a * b; assert(c / a == b); return c; } /** * @dev Integer division of two numbers, truncating the quotient. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { // assert(b > 0); // Solidity automatically throws when dividing by 0 // uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return a / b; } /** * @dev Subtracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend). */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { assert(b <= a); return a - b; } /** * @dev Adds two numbers, throws on overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256 c) { c = a + b; assert(c >= a); return c; } } // File: openzeppelin-solidity/contracts/token/ERC20/ERC20Basic.sol /** * @title ERC20Basic * @dev Simpler version of ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/179 */ contract ERC20Basic { function totalSupply() public view returns (uint256); function balanceOf(address who) public view returns (uint256); function transfer(address to, uint256 value) public returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); } // File: openzeppelin-solidity/contracts/token/ERC20/ERC20.sol /** * @title ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/20 */ contract Token is ERC20Basic { function allowance(address owner, address spender) public view returns (uint256); function transferFrom(address from, address to, uint256 value) public returns (bool); function approve(address spender, uint256 value) public returns (bool); event Approval(address indexed owner, address indexed spender, uint256 value); } // File: contracts/EtherDelta.sol interface EtherDelta { function deposit() public payable; function withdraw(uint amount) public; function depositToken(address token, uint amount) public; function withdrawToken(address token, uint amount) public; function trade(address tokenGet, uint amountGet, address tokenGive, uint amountGive, uint expires, uint nonce, address user, uint8 v, bytes32 r, bytes32 s, uint amount) public; 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); } contract EtherDeltaHandler is ExchangeHandler { // State variables EtherDelta public exchange; // Constructor function EtherDeltaHandler(address _exchange) public { exchange = EtherDelta(_exchange); } // Public functions function getAvailableAmount( address[8] orderAddresses, uint256[6] orderValues, uint256 exchangeFee, uint8 v, bytes32 r, bytes32 s ) external returns (uint256) { if(block.number > orderValues[2]) { // Order has expired return 0; } uint256 availableVolume = exchange.availableVolume( orderAddresses[2], orderValues[1], orderAddresses[1], orderValues[0], orderValues[2], orderValues[3], orderAddresses[0], v, r, s ); // Adds the exchange fee onto the available amount return getPartialAmount(availableVolume, SafeMath.sub(1 ether, exchangeFee), 1 ether); } function performBuy( address[8] orderAddresses, uint256[6] orderValues, uint256 exchangeFee, uint256 amountToFill, uint8 v, bytes32 r, bytes32 s ) external payable returns (uint256) { require(msg.value == amountToFill); deposit(amountToFill); uint256 amountToTrade; uint256 fee; (amountToTrade, fee) = substractFee(exchangeFee, amountToFill); trade( orderAddresses, orderValues, amountToTrade, v, r, s ); uint256 tokenAmountObtained = getPartialAmount(orderValues[0], orderValues[1], amountToTrade); withdrawToken(orderAddresses[1], tokenAmountObtained); transferTokenToSender(orderAddresses[1], tokenAmountObtained); return tokenAmountObtained; } function performSell( address[8] orderAddresses, uint256[6] orderValues, uint256 exchangeFee, uint256 amountToFill, uint8 v, bytes32 r, bytes32 s ) external returns (uint256) { depositToken(orderAddresses[2], amountToFill); uint256 amountToTrade; uint256 fee; (amountToTrade, fee) = substractFee(exchangeFee, amountToFill); trade( orderAddresses, orderValues, amountToTrade, v, r, s ); uint256 etherAmountObtained = getPartialAmount(orderValues[0], orderValues[1], amountToTrade); withdraw(etherAmountObtained); transferEtherToSender(etherAmountObtained); return etherAmountObtained; } // Internal functions function trade( address[8] orderAddresses, uint256[6] orderValues, uint256 amountToTrade, uint8 v, bytes32 r, bytes32 s ) internal { exchange.trade( orderAddresses[2], orderValues[1], orderAddresses[1], orderValues[0], orderValues[2], orderValues[3], orderAddresses[0], v, r, s, amountToTrade ); } function substractFee(uint256 feePercentage, uint256 amount) internal pure returns (uint256, uint256) { uint256 fee = getPartialAmount(amount, 1 ether, feePercentage); return (SafeMath.sub(amount, fee), fee); } function deposit(uint256 amount) internal { exchange.deposit.value(amount)(); } function depositToken(address token, uint256 amount) internal { require(Token(token).approve(address(exchange), amount)); exchange.depositToken(token, amount); } function withdraw(uint256 amount) internal { exchange.withdraw(amount); } function withdrawToken(address token, uint256 amount) internal { exchange.withdrawToken(token, amount); } function transferTokenToSender(address token, uint256 amount) internal { require(Token(token).transfer(msg.sender, amount)); } function transferEtherToSender(uint256 amount) internal { msg.sender.transfer(amount); } function getPartialAmount(uint256 numerator, uint256 denominator, uint256 target) internal pure returns (uint256) { return SafeMath.div(SafeMath.mul(numerator, target), denominator); } function() public payable { require(msg.sender == address(exchange)); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[{"name":"orderAddresses","type":"address[8]"},{"name":"orderValues","type":"uint256[6]"},{"name":"exchangeFee","type":"uint256"},{"name":"v","type":"uint8"},{"name":"r","type":"bytes32"},{"name":"s","type":"bytes32"}],"name":"getAvailableAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"orderAddresses","type":"address[8]"},{"name":"orderValues","type":"uint256[6]"},{"name":"exchangeFee","type":"uint256"},{"name":"amountToFill","type":"uint256"},{"name":"v","type":"uint8"},{"name":"r","type":"bytes32"},{"name":"s","type":"bytes32"}],"name":"performSell","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"orderAddresses","type":"address[8]"},{"name":"orderValues","type":"uint256[6]"},{"name":"exchangeFee","type":"uint256"},{"name":"amountToFill","type":"uint256"},{"name":"v","type":"uint8"},{"name":"r","type":"bytes32"},{"name":"s","type":"bytes32"}],"name":"performBuy","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"exchange","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_exchange","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"}]
Contract Creation Code
6060604052341561000f57600080fd5b604051602080610fa383398101604052808051906020019091905050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610f288061007b6000396000f300606060405260043610610062576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680634102bf5c146100bf5780634981b3ca1461012b578063bdd5be2f146101a0578063d2f7265a1461020a575b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156100bd57600080fd5b005b34156100ca57600080fd5b61011560048080610100019091908060c001909190803590602001909190803560ff16906020019091908035600019169060200190919080356000191690602001909190505061025f565b6040518082815260200191505060405180910390f35b341561013657600080fd5b61018a60048080610100019091908060c001909190803590602001909190803590602001909190803560ff169060200190919080356000191690602001909190803560001916906020019091905050610509565b6040518082815260200191505060405180910390f35b6101f460048080610100019091908060c001909190803590602001909190803590602001909190803560ff169060200190919080356000191690602001909190803560001916906020019091905050610602565b6040518082815260200191505060405180910390f35b341561021557600080fd5b61021d610733565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60008086600260068110151561027157fe5b602002013543111561028657600091506104fe565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fb6e155f8960026008811015156102d257fe5b602002013573ffffffffffffffffffffffffffffffffffffffff168960016006811015156102fc57fe5b60200201358b600160088110151561031057fe5b602002013573ffffffffffffffffffffffffffffffffffffffff168b600060068110151561033a57fe5b60200201358c600260068110151561034e57fe5b60200201358d600360068110151561036257fe5b60200201358f600060088110151561037657fe5b602002013573ffffffffffffffffffffffffffffffffffffffff168d8d8d6040518b63ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018a81526020018973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018881526020018781526020018681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018460ff1660ff168152602001836000191660001916815260200182600019166000191681526020019a5050505050505050505050602060405180830381600087803b15156104be57600080fd5b5af115156104cb57600080fd5b5050506040518051905090506104fb816104ed670de0b6b3a764000089610758565b670de0b6b3a7640000610771565b91505b509695505050505050565b6000806000806105428b600260088110151561052157fe5b602002013573ffffffffffffffffffffffffffffffffffffffff168961078f565b61054c898961094b565b80935081945050506105ac8b600880602002604051908101604052809291908260086020028082843782019150505050508b60068060200260405190810160405280929190826006602002808284378201915050505050858a8a8a61097c565b6105dd8a60006006811015156105be57fe5b60200201358b60016006811015156105d257fe5b602002013585610771565b90506105e881610b92565b6105f181610c34565b809350505050979650505050505050565b600080600080873414151561061657600080fd5b61061f88610c77565b610629898961094b565b80935081945050506106898b600880602002604051908101604052809291908260086020028082843782019150505050508b60068060200260405190810160405280929190826006602002808284378201915050505050858a8a8a61097c565b6106ba8a600060068110151561069b57fe5b60200201358b60016006811015156106af57fe5b602002013585610771565b90506106ef8b60016008811015156106ce57fe5b602002013573ffffffffffffffffffffffffffffffffffffffff1682610d0f565b6107228b600160088110151561070157fe5b602002013573ffffffffffffffffffffffffffffffffffffffff1682610de6565b809350505050979650505050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600082821115151561076657fe5b818303905092915050565b60006107866107808584610eae565b84610ee6565b90509392505050565b8173ffffffffffffffffffffffffffffffffffffffff1663095ea7b36000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b151561085257600080fd5b5af1151561085f57600080fd5b50505060405180519050151561087457600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663338b5dea83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b151561093757600080fd5b5af1151561094457600080fd5b5050505050565b600080600061096384670de0b6b3a764000087610771565b905061096f8482610758565b8192509250509250929050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630a19b14a8760026008811015156109c857fe5b60200201518760016006811015156109dc57fe5b60200201518960016008811015156109f057fe5b6020020151896000600681101515610a0457fe5b60200201518a6002600681101515610a1857fe5b60200201518b6003600681101515610a2c57fe5b60200201518d6000600881101515610a4057fe5b60200201518b8b8b8f6040518c63ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018b81526020018a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018981526020018881526020018781526020018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018560ff1660ff168152602001846000191660001916815260200183600019166000191681526020018281526020019b505050505050505050505050600060405180830381600087803b1515610b7a57600080fd5b5af11515610b8757600080fd5b505050505050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16632e1a7d4d826040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050600060405180830381600087803b1515610c2157600080fd5b5af11515610c2e57600080fd5b50505050565b3373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501515610c7457600080fd5b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663d0e30db0826040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004016000604051808303818588803b1515610cfb57600080fd5b5af11515610d0857600080fd5b5050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639e281a9883836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610dd257600080fd5b5af11515610ddf57600080fd5b5050505050565b8173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515610e8857600080fd5b5af11515610e9557600080fd5b505050604051805190501515610eaa57600080fd5b5050565b600080831415610ec15760009050610ee0565b8183029050818382811515610ed257fe5b04141515610edc57fe5b8090505b92915050565b60008183811515610ef357fe5b049050929150505600a165627a7a72305820c67afc0b1717d086f4146375e2941cc51a7762da84b864200aac05552323907d00290000000000000000000000008d12a197cb00d4747a1fe03395095ce2a5cc6819
Deployed Bytecode
0x606060405260043610610062576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680634102bf5c146100bf5780634981b3ca1461012b578063bdd5be2f146101a0578063d2f7265a1461020a575b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156100bd57600080fd5b005b34156100ca57600080fd5b61011560048080610100019091908060c001909190803590602001909190803560ff16906020019091908035600019169060200190919080356000191690602001909190505061025f565b6040518082815260200191505060405180910390f35b341561013657600080fd5b61018a60048080610100019091908060c001909190803590602001909190803590602001909190803560ff169060200190919080356000191690602001909190803560001916906020019091905050610509565b6040518082815260200191505060405180910390f35b6101f460048080610100019091908060c001909190803590602001909190803590602001909190803560ff169060200190919080356000191690602001909190803560001916906020019091905050610602565b6040518082815260200191505060405180910390f35b341561021557600080fd5b61021d610733565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60008086600260068110151561027157fe5b602002013543111561028657600091506104fe565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fb6e155f8960026008811015156102d257fe5b602002013573ffffffffffffffffffffffffffffffffffffffff168960016006811015156102fc57fe5b60200201358b600160088110151561031057fe5b602002013573ffffffffffffffffffffffffffffffffffffffff168b600060068110151561033a57fe5b60200201358c600260068110151561034e57fe5b60200201358d600360068110151561036257fe5b60200201358f600060088110151561037657fe5b602002013573ffffffffffffffffffffffffffffffffffffffff168d8d8d6040518b63ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018a81526020018973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018881526020018781526020018681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018460ff1660ff168152602001836000191660001916815260200182600019166000191681526020019a5050505050505050505050602060405180830381600087803b15156104be57600080fd5b5af115156104cb57600080fd5b5050506040518051905090506104fb816104ed670de0b6b3a764000089610758565b670de0b6b3a7640000610771565b91505b509695505050505050565b6000806000806105428b600260088110151561052157fe5b602002013573ffffffffffffffffffffffffffffffffffffffff168961078f565b61054c898961094b565b80935081945050506105ac8b600880602002604051908101604052809291908260086020028082843782019150505050508b60068060200260405190810160405280929190826006602002808284378201915050505050858a8a8a61097c565b6105dd8a60006006811015156105be57fe5b60200201358b60016006811015156105d257fe5b602002013585610771565b90506105e881610b92565b6105f181610c34565b809350505050979650505050505050565b600080600080873414151561061657600080fd5b61061f88610c77565b610629898961094b565b80935081945050506106898b600880602002604051908101604052809291908260086020028082843782019150505050508b60068060200260405190810160405280929190826006602002808284378201915050505050858a8a8a61097c565b6106ba8a600060068110151561069b57fe5b60200201358b60016006811015156106af57fe5b602002013585610771565b90506106ef8b60016008811015156106ce57fe5b602002013573ffffffffffffffffffffffffffffffffffffffff1682610d0f565b6107228b600160088110151561070157fe5b602002013573ffffffffffffffffffffffffffffffffffffffff1682610de6565b809350505050979650505050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600082821115151561076657fe5b818303905092915050565b60006107866107808584610eae565b84610ee6565b90509392505050565b8173ffffffffffffffffffffffffffffffffffffffff1663095ea7b36000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b151561085257600080fd5b5af1151561085f57600080fd5b50505060405180519050151561087457600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663338b5dea83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b151561093757600080fd5b5af1151561094457600080fd5b5050505050565b600080600061096384670de0b6b3a764000087610771565b905061096f8482610758565b8192509250509250929050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630a19b14a8760026008811015156109c857fe5b60200201518760016006811015156109dc57fe5b60200201518960016008811015156109f057fe5b6020020151896000600681101515610a0457fe5b60200201518a6002600681101515610a1857fe5b60200201518b6003600681101515610a2c57fe5b60200201518d6000600881101515610a4057fe5b60200201518b8b8b8f6040518c63ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018b81526020018a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018981526020018881526020018781526020018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018560ff1660ff168152602001846000191660001916815260200183600019166000191681526020018281526020019b505050505050505050505050600060405180830381600087803b1515610b7a57600080fd5b5af11515610b8757600080fd5b505050505050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16632e1a7d4d826040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050600060405180830381600087803b1515610c2157600080fd5b5af11515610c2e57600080fd5b50505050565b3373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501515610c7457600080fd5b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663d0e30db0826040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004016000604051808303818588803b1515610cfb57600080fd5b5af11515610d0857600080fd5b5050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639e281a9883836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610dd257600080fd5b5af11515610ddf57600080fd5b5050505050565b8173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515610e8857600080fd5b5af11515610e9557600080fd5b505050604051805190501515610eaa57600080fd5b5050565b600080831415610ec15760009050610ee0565b8183029050818382811515610ed257fe5b04141515610edc57fe5b8090505b92915050565b60008183811515610ef357fe5b049050929150505600a165627a7a72305820c67afc0b1717d086f4146375e2941cc51a7762da84b864200aac05552323907d0029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000008d12a197cb00d4747a1fe03395095ce2a5cc6819
-----Decoded View---------------
Arg [0] : _exchange (address): 0x8d12A197cB00D4747a1fe03395095ce2A5CC6819
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000008d12a197cb00d4747a1fe03395095ce2a5cc6819
Swarm Source
bzzr://c67afc0b1717d086f4146375e2941cc51a7762da84b864200aac05552323907d
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.