Feature Tip: Add private address tag to any address under My Name Tag !
Overview
ETH Balance
1.350925 ETH
Eth Value
$3,307.30 (@ $2,448.17/ETH)Token Holdings
More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 975 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Take | 17959548 | 412 days ago | IN | 0 ETH | 0.00035098 | ||||
Initiate Trade | 16181822 | 662 days ago | IN | 0 ETH | 0.00478352 | ||||
Claim Fees | 15405642 | 773 days ago | IN | 0 ETH | 0.00056342 | ||||
Claim Fees | 15405631 | 773 days ago | IN | 0 ETH | 0.00052074 | ||||
Claim Fees | 15405631 | 773 days ago | IN | 0 ETH | 0.00076701 | ||||
Claim Fees | 15405627 | 773 days ago | IN | 0 ETH | 0.00103382 | ||||
Claim Fees | 15405627 | 773 days ago | IN | 0 ETH | 0.00044996 | ||||
Claim Fees | 15405622 | 773 days ago | IN | 0 ETH | 0.00058449 | ||||
Claim Fees | 15405622 | 773 days ago | IN | 0 ETH | 0.00127134 | ||||
Claim Fees | 15405616 | 773 days ago | IN | 0 ETH | 0.00037741 | ||||
Initiate Trade | 15060993 | 827 days ago | IN | 0 ETH | 0.00033789 | ||||
Initiate Trade | 15060993 | 827 days ago | IN | 0 ETH | 0.00030393 | ||||
Initiate Trade | 15060634 | 827 days ago | IN | 0 ETH | 0.00033485 | ||||
Initiate Trade | 15060467 | 827 days ago | IN | 0 ETH | 0.00035478 | ||||
Initiate Trade | 15060467 | 827 days ago | IN | 0 ETH | 0.00054361 | ||||
Initiate Trade | 15060467 | 827 days ago | IN | 0 ETH | 0.00039261 | ||||
Initiate Trade | 15060467 | 827 days ago | IN | 0 ETH | 0.00042281 | ||||
Initiate Trade | 15060467 | 827 days ago | IN | 0 ETH | 0.00039261 | ||||
Initiate Trade | 15060467 | 827 days ago | IN | 0 ETH | 0.00045301 | ||||
Initiate Trade | 15060467 | 827 days ago | IN | 0 ETH | 0.00045301 | ||||
Initiate Trade | 15060467 | 827 days ago | IN | 0 ETH | 0.00042281 | ||||
Initiate Trade | 15060467 | 827 days ago | IN | 0 ETH | 0.00039261 | ||||
Initiate Trade | 15060467 | 827 days ago | IN | 0 ETH | 0.00046811 | ||||
Initiate Trade | 15060467 | 827 days ago | IN | 0 ETH | 0.00314067 | ||||
Initiate Trade | 15060467 | 827 days ago | IN | 0 ETH | 0.00289908 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
17959548 | 412 days ago | 0.09998 ETH | ||||
15405642 | 773 days ago | 0.97911716 ETH | ||||
13385379 | 1093 days ago | 8.4983 ETH | ||||
13366150 | 1096 days ago | 8.39832 ETH | ||||
13361581 | 1096 days ago | 2.059588 ETH | ||||
13361163 | 1096 days ago | 1.6 ETH | ||||
13360650 | 1096 days ago | 10.736 ETH | ||||
13359744 | 1097 days ago | 8.79824 ETH | ||||
13358364 | 1097 days ago | 6.878624 ETH | ||||
13358289 | 1097 days ago | 10.9978 ETH | ||||
13358067 | 1097 days ago | 23.9952 ETH | ||||
13123412 | 1133 days ago | 0.73 ETH | ||||
12692683 | 1200 days ago | 7 ETH | ||||
12068851 | 1297 days ago | 1 ETH | ||||
12053860 | 1299 days ago | 15.42 ETH | ||||
12053702 | 1299 days ago | 8.764 ETH | ||||
11872591 | 1327 days ago | 0.041305 ETH | ||||
11673203 | 1358 days ago | 0.1 ETH | ||||
11639048 | 1363 days ago | 0.01 ETH | ||||
11598038 | 1369 days ago | 12.877424 ETH | ||||
11449343 | 1392 days ago | 0 ETH | ||||
11408853 | 1398 days ago | 0.009998 ETH | ||||
11319922 | 1412 days ago | 0.01 ETH | ||||
11310647 | 1413 days ago | 0.009998 ETH | ||||
11284091 | 1417 days ago | 0.264 ETH |
Loading...
Loading
Contract Name:
TrustlessOTC
Compiler Version
v0.5.4+commit.9549d8ff
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2019-06-08 */ pragma solidity ^0.5.4; /** * @dev Interface of the ERC20 standard as defined in the EIP. Does not include * the optional functions; to access them see `ERC20Detailed`. */ interface IERC20 { /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @dev Returns the amount of tokens owned by `account`. */ function balanceOf(address account) external view returns (uint256); /** * @dev Moves `amount` tokens from the caller's account to `recipient`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a `Transfer` event. */ function transfer(address recipient, uint256 amount) external returns (bool); /** * @dev Returns the remaining number of tokens that `spender` will be * allowed to spend on behalf of `owner` through `transferFrom`. This is * zero by default. * * This value changes when `approve` or `transferFrom` are called. */ function allowance(address owner, address spender) external view returns (uint256); /** * @dev Sets `amount` as the allowance of `spender` over the caller's tokens. * * Returns a boolean value indicating whether the operation succeeded. * * > Beware that changing an allowance with this method brings the risk * that someone may use both the old and the new allowance by unfortunate * transaction ordering. One possible solution to mitigate this race * condition is to first reduce the spender's allowance to 0 and set the * desired value afterwards: * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 * * Emits an `Approval` event. */ function approve(address spender, uint256 amount) external returns (bool); /** * @dev Moves `amount` tokens from `sender` to `recipient` using the * allowance mechanism. `amount` is then deducted from the caller's * allowance. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a `Transfer` event. */ function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); /** * @dev Emitted when `value` tokens are moved from one account (`from`) to * another (`to`). * * Note that `value` may be zero. */ event Transfer(address indexed from, address indexed to, uint256 value); /** * @dev Emitted when the allowance of a `spender` for an `owner` is set by * a call to `approve`. `value` is the new allowance. */ event Approval(address indexed owner, address indexed spender, uint256 value); } /** * @dev Wrappers over Solidity's arithmetic operations with added overflow * checks. * * Arithmetic operations in Solidity wrap on overflow. This can easily result * in bugs, because programmers usually assume that an overflow raises an * error, which is the standard behavior in high level programming languages. * `SafeMath` restores this intuition by reverting the transaction when an * operation overflows. * * Using this library instead of the unchecked operations eliminates an entire * class of bugs, so it's recommended to use it always. */ library SafeMath { /** * @dev Returns the addition of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `+` operator. * * Requirements: * - Addition cannot overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } /** * @dev Returns the subtraction of two unsigned integers, reverting on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { require(b <= a, "SafeMath: subtraction overflow"); uint256 c = a - b; return c; } /** * @dev Returns the multiplication of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `*` operator. * * Requirements: * - Multiplication cannot overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522 if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } /** * @dev Returns the integer division of two unsigned integers. Reverts on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { // Solidity only automatically asserts when dividing by 0 require(b > 0, "SafeMath: division by zero"); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { require(b != 0, "SafeMath: modulo by zero"); return a % b; } } /** * @dev Collection of functions related to the address type, */ library Address { /** * @dev Returns true if `account` is a contract. * * This test is non-exhaustive, and there may be false-negatives: during the * execution of a contract's constructor, its address will be reported as * not containing a contract. * * > It is unsafe to assume that an address for which this function returns * false is an externally-owned account (EOA) and not a contract. */ function isContract(address account) internal view returns (bool) { // This method relies in extcodesize, which returns 0 for contracts in // construction, since the code is only stored at the end of the // constructor execution. uint256 size; // solhint-disable-next-line no-inline-assembly assembly { size := extcodesize(account) } return size > 0; } /** * @dev Converts an `address` into `address payable`. Note that this is * simply a type cast: the actual underlying value is not changed. */ function toPayable(address account) internal pure returns (address payable) { return address(uint160(account)); } } /** * @title SafeERC20 * @dev Wrappers around ERC20 operations that throw on failure (when the token * contract returns false). Tokens that return no value (and instead revert or * throw on failure) are also supported, non-reverting calls are assumed to be * successful. * To use this library you can add a `using SafeERC20 for ERC20;` statement to your contract, * which allows you to call the safe operations as `token.safeTransfer(...)`, etc. */ library SafeERC20 { using SafeMath for uint256; using Address for address; function safeTransfer(IERC20 token, address to, uint256 value) internal { callOptionalReturn(token, abi.encodeWithSelector(token.transfer.selector, to, value)); } function safeTransferFrom(IERC20 token, address from, address to, uint256 value) internal { callOptionalReturn(token, abi.encodeWithSelector(token.transferFrom.selector, from, to, value)); } function safeApprove(IERC20 token, address spender, uint256 value) internal { // safeApprove should only be called when setting an initial allowance, // or when resetting it to zero. To increase and decrease it, use // 'safeIncreaseAllowance' and 'safeDecreaseAllowance' // solhint-disable-next-line max-line-length require((value == 0) || (token.allowance(address(this), spender) == 0), "SafeERC20: approve from non-zero to non-zero allowance" ); callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, value)); } function safeIncreaseAllowance(IERC20 token, address spender, uint256 value) internal { uint256 newAllowance = token.allowance(address(this), spender).add(value); callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance)); } function safeDecreaseAllowance(IERC20 token, address spender, uint256 value) internal { uint256 newAllowance = token.allowance(address(this), spender).sub(value); callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance)); } /** * @dev Imitates a Solidity high-level call (i.e. a regular function call to a contract), relaxing the requirement * on the return value: the return value is optional (but if data is returned, it must not be false). * @param token The token targeted by the call. * @param data The call data (encoded using abi.encode or one of its variants). */ function callOptionalReturn(IERC20 token, bytes memory data) private { // We need to perform a low level call here, to bypass Solidity's return data size checking mechanism, since // we're implementing it ourselves. // A Solidity high level call has three parts: // 1. The target address is checked to verify it contains contract code // 2. The call itself is made, and success asserted // 3. The return value is decoded, which in turn checks the size of the returned data. // solhint-disable-next-line max-line-length require(address(token).isContract(), "SafeERC20: call to non-contract"); // solhint-disable-next-line avoid-low-level-calls (bool success, bytes memory returndata) = address(token).call(data); require(success, "SafeERC20: low-level call failed"); if (returndata.length > 0) { // Return data is optional // solhint-disable-next-line max-line-length require(abi.decode(returndata, (bool)), "SafeERC20: ERC20 operation did not succeed"); } } } /** * @title Ownable * @dev The Ownable contract has an owner address, and provides basic authorization control * functions, this simplifies the implementation of "user permissions". */ contract Ownable { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev The Ownable constructor sets the original `owner` of the contract to the sender * account. */ constructor () internal { _owner = msg.sender; emit OwnershipTransferred(address(0), _owner); } /** * @return the address of the owner. */ function owner() public view returns (address) { return _owner; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(isOwner()); _; } /** * @return true if `msg.sender` is the owner of the contract. */ function isOwner() public view returns (bool) { return msg.sender == _owner; } /** * @dev Allows the current owner to relinquish control of the contract. * It will not be possible to call the functions with the `onlyOwner` * modifier anymore. * @notice Renouncing ownership will leave the contract without an owner, * thereby removing any functionality that is only available to the owner. */ function renounceOwnership() public onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } /** * @dev Allows the current owner to transfer control of the contract to a newOwner. * @param newOwner The address to transfer ownership to. */ function transferOwnership(address newOwner) public onlyOwner { _transferOwnership(newOwner); } /** * @dev Transfers control of the contract to a newOwner. * @param newOwner The address to transfer ownership to. */ function _transferOwnership(address newOwner) internal { require(newOwner != address(0)); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } contract TrustlessOTC is Ownable { using SafeMath for uint256; using SafeERC20 for IERC20; mapping(address => uint256) public balanceTracker; mapping(address => uint256) public feeTracker; mapping(address => uint[]) public tradeTracker; event OfferCreated(uint indexed tradeID); event OfferCancelled(uint indexed tradeID); event OfferTaken(uint indexed tradeID); uint256 public feeBasisPoints; constructor (uint256 _feeBasisPoints) public { feeBasisPoints = _feeBasisPoints; } struct TradeOffer { address tokenFrom; address tokenTo; uint256 amountFrom; uint256 amountTo; address payable creator; address optionalTaker; bool active; bool completed; uint tradeID; } TradeOffer[] public offers; function initiateTrade( address _tokenFrom, address _tokenTo, uint256 _amountFrom, uint256 _amountTo, address _optionalTaker ) public payable returns (uint newTradeID) { if (_tokenFrom == address(0)) { require(msg.value == _amountFrom); } else { require(msg.value == 0); IERC20(_tokenFrom).safeTransferFrom(msg.sender, address(this), _amountFrom); } newTradeID = offers.length; offers.length++; TradeOffer storage o = offers[newTradeID]; balanceTracker[_tokenFrom] = balanceTracker[_tokenFrom].add(_amountFrom); o.tokenFrom = _tokenFrom; o.tokenTo = _tokenTo; o.amountFrom = _amountFrom; o.amountTo = _amountTo; o.creator = msg.sender; o.optionalTaker = _optionalTaker; o.active = true; o.tradeID = newTradeID; tradeTracker[msg.sender].push(newTradeID); emit OfferCreated(newTradeID); } function cancelTrade(uint tradeID) public returns (bool) { TradeOffer storage o = offers[tradeID]; require(msg.sender == o.creator); require(o.active == true); o.active = false; if (o.tokenFrom == address(0)) { msg.sender.transfer(o.amountFrom); } else { IERC20(o.tokenFrom).safeTransfer(o.creator, o.amountFrom); } balanceTracker[o.tokenFrom] -= o.amountFrom; emit OfferCancelled(tradeID); return true; } function take(uint tradeID) public payable returns (bool) { TradeOffer storage o = offers[tradeID]; require(o.optionalTaker == msg.sender || o.optionalTaker == address(0)); require(o.active == true); o.active = false; balanceTracker[o.tokenFrom] = balanceTracker[o.tokenFrom].sub(o.amountFrom); uint256 fee = o.amountFrom.mul(feeBasisPoints).div(10000); feeTracker[o.tokenFrom] = feeTracker[o.tokenFrom].add(fee); tradeTracker[msg.sender].push(tradeID); if (o.tokenFrom == address(0)) { msg.sender.transfer(o.amountFrom.sub(fee)); } else { IERC20(o.tokenFrom).safeTransfer(msg.sender, o.amountFrom.sub(fee)); } if (o.tokenTo == address(0)) { require(msg.value == o.amountTo); o.creator.transfer(msg.value); } else { require(msg.value == 0); IERC20(o.tokenTo).safeTransferFrom(msg.sender, o.creator, o.amountTo); } o.completed = true; emit OfferTaken(tradeID); return true; } function getOfferDetails(uint tradeID) external view returns ( address _tokenFrom, address _tokenTo, uint256 _amountFrom, uint256 _amountTo, address _creator, uint256 _fee, bool _active, bool _completed ) { TradeOffer storage o = offers[tradeID]; _tokenFrom = o.tokenFrom; _tokenTo = o.tokenTo; _amountFrom = o.amountFrom; _amountTo = o.amountTo; _creator = o.creator; _fee = o.amountFrom.mul(feeBasisPoints).div(10000); _active = o.active; _completed = o.completed; } function getUserTrades(address user) external view returns (uint[] memory){ return tradeTracker[user]; } function reclaimToken(IERC20 _token) external onlyOwner { uint256 balance = _token.balanceOf(address(this)); uint256 excess = balance.sub(balanceTracker[address(_token)]); require(excess > 0); if (address(_token) == address(0)) { msg.sender.transfer(excess); } else { _token.safeTransfer(owner(), excess); } } function claimFees(IERC20 _token) external onlyOwner { uint256 feesToClaim = feeTracker[address(_token)]; feeTracker[address(_token)] = 0; require(feesToClaim > 0); if (address(_token) == address(0)) { msg.sender.transfer(feesToClaim); } else { _token.safeTransfer(owner(), feesToClaim); } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[{"name":"tradeID","type":"uint256"}],"name":"cancelTrade","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tokenFrom","type":"address"},{"name":"_tokenTo","type":"address"},{"name":"_amountFrom","type":"uint256"},{"name":"_amountTo","type":"uint256"},{"name":"_optionalTaker","type":"address"}],"name":"initiateTrade","outputs":[{"name":"newTradeID","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"claimFees","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"reclaimToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"uint256"}],"name":"tradeTracker","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"tradeID","type":"uint256"}],"name":"getOfferDetails","outputs":[{"name":"_tokenFrom","type":"address"},{"name":"_tokenTo","type":"address"},{"name":"_amountFrom","type":"uint256"},{"name":"_amountTo","type":"uint256"},{"name":"_creator","type":"address"},{"name":"_fee","type":"uint256"},{"name":"_active","type":"bool"},{"name":"_completed","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"tradeID","type":"uint256"}],"name":"take","outputs":[{"name":"","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"feeTracker","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"renounceOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"offers","outputs":[{"name":"tokenFrom","type":"address"},{"name":"tokenTo","type":"address"},{"name":"amountFrom","type":"uint256"},{"name":"amountTo","type":"uint256"},{"name":"creator","type":"address"},{"name":"optionalTaker","type":"address"},{"name":"active","type":"bool"},{"name":"completed","type":"bool"},{"name":"tradeID","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isOwner","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"user","type":"address"}],"name":"getUserTrades","outputs":[{"name":"","type":"uint256[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceTracker","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"feeBasisPoints","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_feeBasisPoints","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"tradeID","type":"uint256"}],"name":"OfferCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"tradeID","type":"uint256"}],"name":"OfferCancelled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"tradeID","type":"uint256"}],"name":"OfferTaken","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"}]
Contract Creation Code
608060405234801561001057600080fd5b506040516020806116248339810180604052602081101561003057600080fd5b505160008054600160a060020a0319163317808255604051600160a060020a039190911691907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a36004556115978061008d6000396000f3fe608060405260043610610110576000357c010000000000000000000000000000000000000000000000000000000090048063715018a6116100a7578063927c774211610076578063927c7742146103fc5780639c1e89d61461047f578063b8606eef146104b2578063f2fde38b146104c757610110565b8063715018a61461031a5780638a72ea6a1461032f5780638da5cb5b146103b65780638f32d59b146103e757610110565b80632b4c1fdc116100e35780632b4c1fdc146102115780634fb64be21461024a5780634fd9efc4146102ca5780635d58bcce146102e757610110565b806309ec6cc7146101155780630adbf7431461015357806315a0ea6a146101a957806317ffc320146101de575b600080fd5b34801561012157600080fd5b5061013f6004803603602081101561013857600080fd5b50356104fa565b604080519115158252519081900360200190f35b610197600480360360a081101561016957600080fd5b50600160a060020a03813581169160208101358216916040820135916060810135916080909101351661063e565b60408051918252519081900360200190f35b3480156101b557600080fd5b506101dc600480360360208110156101cc57600080fd5b5035600160a060020a03166107d9565b005b3480156101ea57600080fd5b506101dc6004803603602081101561020157600080fd5b5035600160a060020a031661087f565b34801561021d57600080fd5b506101976004803603604081101561023457600080fd5b50600160a060020a0381351690602001356109c8565b34801561025657600080fd5b506102746004803603602081101561026d57600080fd5b50356109f8565b60408051600160a060020a03998a168152978916602089015287810196909652606087019490945291909516608085015260a084019490945292151560c083015291151560e08201529051908190036101000190f35b61013f600480360360208110156102e057600080fd5b5035610ac2565b3480156102f357600080fd5b506101976004803603602081101561030a57600080fd5b5035600160a060020a0316610dc0565b34801561032657600080fd5b506101dc610dd2565b34801561033b57600080fd5b506103596004803603602081101561035257600080fd5b5035610e3c565b60408051600160a060020a039a8b168152988a1660208a01528881019790975260608801959095529287166080870152951660a085015293151560c084015292151560e08301526101008201929092529051908190036101200190f35b3480156103c257600080fd5b506103cb610ec3565b60408051600160a060020a039092168252519081900360200190f35b3480156103f357600080fd5b5061013f610ed3565b34801561040857600080fd5b5061042f6004803603602081101561041f57600080fd5b5035600160a060020a0316610ee4565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561046b578181015183820152602001610453565b505050509050019250505060405180910390f35b34801561048b57600080fd5b50610197600480360360208110156104a257600080fd5b5035600160a060020a0316610f50565b3480156104be57600080fd5b50610197610f62565b3480156104d357600080fd5b506101dc600480360360208110156104ea57600080fd5b5035600160a060020a0316610f68565b60008060058381548110151561050c57fe5b600091825260209091206007909102016004810154909150600160a060020a0316331461053857600080fd5b600581015460a060020a900460ff16151560011461055557600080fd5b60058101805474ff0000000000000000000000000000000000000000191690558054600160a060020a031615156105bc576002810154604051339180156108fc02916000818181858888f193505050501580156105b6573d6000803e3d6000fd5b506105e6565b6004810154600282015482546105e692600160a060020a039182169291169063ffffffff610f8716565b60028101548154600160a060020a0316600090815260016020526040808220805493909303909255905184917fc28b4aed030bfacc245c0501326e1beb8c0ef0d60e4edc21067fdeb52da2a7aa91a250600192915050565b6000600160a060020a03861615156106615734841461065c57600080fd5b610687565b341561066c57600080fd5b610687600160a060020a03871633308763ffffffff61100716565b506005805490819061069c9060018301611479565b5060006005828154811015156106ae57fe5b60009182526020808320600160a060020a038b1684526001909152604090922054600790910290910191506106e9908663ffffffff61109516565b600160a060020a03808916600081815260016020818152604080842096909655865473ffffffffffffffffffffffffffffffffffffffff19908116909417875586820180548d8716908616179055600287018b905560038088018b905560048801805486163390811790915560058901805474ff000000000000000000000000000000000000000019988d169716969096179690961660a060020a179094556006870188905593825291835283812080549283018155815291822001849055905183917f682fd9923da5632e7c7702dabcfa626195d5f444833bc25f94e418e258e7918691a25095945050505050565b6107e1610ed3565b15156107ec57600080fd5b600160a060020a038116600090815260026020526040812080549082905590811161081657600080fd5b600160a060020a038216151561085957604051339082156108fc029083906000818181858888f19350505050158015610853573d6000803e3d6000fd5b5061087b565b61087b610864610ec3565b600160a060020a038416908363ffffffff610f8716565b5050565b610887610ed3565b151561089257600080fd5b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600091600160a060020a038416916370a0823191602480820192602092909190829003018186803b1580156108f557600080fd5b505afa158015610909573d6000803e3d6000fd5b505050506040513d602081101561091f57600080fd5b5051600160a060020a0383166000908152600160205260408120549192509061094f90839063ffffffff6110fb16565b90506000811161095e57600080fd5b600160a060020a03831615156109a157604051339082156108fc029083906000818181858888f1935050505015801561099b573d6000803e3d6000fd5b506109c3565b6109c36109ac610ec3565b600160a060020a038516908363ffffffff610f8716565b505050565b6003602052816000526040600020818154811015156109e357fe5b90600052602060002001600091509150505481565b600080600080600080600080600060058a815481101515610a1557fe5b6000918252602090912060079091020180546001820154600283015460038401546004808601549054600160a060020a039586169f509385169d50919b5099509091169650909150610a829061271090610a76908a9063ffffffff61115b16565b9063ffffffff6111bb16565b600590910154989a9799509597949693959460ff60a060020a82048116957501000000000000000000000000000000000000000000909204169350915050565b600080600583815481101515610ad457fe5b60009182526020909120600560079092020190810154909150600160a060020a0316331480610b0e57506005810154600160a060020a0316155b1515610b1957600080fd5b600581015460a060020a900460ff161515600114610b3657600080fd5b60058101805474ff00000000000000000000000000000000000000001916905560028101548154600160a060020a0316600090815260016020526040902054610b849163ffffffff6110fb16565b8154600160a060020a03166000908152600160205260408120919091556004546002830154610bc09161271091610a769163ffffffff61115b16565b8254600160a060020a0316600090815260026020526040902054909150610bed908263ffffffff61109516565b8254600160a060020a039081166000908152600260209081526040808320949094553382526003815292812080546001810182559082529290209091018590558254161515610c7f57600282015433906108fc90610c51908463ffffffff6110fb16565b6040518115909202916000818181858888f19350505050158015610c79573d6000803e3d6000fd5b50610cb2565b610cb233610c9a8385600201546110fb90919063ffffffff16565b8454600160a060020a0316919063ffffffff610f8716565b6001820154600160a060020a03161515610d175760038201543414610cd657600080fd5b6004820154604051600160a060020a03909116903480156108fc02916000818181858888f19350505050158015610d11573d6000803e3d6000fd5b50610d52565b3415610d2257600080fd5b600482015460038301546001840154610d5292600160a060020a039182169233929091169063ffffffff61100716565b60058201805475ff0000000000000000000000000000000000000000001916750100000000000000000000000000000000000000000017905560405184907f8d41497c7e1d1f357a01f988d454a86c537c3800ab8da3f91bfa5f5e73a1d5f290600090a25060019392505050565b60026020526000908152604090205481565b610dda610ed3565b1515610de557600080fd5b60008054604051600160a060020a03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a36000805473ffffffffffffffffffffffffffffffffffffffff19169055565b6005805482908110610e4a57fe5b60009182526020909120600790910201805460018201546002830154600384015460048501546005860154600690960154600160a060020a0395861697509385169592949193908216929182169160ff60a060020a82048116927501000000000000000000000000000000000000000000909204169089565b600054600160a060020a03165b90565b600054600160a060020a0316331490565b600160a060020a038116600090815260036020908152604091829020805483518184028101840190945280845260609392830182828015610f4457602002820191906000526020600020905b815481526020019060010190808311610f30575b50505050509050919050565b60016020526000908152604090205481565b60045481565b610f70610ed3565b1515610f7b57600080fd5b610f848161122a565b50565b60408051600160a060020a038416602482015260448082018490528251808303909101815260649091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb000000000000000000000000000000000000000000000000000000001790526109c39084906112a7565b60408051600160a060020a0385811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f23b872dd0000000000000000000000000000000000000000000000000000000017905261108f9085906112a7565b50505050565b6000828201838110156110f2576040805160e560020a62461bcd02815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b600082821115611155576040805160e560020a62461bcd02815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b600082151561116c575060006110f5565b82820282848281151561117b57fe5b04146110f25760405160e560020a62461bcd0281526004018080602001828103825260218152602001806115216021913960400191505060405180910390fd5b6000808211611214576040805160e560020a62461bcd02815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b6000828481151561122157fe5b04949350505050565b600160a060020a038116151561123f57600080fd5b60008054604051600160a060020a03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6112b982600160a060020a0316611471565b151561130f576040805160e560020a62461bcd02815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b6000606083600160a060020a0316836040518082805190602001908083835b6020831061134d5780518252601f19909201916020918201910161132e565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146113af576040519150601f19603f3d011682016040523d82523d6000602084013e6113b4565b606091505b5091509150811515611410576040805160e560020a62461bcd02815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b60008151111561108f5780806020019051602081101561142f57600080fd5b5051151561108f5760405160e560020a62461bcd02815260040180806020018281038252602a815260200180611542602a913960400191505060405180910390fd5b6000903b1190565b8154818355818111156109c3576000838152602090206109c391610ed09160079182028101918502015b8082111561151c57805473ffffffffffffffffffffffffffffffffffffffff199081168255600182018054821690556000600283018190556003830181905560048301805490921690915560058201805475ffffffffffffffffffffffffffffffffffffffffffff1916905560068201556007016114a3565b509056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f775361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a165627a7a7230582092790bd8214de57ecb2eb3cb78ee69d94fbeb22308917ea95dfd886ef41f2c9700290000000000000000000000000000000000000000000000000000000000000002
Deployed Bytecode
0x608060405260043610610110576000357c010000000000000000000000000000000000000000000000000000000090048063715018a6116100a7578063927c774211610076578063927c7742146103fc5780639c1e89d61461047f578063b8606eef146104b2578063f2fde38b146104c757610110565b8063715018a61461031a5780638a72ea6a1461032f5780638da5cb5b146103b65780638f32d59b146103e757610110565b80632b4c1fdc116100e35780632b4c1fdc146102115780634fb64be21461024a5780634fd9efc4146102ca5780635d58bcce146102e757610110565b806309ec6cc7146101155780630adbf7431461015357806315a0ea6a146101a957806317ffc320146101de575b600080fd5b34801561012157600080fd5b5061013f6004803603602081101561013857600080fd5b50356104fa565b604080519115158252519081900360200190f35b610197600480360360a081101561016957600080fd5b50600160a060020a03813581169160208101358216916040820135916060810135916080909101351661063e565b60408051918252519081900360200190f35b3480156101b557600080fd5b506101dc600480360360208110156101cc57600080fd5b5035600160a060020a03166107d9565b005b3480156101ea57600080fd5b506101dc6004803603602081101561020157600080fd5b5035600160a060020a031661087f565b34801561021d57600080fd5b506101976004803603604081101561023457600080fd5b50600160a060020a0381351690602001356109c8565b34801561025657600080fd5b506102746004803603602081101561026d57600080fd5b50356109f8565b60408051600160a060020a03998a168152978916602089015287810196909652606087019490945291909516608085015260a084019490945292151560c083015291151560e08201529051908190036101000190f35b61013f600480360360208110156102e057600080fd5b5035610ac2565b3480156102f357600080fd5b506101976004803603602081101561030a57600080fd5b5035600160a060020a0316610dc0565b34801561032657600080fd5b506101dc610dd2565b34801561033b57600080fd5b506103596004803603602081101561035257600080fd5b5035610e3c565b60408051600160a060020a039a8b168152988a1660208a01528881019790975260608801959095529287166080870152951660a085015293151560c084015292151560e08301526101008201929092529051908190036101200190f35b3480156103c257600080fd5b506103cb610ec3565b60408051600160a060020a039092168252519081900360200190f35b3480156103f357600080fd5b5061013f610ed3565b34801561040857600080fd5b5061042f6004803603602081101561041f57600080fd5b5035600160a060020a0316610ee4565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561046b578181015183820152602001610453565b505050509050019250505060405180910390f35b34801561048b57600080fd5b50610197600480360360208110156104a257600080fd5b5035600160a060020a0316610f50565b3480156104be57600080fd5b50610197610f62565b3480156104d357600080fd5b506101dc600480360360208110156104ea57600080fd5b5035600160a060020a0316610f68565b60008060058381548110151561050c57fe5b600091825260209091206007909102016004810154909150600160a060020a0316331461053857600080fd5b600581015460a060020a900460ff16151560011461055557600080fd5b60058101805474ff0000000000000000000000000000000000000000191690558054600160a060020a031615156105bc576002810154604051339180156108fc02916000818181858888f193505050501580156105b6573d6000803e3d6000fd5b506105e6565b6004810154600282015482546105e692600160a060020a039182169291169063ffffffff610f8716565b60028101548154600160a060020a0316600090815260016020526040808220805493909303909255905184917fc28b4aed030bfacc245c0501326e1beb8c0ef0d60e4edc21067fdeb52da2a7aa91a250600192915050565b6000600160a060020a03861615156106615734841461065c57600080fd5b610687565b341561066c57600080fd5b610687600160a060020a03871633308763ffffffff61100716565b506005805490819061069c9060018301611479565b5060006005828154811015156106ae57fe5b60009182526020808320600160a060020a038b1684526001909152604090922054600790910290910191506106e9908663ffffffff61109516565b600160a060020a03808916600081815260016020818152604080842096909655865473ffffffffffffffffffffffffffffffffffffffff19908116909417875586820180548d8716908616179055600287018b905560038088018b905560048801805486163390811790915560058901805474ff000000000000000000000000000000000000000019988d169716969096179690961660a060020a179094556006870188905593825291835283812080549283018155815291822001849055905183917f682fd9923da5632e7c7702dabcfa626195d5f444833bc25f94e418e258e7918691a25095945050505050565b6107e1610ed3565b15156107ec57600080fd5b600160a060020a038116600090815260026020526040812080549082905590811161081657600080fd5b600160a060020a038216151561085957604051339082156108fc029083906000818181858888f19350505050158015610853573d6000803e3d6000fd5b5061087b565b61087b610864610ec3565b600160a060020a038416908363ffffffff610f8716565b5050565b610887610ed3565b151561089257600080fd5b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600091600160a060020a038416916370a0823191602480820192602092909190829003018186803b1580156108f557600080fd5b505afa158015610909573d6000803e3d6000fd5b505050506040513d602081101561091f57600080fd5b5051600160a060020a0383166000908152600160205260408120549192509061094f90839063ffffffff6110fb16565b90506000811161095e57600080fd5b600160a060020a03831615156109a157604051339082156108fc029083906000818181858888f1935050505015801561099b573d6000803e3d6000fd5b506109c3565b6109c36109ac610ec3565b600160a060020a038516908363ffffffff610f8716565b505050565b6003602052816000526040600020818154811015156109e357fe5b90600052602060002001600091509150505481565b600080600080600080600080600060058a815481101515610a1557fe5b6000918252602090912060079091020180546001820154600283015460038401546004808601549054600160a060020a039586169f509385169d50919b5099509091169650909150610a829061271090610a76908a9063ffffffff61115b16565b9063ffffffff6111bb16565b600590910154989a9799509597949693959460ff60a060020a82048116957501000000000000000000000000000000000000000000909204169350915050565b600080600583815481101515610ad457fe5b60009182526020909120600560079092020190810154909150600160a060020a0316331480610b0e57506005810154600160a060020a0316155b1515610b1957600080fd5b600581015460a060020a900460ff161515600114610b3657600080fd5b60058101805474ff00000000000000000000000000000000000000001916905560028101548154600160a060020a0316600090815260016020526040902054610b849163ffffffff6110fb16565b8154600160a060020a03166000908152600160205260408120919091556004546002830154610bc09161271091610a769163ffffffff61115b16565b8254600160a060020a0316600090815260026020526040902054909150610bed908263ffffffff61109516565b8254600160a060020a039081166000908152600260209081526040808320949094553382526003815292812080546001810182559082529290209091018590558254161515610c7f57600282015433906108fc90610c51908463ffffffff6110fb16565b6040518115909202916000818181858888f19350505050158015610c79573d6000803e3d6000fd5b50610cb2565b610cb233610c9a8385600201546110fb90919063ffffffff16565b8454600160a060020a0316919063ffffffff610f8716565b6001820154600160a060020a03161515610d175760038201543414610cd657600080fd5b6004820154604051600160a060020a03909116903480156108fc02916000818181858888f19350505050158015610d11573d6000803e3d6000fd5b50610d52565b3415610d2257600080fd5b600482015460038301546001840154610d5292600160a060020a039182169233929091169063ffffffff61100716565b60058201805475ff0000000000000000000000000000000000000000001916750100000000000000000000000000000000000000000017905560405184907f8d41497c7e1d1f357a01f988d454a86c537c3800ab8da3f91bfa5f5e73a1d5f290600090a25060019392505050565b60026020526000908152604090205481565b610dda610ed3565b1515610de557600080fd5b60008054604051600160a060020a03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a36000805473ffffffffffffffffffffffffffffffffffffffff19169055565b6005805482908110610e4a57fe5b60009182526020909120600790910201805460018201546002830154600384015460048501546005860154600690960154600160a060020a0395861697509385169592949193908216929182169160ff60a060020a82048116927501000000000000000000000000000000000000000000909204169089565b600054600160a060020a03165b90565b600054600160a060020a0316331490565b600160a060020a038116600090815260036020908152604091829020805483518184028101840190945280845260609392830182828015610f4457602002820191906000526020600020905b815481526020019060010190808311610f30575b50505050509050919050565b60016020526000908152604090205481565b60045481565b610f70610ed3565b1515610f7b57600080fd5b610f848161122a565b50565b60408051600160a060020a038416602482015260448082018490528251808303909101815260649091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb000000000000000000000000000000000000000000000000000000001790526109c39084906112a7565b60408051600160a060020a0385811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f23b872dd0000000000000000000000000000000000000000000000000000000017905261108f9085906112a7565b50505050565b6000828201838110156110f2576040805160e560020a62461bcd02815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b600082821115611155576040805160e560020a62461bcd02815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b600082151561116c575060006110f5565b82820282848281151561117b57fe5b04146110f25760405160e560020a62461bcd0281526004018080602001828103825260218152602001806115216021913960400191505060405180910390fd5b6000808211611214576040805160e560020a62461bcd02815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b6000828481151561122157fe5b04949350505050565b600160a060020a038116151561123f57600080fd5b60008054604051600160a060020a03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6112b982600160a060020a0316611471565b151561130f576040805160e560020a62461bcd02815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b6000606083600160a060020a0316836040518082805190602001908083835b6020831061134d5780518252601f19909201916020918201910161132e565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146113af576040519150601f19603f3d011682016040523d82523d6000602084013e6113b4565b606091505b5091509150811515611410576040805160e560020a62461bcd02815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b60008151111561108f5780806020019051602081101561142f57600080fd5b5051151561108f5760405160e560020a62461bcd02815260040180806020018281038252602a815260200180611542602a913960400191505060405180910390fd5b6000903b1190565b8154818355818111156109c3576000838152602090206109c391610ed09160079182028101918502015b8082111561151c57805473ffffffffffffffffffffffffffffffffffffffff199081168255600182018054821690556000600283018190556003830181905560048301805490921690915560058201805475ffffffffffffffffffffffffffffffffffffffffffff1916905560068201556007016114a3565b509056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f775361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a165627a7a7230582092790bd8214de57ecb2eb3cb78ee69d94fbeb22308917ea95dfd886ef41f2c970029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000000000000000000000000000000000000000000002
-----Decoded View---------------
Arg [0] : _feeBasisPoints (uint256): 2
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000002
Deployed Bytecode Sourcemap
13577:5190:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15571:522;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15571:522:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;15571:522:0;;:::i;:::-;;;;;;;;;;;;;;;;;;14446:1117;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;-1:-1;;;;;;14446:1117:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;18386:376;;8:9:-1;5:2;;;30:1;27;20:12;5:2;18386:376:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;18386:376:0;-1:-1:-1;;;;;18386:376:0;;:::i;:::-;;17984:394;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17984:394:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;17984:394:0;-1:-1:-1;;;;;17984:394:0;;:::i;13793:46::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13793:46:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;13793:46:0;;;;;;;;:::i;17221:631::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17221:631:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;17221:631:0;;:::i;:::-;;;;-1:-1:-1;;;;;17221:631:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16101:1112;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16101:1112:0;;:::i;13741:45::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13741:45:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13741:45:0;-1:-1:-1;;;;;13741:45:0;;:::i;12805:140::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12805:140:0;;;:::i;14411:26::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14411:26:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14411:26:0;;:::i;:::-;;;;-1:-1:-1;;;;;14411:26:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12015:79;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12015:79:0;;;:::i;:::-;;;;-1:-1:-1;;;;;12015:79:0;;;;;;;;;;;;;;12350:92;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12350:92:0;;;:::i;17860:116::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17860:116:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;17860:116:0;-1:-1:-1;;;;;17860:116:0;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;17860:116:0;;;;;;;;;;;;;;;;;13685:49;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13685:49:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13685:49:0;-1:-1:-1;;;;;13685:49:0;;:::i;13991:29::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13991:29:0;;;:::i;13122:109::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13122:109:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13122:109:0;-1:-1:-1;;;;;13122:109:0;;:::i;15571:522::-;15622:4;15639:20;15662:6;15669:7;15662:15;;;;;;;;;;;;;;;;;;;;;;;15710:9;;;;15662:15;;-1:-1:-1;;;;;;15710:9:0;15696:10;:23;15688:32;;;;;;15739:8;;;;-1:-1:-1;;;15739:8:0;;;;:16;;15751:4;15739:16;15731:25;;;;;;15767:8;;;:16;;-1:-1:-1;;15767:16:0;;;15798:11;;-1:-1:-1;;;;;15798:11:0;:25;15794:177;;;15858:12;;;;15838:33;;:10;;:33;;;;;;;;;15858:12;15838:10;:33;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15838:33:0;15794:177;;;15935:9;;;;15946:12;;;;15909:11;;15902:57;;-1:-1:-1;;;;;15909:11:0;;;;15935:9;;;15902:57;:32;:57;:::i;:::-;16012:12;;;;15996:11;;-1:-1:-1;;;;;15996:11:0;15981:27;;;;:14;:27;;;;;;:43;;;;;;;;;16040:23;;16055:7;;16040:23;;;-1:-1:-1;16081:4:0;;15571:522;-1:-1:-1;;15571:522:0:o;14446:1117::-;14651:15;-1:-1:-1;;;;;14687:24:0;;;14683:256;;;14740:9;:24;;14732:33;;;;;;14683:256;;;14814:9;:14;14806:23;;;;;;14848:75;-1:-1:-1;;;;;14848:35:0;;14884:10;14904:4;14911:11;14848:75;:35;:75;:::i;:::-;-1:-1:-1;14966:6:0;:13;;;;;14994:15;;;;;;:::i;:::-;;15024:20;15047:6;15054:10;15047:18;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15109:26:0;;;;:14;:26;;;;;;;;15047:18;;;;;;;;-1:-1:-1;15109:43:0;;15140:11;15109:43;:30;:43;:::i;:::-;-1:-1:-1;;;;;15080:26:0;;;;;;;:14;:26;;;;;;;;:72;;;;15167:24;;-1:-1:-1;;15167:24:0;;;;;;;;15206:9;;;:20;;;;;;;;;;;15241:12;;;:26;;;15282:10;;;;:22;;;15319:9;;;:22;;;;15331:10;15319:22;;;;;;15356:15;;;:32;;-1:-1:-1;;15356:32:0;;;;;;;;;15403:15;;;;-1:-1:-1;;;15403:15:0;;;;15433:9;;;:22;;;15470:24;;;;;;;;;27:10:-1;;23:18;;;45:23;;15470:41:0;;;;;;;;;15531:24;;15445:10;;15531:24;;;14446:1117;;;;;;;;:::o;18386:376::-;12227:9;:7;:9::i;:::-;12219:18;;;;;;;;-1:-1:-1;;;;;18472:27:0;;18450:19;18472:27;;;:10;:27;;;;;;;18510:31;;;;18472:27;18560:15;;18552:24;;;;;;-1:-1:-1;;;;;18591:29:0;;;18587:168;;;18637:32;;:10;;:32;;;;;18657:11;;18637:32;;;;18657:11;18637:10;:32;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;18637:32:0;18587:168;;;18702:41;18722:7;:5;:7::i;:::-;-1:-1:-1;;;;;18702:19:0;;;18731:11;18702:41;:19;:41;:::i;:::-;12248:1;18386:376;:::o;17984:394::-;12227:9;:7;:9::i;:::-;12219:18;;;;;;;;18069:31;;;;;;18094:4;18069:31;;;;;;18051:15;;-1:-1:-1;;;;;18069:16:0;;;;;:31;;;;;;;;;;;;;;;:16;:31;;;5:2:-1;;;;30:1;27;20:12;5:2;18069:31:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;18069:31:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;18069:31:0;-1:-1:-1;;;;;18140:31:0;;18111:14;18140:31;;;:14;18069:31;18140;;;;;18069;;-1:-1:-1;18111:14:0;18128:44;;18069:31;;18128:44;:11;:44;:::i;:::-;18111:61;-1:-1:-1;18200:1:0;18191:10;;18183:19;;;;;;-1:-1:-1;;;;;18217:29:0;;;18213:158;;;18263:27;;:10;;:27;;;;;18283:6;;18263:27;;;;18283:6;18263:10;:27;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;18263:27:0;18213:158;;;18323:36;18343:7;:5;:7::i;:::-;-1:-1:-1;;;;;18323:19:0;;;18352:6;18323:36;:19;:36;:::i;:::-;12248:1;;17984:394;:::o;13793:46::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;17221:631::-;17293:18;17322:16;17349:19;17379:17;17407:16;17434:12;17457;17480:15;17514:20;17537:6;17544:7;17537:15;;;;;;;;;;;;;;;;;;;;;;;17576:11;;;17609:9;;;17643:12;;;;17678:10;;;;17710:9;;;;;17754:14;;-1:-1:-1;;;;;17576:11:0;;;;-1:-1:-1;17609:9:0;;;;-1:-1:-1;17643:12:0;;-1:-1:-1;17678:10:0;-1:-1:-1;17710:9:0;;;;-1:-1:-1;17537:15:0;;-1:-1:-1;17737:43:0;;17774:5;;17737:32;;17643:12;;17737:32;:16;:32;:::i;:::-;:36;:43;:36;:43;:::i;:::-;17801:8;;;;;17221:631;;;;-1:-1:-1;17221:631:0;;;;;;17730:50;17801:8;-1:-1:-1;;;17801:8:0;;;;;17833:11;;;;;;-1:-1:-1;17221:631:0;-1:-1:-1;;17221:631:0:o;16101:1112::-;16153:4;16170:20;16193:6;16200:7;16193:15;;;;;;;;;;;;;;;;;;16227;16193;;;;;16227;;;;16193;;-1:-1:-1;;;;;;16227:15:0;16246:10;16227:29;;:62;;-1:-1:-1;16260:15:0;;;;-1:-1:-1;;;;;16260:15:0;:29;16227:62;16219:71;;;;;;;;16309:8;;;;-1:-1:-1;;;16309:8:0;;;;:16;;16321:4;16309:16;16301:25;;;;;;16337:8;;;:16;;-1:-1:-1;;16337:16:0;;;16426:12;;;;16409:11;;-1:-1:-1;;;;;16409:11:0;16348:5;16394:27;;;16337:16;16394:27;;;;;;:45;;;:31;:45;:::i;:::-;16379:11;;-1:-1:-1;;;;;16379:11:0;16364:27;;;;:14;:27;;;;;:75;;;;16481:14;;16464:12;;;;:43;;16501:5;;16464:32;;;:16;:32;:::i;:43::-;16555:11;;-1:-1:-1;;;;;16555:11:0;16544:23;;;;:10;:23;;;;;;16450:57;;-1:-1:-1;16544:32:0;;16450:57;16544:32;:27;:32;:::i;:::-;16529:11;;-1:-1:-1;;;;;16529:11:0;;;16518:23;;;;:10;:23;;;;;;;;:58;;;;16600:10;16587:24;;:12;:24;;;;;27:10:-1;;16529:11:0;23:18:-1;;45:23;;16587:38:0;;;;;;;;;;;;16642:11;;;:25;16638:198;;;16704:12;;;;16684:10;;:42;;16704:21;;16721:3;16704:21;:16;:21;:::i;:::-;16684:42;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16684:42:0;16638:198;;;16757:67;16790:10;16802:21;16819:3;16802:1;:12;;;:16;;:21;;;;:::i;:::-;16764:11;;-1:-1:-1;;;;;16764:11:0;;16757:67;;:32;:67;:::i;:::-;16852:9;;;;-1:-1:-1;;;;;16852:9:0;:23;16848:272;;;16913:10;;;;16900:9;:23;16892:32;;;;;;16939:9;;;;:29;;-1:-1:-1;;;;;16939:9:0;;;;16958;16939:29;;;;;:9;:29;:9;:29;16958:9;16939;:29;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16939:29:0;16848:272;;;17009:9;:14;17001:23;;;;;;17086:9;;;;17097:10;;;;17086:9;17046;;;17039:69;;-1:-1:-1;;;;;17046:9:0;;;;17074:10;;17086:9;;;;17039:69;:34;:69;:::i;:::-;17130:11;;;:18;;-1:-1:-1;;17130:18:0;;;;;17164:19;;17175:7;;17164:19;;17130:18;;17164:19;-1:-1:-1;17201:4:0;;16101:1112;-1:-1:-1;;;16101:1112:0:o;13741:45::-;;;;;;;;;;;;;:::o;12805:140::-;12227:9;:7;:9::i;:::-;12219:18;;;;;;;;12904:1;12888:6;;12867:40;;-1:-1:-1;;;;;12888:6:0;;;;12867:40;;12904:1;;12867:40;12935:1;12918:19;;-1:-1:-1;;12918:19:0;;;12805:140::o;14411:26::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;14411:26:0;;;;-1:-1:-1;14411:26:0;;;;;;;;;;;;;;;;;-1:-1:-1;;;14411:26:0;;;;;;;;;;;;:::o;12015:79::-;12053:7;12080:6;-1:-1:-1;;;;;12080:6:0;12015:79;;:::o;12350:92::-;12390:4;12428:6;-1:-1:-1;;;;;12428:6:0;12414:10;:20;;12350:92::o;17860:116::-;-1:-1:-1;;;;;17950:18:0;;;;;;:12;:18;;;;;;;;;17943:25;;;;;;;;;;;;;;;;;17920:13;;17943:25;;;17950:18;17943:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17860:116;;;:::o;13685:49::-;;;;;;;;;;;;;:::o;13991:29::-;;;;:::o;13122:109::-;12227:9;:7;:9::i;:::-;12219:18;;;;;;;;13195:28;13214:8;13195:18;:28::i;:::-;13122:109;:::o;8244:176::-;8353:58;;;-1:-1:-1;;;;;8353:58:0;;;;;;;;;;;;;;;26:21:-1;;;22:32;;;6:49;;8353:58:0;;;;;;;;25:18:-1;;61:17;;8353:58:0;182:15:-1;8376:23:0;179:29:-1;160:49;;8327:85:0;;8346:5;;8327:18;:85::i;8428:204::-;8555:68;;;-1:-1:-1;;;;;8555:68:0;;;;;;;;;;;;;;;;;;;;;;26:21:-1;;;22:32;;;6:49;;8555:68:0;;;;;;;;25:18:-1;;61:17;;8555:68:0;182:15:-1;8578:27:0;179:29:-1;160:49;;8529:95:0;;8548:5;;8529:18;:95::i;:::-;8428:204;;;;:::o;3646:181::-;3704:7;3736:5;;;3760:6;;;;3752:46;;;;;-1:-1:-1;;;;;3752:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;3818:1;-1:-1:-1;3646:181:0;;;;;:::o;4102:184::-;4160:7;4188:6;;;;4180:49;;;;;-1:-1:-1;;;;;4180:49:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4252:5:0;;;4102:184::o;4537:470::-;4595:7;4839:6;;4835:47;;;-1:-1:-1;4869:1:0;4862:8;;4835:47;4906:5;;;4910:1;4906;:5;4930;;;;;;;;:10;4922:56;;;;-1:-1:-1;;;;;4922:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5475:333;5533:7;5628:5;;;5620:44;;;;;-1:-1:-1;;;;;5620:44:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;5675:9;5691:1;5687;:5;;;;;;;;;5475:333;-1:-1:-1;;;;5475:333:0:o;13381:187::-;-1:-1:-1;;;;;13455:22:0;;;;13447:31;;;;;;13515:6;;;13494:38;;-1:-1:-1;;;;;13494:38:0;;;;13515:6;;;13494:38;;;13543:6;:17;;-1:-1:-1;;13543:17:0;-1:-1:-1;;;;;13543:17:0;;;;;;;;;;13381:187::o;10238:1114::-;10842:27;10850:5;-1:-1:-1;;;;;10842:25:0;;:27::i;:::-;10834:71;;;;;;;-1:-1:-1;;;;;10834:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;10979:12;10993:23;11028:5;-1:-1:-1;;;;;11020:19:0;11040:4;11020:25;;;;;;;;;;;;;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;11020:25:0;;;;;;;;;;;;;;;;;;;;;;;;14:1:-1;21;16:31;;;;75:4;69:11;64:16;;144:4;140:9;133:4;115:16;111:27;107:43;104:1;100:51;94:4;87:65;169:16;166:1;159:27;225:16;222:1;215:4;212:1;208:12;193:49;7:242;;16:31;36:4;31:9;;7:242;;10978:67:0;;;;11064:7;11056:52;;;;;;;-1:-1:-1;;;;;11056:52:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11145:1;11125:10;:17;:21;11121:224;;;11267:10;11256:30;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11256:30:0;11248:85;;;;;;-1:-1:-1;;;;;11248:85:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6955:422;7015:4;7322:20;;7361:8;;6955:422::o;13577:5190::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;13577:5190:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;13577:5190:0;;;;;;;;;;;;;;
Swarm Source
bzzr://92790bd8214de57ecb2eb3cb78ee69d94fbeb22308917ea95dfd886ef41f2c97
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 27 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | Ether (ETH) | 88.01% | $2,447.22 | 1.3509 | $3,306.02 |
ETH | 3.67% | $13.91 | 9.92 | $137.99 | |
ETH | 2.01% | $0.37778 | 200 | $75.56 | |
ETH | 1.66% | $62,518 | 0.001 | $62.52 | |
ETH | 1.28% | $0.999654 | 48 | $47.98 | |
ETH | 0.93% | $2,447.22 | 0.0143 | $35.02 | |
ETH | 0.70% | $1,465.27 | 0.018 | $26.37 | |
ETH | 0.46% | $2 | 8.5754 | $17.15 | |
ETH | 0.29% | $0.99948 | 11.01 | $11 | |
ETH | 0.16% | $5.99 | 1 | $5.99 | |
ETH | 0.16% | $0.005153 | 1,161.5286 | $5.99 | |
ETH | 0.16% | $0.480447 | 12.3678 | $5.94 | |
ETH | 0.15% | $1.42 | 4 | $5.68 | |
ETH | 0.14% | $2.75 | 1.9008 | $5.23 | |
ETH | 0.10% | $2,283.17 | 0.0016 | $3.65 | |
ETH | 0.09% | $0.319417 | 10 | $3.19 | |
ETH | 0.02% | $0.313326 | 2 | $0.6266 | |
ETH | <0.01% | $0.000123 | 1,200.046 | $0.1476 | |
ETH | <0.01% | $0.008373 | 17.4 | $0.1456 | |
ETH | <0.01% | $16.15 | 0.009 | $0.1453 | |
BSC | <0.01% | $0.000534 | 345 | $0.184 |
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.