Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 1 from a total of 1 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
0x60806040 | 11218227 | 1445 days ago | IN | 0 ETH | 0.03016445 |
Loading...
Loading
Contract Name:
PredictzDex
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2020-11-08 */ /** *Submitted for verification at Etherscan.io on 2020-11-07 */ pragma solidity 0.6.12; // SPDX-License-Identifier: No License library SafeMath { function mul(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a * b; assert(a == 0 || c / a == b); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { require(b >0 ) ; uint256 c = a / b; return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { assert(b <= a); return a - b; } function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; assert(c >= a); return c; } } library EnumerableSet { struct Set { bytes32[] _values; mapping (bytes32 => uint256) _indexes; } function _add(Set storage set, bytes32 value) private returns (bool) { if (!_contains(set, value)) { set._values.push(value); set._indexes[value] = set._values.length; return true; } else { return false; } } function _remove(Set storage set, bytes32 value) private returns (bool) { uint256 valueIndex = set._indexes[value]; if (valueIndex != 0) { uint256 toDeleteIndex = valueIndex - 1; uint256 lastIndex = set._values.length - 1; bytes32 lastvalue = set._values[lastIndex]; set._values[toDeleteIndex] = lastvalue; set._indexes[lastvalue] = toDeleteIndex + 1; set._values.pop(); delete set._indexes[value]; return true; } else { return false; } } function _contains(Set storage set, bytes32 value) private view returns (bool) { return set._indexes[value] != 0; } function _length(Set storage set) private view returns (uint256) { return set._values.length; } function _at(Set storage set, uint256 index) private view returns (bytes32) { require(set._values.length > index, "EnumerableSet: index out of bounds"); return set._values[index]; } struct AddressSet { Set _inner; } function add(AddressSet storage set, address value) internal returns (bool) { return _add(set._inner, bytes32(uint256(value))); } function remove(AddressSet storage set, address value) internal returns (bool) { return _remove(set._inner, bytes32(uint256(value))); } function contains(AddressSet storage set, address value) internal view returns (bool) { return _contains(set._inner, bytes32(uint256(value))); } function length(AddressSet storage set) internal view returns (uint256) { return _length(set._inner); } function at(AddressSet storage set, uint256 index) internal view returns (address) { return address(uint256(_at(set._inner, index))); } struct UintSet { Set _inner; } function add(UintSet storage set, uint256 value) internal returns (bool) { return _add(set._inner, bytes32(value)); } function remove(UintSet storage set, uint256 value) internal returns (bool) { return _remove(set._inner, bytes32(value)); } function contains(UintSet storage set, uint256 value) internal view returns (bool) { return _contains(set._inner, bytes32(value)); } function length(UintSet storage set) internal view returns (uint256) { return _length(set._inner); } function at(UintSet storage set, uint256 index) internal view returns (uint256) { return uint256(_at(set._inner, index)); } } contract Ownable { address public 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() public { owner = msg.sender; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(msg.sender == owner); _; } /** * @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) onlyOwner public { require(newOwner != address(0)); emit OwnershipTransferred(owner, newOwner); owner = newOwner; } } interface Token { function transferFrom(address, address, uint256) external returns (bool); function transfer(address, uint256) external returns (bool); } contract PredictzDex is Ownable { using SafeMath for uint256; using EnumerableSet for EnumerableSet.AddressSet; /* swapOwners[i] = [ 0 => Swap ID, 1 => Swap Owner, 2 => Swap Token, 3 => Swap Quanitiy, 4 => Swap Deadline, 5 => Swap Status, 0 => Pending, 1 => Received, 2 => Finished ] */ struct Swap { address owner; address token; uint256 quantity; uint256 balance; uint256 decimals; uint256 rate; uint256 deadline; uint256 status; bool exists; } mapping(uint256 => Swap) swaps; uint256[] public swapOwners; function getAllSwaps() view public returns (uint256[] memory){ return swapOwners; } function swap(uint256 swapID , address token, uint256 quantity,uint256 rate , uint256 decimals , uint256 deadline) public returns (uint256) { require(quantity > 0, "Cannot Swap with 0 Tokens"); require(deadline > now, "Cannot Swap for before time"); require(Token(token).transferFrom(msg.sender, address(this), quantity), "Insufficient Token Allowance"); require(swaps[swapID].exists != true , "Swap already Exists" ); Swap storage newswap = swaps[swapID]; newswap.owner = msg.sender; newswap.token = token; newswap.quantity = quantity ; newswap.balance = quantity ; newswap.decimals = decimals ; newswap.rate = rate ; newswap.deadline = deadline; newswap.status = 0 ; newswap.exists = true ; swapOwners.push(swapID) ; } function getSwap(uint256 _swapID ) view public returns (address , address , uint256, uint256 , uint256 , uint256 , uint256 ) { return (swaps[_swapID].owner , swaps[_swapID].token , swaps[_swapID].rate , swaps[_swapID].deadline , swaps[_swapID].quantity , swaps[_swapID].status , swaps[_swapID].balance ); } function getSwapDecimals(uint256 _swapID ) view public returns (uint256 ) { return ( swaps[_swapID].decimals ); } function calculateFee(uint256 _swapID , uint256 tokenAmt ) view public returns ( uint256 , uint256 , uint256 ) { return (swaps[_swapID].balance , swaps[_swapID].deadline , swaps[_swapID].rate.mul(tokenAmt) ); } function calculateToken(uint256 _swapID , uint256 bidamt ) view public returns ( uint256 ) { return (bidamt.div(swaps[_swapID].rate)) ; } function calculateRate(uint256 equivalentToken) pure public returns ( uint256 ) { uint256 base = 1e18 ; return (base.div(equivalentToken)) ; } function buy(uint256 amount, uint256 _swapID , uint256 tokenAmt) payable public { require(swaps[_swapID].balance >= tokenAmt, "Not Enough Tokens"); require(swaps[_swapID].deadline > now, "Pool Expired"); require(msg.value == amount); require(msg.value == swaps[_swapID].rate.mul(tokenAmt)); Swap storage singleswap = swaps[_swapID]; singleswap.balance = singleswap.balance.sub(tokenAmt.mul(singleswap.decimals)) ; transferAnyERC20Tokens(singleswap.token, msg.sender , tokenAmt.mul(singleswap.decimals) ); } function withdraw() public onlyOwner{ msg.sender.transfer(address(this).balance); } function transferAnyERC20Tokens(address _tokenAddr, address _to, uint256 _amount) private { Token(_tokenAddr).transfer(_to, _amount); } function OwnertransferAnyERC20Tokens(address _tokenAddr, address _to, uint256 _amount) public onlyOwner { Token(_tokenAddr).transfer(_to, _amount); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[{"internalType":"address","name":"_tokenAddr","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"OwnertransferAnyERC20Tokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"_swapID","type":"uint256"},{"internalType":"uint256","name":"tokenAmt","type":"uint256"}],"name":"buy","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_swapID","type":"uint256"},{"internalType":"uint256","name":"tokenAmt","type":"uint256"}],"name":"calculateFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"equivalentToken","type":"uint256"}],"name":"calculateRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"_swapID","type":"uint256"},{"internalType":"uint256","name":"bidamt","type":"uint256"}],"name":"calculateToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getAllSwaps","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_swapID","type":"uint256"}],"name":"getSwap","outputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_swapID","type":"uint256"}],"name":"getSwapDecimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"swapID","type":"uint256"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"quantity","type":"uint256"},{"internalType":"uint256","name":"rate","type":"uint256"},{"internalType":"uint256","name":"decimals","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"}],"name":"swap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"swapOwners","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611230806100606000396000f3fe6080604052600436106100c25760003560e01c80634a0d89ba1161007f578063c02be4a611610059578063c02be4a6146103b3578063d6cfeae01461042e578063e5c7a6321461049a578063f2fde38b14610531576100c2565b80634a0d89ba14610274578063870c1c93146103195780638da5cb5b14610372576100c2565b806318284a69146100c7578063319b0cd21461011657806334e73122146101655780633bbf3378146101cc5780633ccfd60b1461021b57806340993b2614610232575b600080fd5b3480156100d357600080fd5b50610100600480360360208110156100ea57600080fd5b8101908080359060200190929190505050610582565b6040518082815260200191505060405180910390f35b34801561012257600080fd5b5061014f6004803603602081101561013957600080fd5b81019080803590602001909291905050506105a2565b6040518082815260200191505060405180910390f35b34801561017157600080fd5b506101a86004803603604081101561018857600080fd5b8101908080359060200190929190803590602001909291905050506105cb565b60405180848152602001838152602001828152602001935050505060405180910390f35b3480156101d857600080fd5b50610205600480360360208110156101ef57600080fd5b8101908080359060200190929190505050610634565b6040518082815260200191505060405180910390f35b34801561022757600080fd5b50610230610655565b005b6102726004803603606081101561024857600080fd5b810190808035906020019092919080359060200190929190803590602001909291905050506106f6565b005b34801561028057600080fd5b506102ad6004803603602081101561029757600080fd5b81019080803590602001909291905050506108e4565b604051808873ffffffffffffffffffffffffffffffffffffffff1681526020018773ffffffffffffffffffffffffffffffffffffffff16815260200186815260200185815260200184815260200183815260200182815260200197505050505050505060405180910390f35b34801561032557600080fd5b5061035c6004803603604081101561033c57600080fd5b8101908080359060200190929190803590602001909291905050506109e9565b6040518082815260200191505060405180910390f35b34801561037e57600080fd5b50610387610a1c565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156103bf57600080fd5b5061042c600480360360608110156103d657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a40565b005b34801561043a57600080fd5b50610443610b4a565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561048657808201518184015260208101905061046b565b505050509050019250505060405180910390f35b3480156104a657600080fd5b5061051b600480360360c08110156104bd57600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291908035906020019092919080359060200190929190505050610ba2565b6040518082815260200191505060405180910390f35b34801561053d57600080fd5b506105806004803603602081101561055457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f8d565b005b600060016000838152602001908152602001600020600401549050919050565b600080670de0b6b3a764000090506105c383826110dc90919063ffffffff16565b915050919050565b60008060006001600086815260200190815260200160002060030154600160008781526020019081526020016000206006015461062786600160008a81526020019081526020016000206005015461110290919063ffffffff16565b9250925092509250925092565b6002818154811061064157fe5b906000526020600020016000915090505481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146106ad57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f193505050501580156106f3573d6000803e3d6000fd5b50565b8060016000848152602001908152602001600020600301541015610782576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f4e6f7420456e6f75676820546f6b656e7300000000000000000000000000000081525060200191505060405180910390fd5b4260016000848152602001908152602001600020600601541161080d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f506f6f6c2045787069726564000000000000000000000000000000000000000081525060200191505060405180910390fd5b82341461081957600080fd5b61084281600160008581526020019081526020016000206005015461110290919063ffffffff16565b341461084d57600080fd5b600060016000848152602001908152602001600020905061089161087e82600401548461110290919063ffffffff16565b826003015461113190919063ffffffff16565b81600301819055506108de8160010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16336108d984600401548661110290919063ffffffff16565b611148565b50505050565b60008060008060008060006001600089815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600160008a815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600160008b815260200190815260200160002060050154600160008c815260200190815260200160002060060154600160008d815260200190815260200160002060020154600160008e815260200190815260200160002060070154600160008f8152602001908152602001600020600301549650965096509650965096509650919395979092949650565b6000610a146001600085815260200190815260200160002060050154836110dc90919063ffffffff16565b905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610a9857600080fd5b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610b0957600080fd5b505af1158015610b1d573d6000803e3d6000fd5b505050506040513d6020811015610b3357600080fd5b810190808051906020019092919050505050505050565b60606002805480602002602001604051908101604052809291908181526020018280548015610b9857602002820191906000526020600020905b815481526020019060010190808311610b84575b5050505050905090565b6000808511610c19576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f43616e6e6f7420537761702077697468203020546f6b656e730000000000000081525060200191505060405180910390fd5b428211610c8e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f43616e6e6f74205377617020666f72206265666f72652074696d65000000000081525060200191505060405180910390fd5b8573ffffffffffffffffffffffffffffffffffffffff166323b872dd3330886040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015610d1d57600080fd5b505af1158015610d31573d6000803e3d6000fd5b505050506040513d6020811015610d4757600080fd5b8101908080519060200190929190505050610dca576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f496e73756666696369656e7420546f6b656e20416c6c6f77616e63650000000081525060200191505060405180910390fd5b600115156001600089815260200190815260200160002060080160009054906101000a900460ff1615151415610e68576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f5377617020616c7265616479204578697374730000000000000000000000000081525060200191505060405180910390fd5b6000600160008981526020019081526020016000209050338160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550868160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508581600201819055508581600301819055508381600401819055508481600501819055508281600601819055506000816007018190555060018160080160006101000a81548160ff0219169083151502179055506002889080600181540180825580915050600190039060005260206000200160009091909190915055509695505050505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610fe557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561101f57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008082116110ea57600080fd5b60008284816110f557fe5b0490508091505092915050565b6000808284029050600084148061112157508284828161111e57fe5b04145b61112757fe5b8091505092915050565b60008282111561113d57fe5b818303905092915050565b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156111b957600080fd5b505af11580156111cd573d6000803e3d6000fd5b505050506040513d60208110156111e357600080fd5b81019080805190602001909291905050505050505056fea264697066735822122006ca4e950288ace5ce25f0a363973fa4ace59acb5a8cf3d66a1949c42cd0ddbd64736f6c634300060c0033
Deployed Bytecode
0x6080604052600436106100c25760003560e01c80634a0d89ba1161007f578063c02be4a611610059578063c02be4a6146103b3578063d6cfeae01461042e578063e5c7a6321461049a578063f2fde38b14610531576100c2565b80634a0d89ba14610274578063870c1c93146103195780638da5cb5b14610372576100c2565b806318284a69146100c7578063319b0cd21461011657806334e73122146101655780633bbf3378146101cc5780633ccfd60b1461021b57806340993b2614610232575b600080fd5b3480156100d357600080fd5b50610100600480360360208110156100ea57600080fd5b8101908080359060200190929190505050610582565b6040518082815260200191505060405180910390f35b34801561012257600080fd5b5061014f6004803603602081101561013957600080fd5b81019080803590602001909291905050506105a2565b6040518082815260200191505060405180910390f35b34801561017157600080fd5b506101a86004803603604081101561018857600080fd5b8101908080359060200190929190803590602001909291905050506105cb565b60405180848152602001838152602001828152602001935050505060405180910390f35b3480156101d857600080fd5b50610205600480360360208110156101ef57600080fd5b8101908080359060200190929190505050610634565b6040518082815260200191505060405180910390f35b34801561022757600080fd5b50610230610655565b005b6102726004803603606081101561024857600080fd5b810190808035906020019092919080359060200190929190803590602001909291905050506106f6565b005b34801561028057600080fd5b506102ad6004803603602081101561029757600080fd5b81019080803590602001909291905050506108e4565b604051808873ffffffffffffffffffffffffffffffffffffffff1681526020018773ffffffffffffffffffffffffffffffffffffffff16815260200186815260200185815260200184815260200183815260200182815260200197505050505050505060405180910390f35b34801561032557600080fd5b5061035c6004803603604081101561033c57600080fd5b8101908080359060200190929190803590602001909291905050506109e9565b6040518082815260200191505060405180910390f35b34801561037e57600080fd5b50610387610a1c565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156103bf57600080fd5b5061042c600480360360608110156103d657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a40565b005b34801561043a57600080fd5b50610443610b4a565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561048657808201518184015260208101905061046b565b505050509050019250505060405180910390f35b3480156104a657600080fd5b5061051b600480360360c08110156104bd57600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291908035906020019092919080359060200190929190505050610ba2565b6040518082815260200191505060405180910390f35b34801561053d57600080fd5b506105806004803603602081101561055457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f8d565b005b600060016000838152602001908152602001600020600401549050919050565b600080670de0b6b3a764000090506105c383826110dc90919063ffffffff16565b915050919050565b60008060006001600086815260200190815260200160002060030154600160008781526020019081526020016000206006015461062786600160008a81526020019081526020016000206005015461110290919063ffffffff16565b9250925092509250925092565b6002818154811061064157fe5b906000526020600020016000915090505481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146106ad57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f193505050501580156106f3573d6000803e3d6000fd5b50565b8060016000848152602001908152602001600020600301541015610782576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f4e6f7420456e6f75676820546f6b656e7300000000000000000000000000000081525060200191505060405180910390fd5b4260016000848152602001908152602001600020600601541161080d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f506f6f6c2045787069726564000000000000000000000000000000000000000081525060200191505060405180910390fd5b82341461081957600080fd5b61084281600160008581526020019081526020016000206005015461110290919063ffffffff16565b341461084d57600080fd5b600060016000848152602001908152602001600020905061089161087e82600401548461110290919063ffffffff16565b826003015461113190919063ffffffff16565b81600301819055506108de8160010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16336108d984600401548661110290919063ffffffff16565b611148565b50505050565b60008060008060008060006001600089815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600160008a815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600160008b815260200190815260200160002060050154600160008c815260200190815260200160002060060154600160008d815260200190815260200160002060020154600160008e815260200190815260200160002060070154600160008f8152602001908152602001600020600301549650965096509650965096509650919395979092949650565b6000610a146001600085815260200190815260200160002060050154836110dc90919063ffffffff16565b905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610a9857600080fd5b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610b0957600080fd5b505af1158015610b1d573d6000803e3d6000fd5b505050506040513d6020811015610b3357600080fd5b810190808051906020019092919050505050505050565b60606002805480602002602001604051908101604052809291908181526020018280548015610b9857602002820191906000526020600020905b815481526020019060010190808311610b84575b5050505050905090565b6000808511610c19576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f43616e6e6f7420537761702077697468203020546f6b656e730000000000000081525060200191505060405180910390fd5b428211610c8e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f43616e6e6f74205377617020666f72206265666f72652074696d65000000000081525060200191505060405180910390fd5b8573ffffffffffffffffffffffffffffffffffffffff166323b872dd3330886040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015610d1d57600080fd5b505af1158015610d31573d6000803e3d6000fd5b505050506040513d6020811015610d4757600080fd5b8101908080519060200190929190505050610dca576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f496e73756666696369656e7420546f6b656e20416c6c6f77616e63650000000081525060200191505060405180910390fd5b600115156001600089815260200190815260200160002060080160009054906101000a900460ff1615151415610e68576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f5377617020616c7265616479204578697374730000000000000000000000000081525060200191505060405180910390fd5b6000600160008981526020019081526020016000209050338160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550868160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508581600201819055508581600301819055508381600401819055508481600501819055508281600601819055506000816007018190555060018160080160006101000a81548160ff0219169083151502179055506002889080600181540180825580915050600190039060005260206000200160009091909190915055509695505050505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610fe557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561101f57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008082116110ea57600080fd5b60008284816110f557fe5b0490508091505092915050565b6000808284029050600084148061112157508284828161111e57fe5b04145b61112757fe5b8091505092915050565b60008282111561113d57fe5b818303905092915050565b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156111b957600080fd5b505af11580156111cd573d6000803e3d6000fd5b505050506040513d60208110156111e357600080fd5b81019080805190602001909291905050505050505056fea264697066735822122006ca4e950288ace5ce25f0a363973fa4ace59acb5a8cf3d66a1949c42cd0ddbd64736f6c634300060c0033
Deployed Bytecode Sourcemap
4978:4113:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7150:145;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7767:188;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7314:242;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5707:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8623:113;;;;;;;;;;;;;:::i;:::-;;7971:628;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;6795:341;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7577:170;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4001:20;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;8913:173;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5745:96;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5853:921;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4620:178;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;7150:145;7215:7;7257:5;:14;7263:7;7257:14;;;;;;;;;;;:23;;;7248:35;;7150:145;;;:::o;7767:188::-;7839:7;7868:12;7883:4;7868:19;;7916:25;7925:15;7916:4;:8;;:25;;;;:::i;:::-;7907:35;;;7767:188;;;:::o;7314:242::-;7396:7;7406;7416;7458:5;:14;7464:7;7458:14;;;;;;;;;;;:22;;;7483:5;:14;7489:7;7483:14;;;;;;;;;;;:23;;;7509:33;7533:8;7509:5;:14;7515:7;7509:14;;;;;;;;;;;:19;;;:23;;:33;;;;:::i;:::-;7449:95;;;;;;7314:242;;;;;:::o;5707:27::-;;;;;;;;;;;;;;;;;;;;;;;;;:::o;8623:113::-;4431:5;;;;;;;;;;4417:19;;:10;:19;;;4409:28;;;;;;8678:10:::1;:19;;:42;8698:21;8678:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;8623:113::o:0;7971:628::-;8099:8;8073:5;:14;8079:7;8073:14;;;;;;;;;;;:22;;;:34;;8065:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8177:3;8151:5;:14;8157:7;8151:14;;;;;;;;;;;:23;;;:29;8143:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8232:6;8219:9;:19;8211:28;;;;;;8274:33;8298:8;8274:5;:14;8280:7;8274:14;;;;;;;;;;;:19;;;:23;;:33;;;;:::i;:::-;8261:9;:46;8253:55;;;;;;8330:23;8356:5;:14;8362:7;8356:14;;;;;;;;;;;8330:40;;8412:57;8435:33;8448:10;:19;;;8435:8;:12;;:33;;;;:::i;:::-;8412:10;:18;;;:22;;:57;;;;:::i;:::-;8391:10;:18;;:78;;;;8486:89;8509:10;:16;;;;;;;;;;;;8527:10;8540:33;8553:10;:19;;;8540:8;:12;;:33;;;;:::i;:::-;8486:22;:89::i;:::-;7971:628;;;;:::o;6795:341::-;6852:7;6862;6872;6882;6892;6902;6912;6954:5;:14;6960:7;6954:14;;;;;;;;;;;:20;;;;;;;;;;;;6977:5;:14;6983:7;6977:14;;;;;;;;;;;:20;;;;;;;;;;;;7000:5;:14;7006:7;7000:14;;;;;;;;;;;:19;;;7022:5;:14;7028:7;7022:14;;;;;;;;;;;:23;;;7048:5;:14;7054:7;7048:14;;;;;;;;;;;:23;;;7074:5;:14;7080:7;7074:14;;;;;;;;;;;:21;;;7098:5;:14;7104:7;7098:14;;;;;;;;;;;:22;;;6946:178;;;;;;;;;;;;;;6795:341;;;;;;;;;:::o;7577:170::-;7659:7;7701:31;7712:5;:14;7718:7;7712:14;;;;;;;;;;;:19;;;7701:6;:10;;:31;;;;:::i;:::-;7692:41;;7577:170;;;;:::o;4001:20::-;;;;;;;;;;;;:::o;8913:173::-;4431:5;;;;;;;;;;4417:19;;:10;:19;;;4409:28;;;;;;9044:10:::1;9038:26;;;9065:3;9070:7;9038:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;8913:173:::0;;;:::o;5745:96::-;5790:16;5824:10;5817:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5745:96;:::o;5853:921::-;5984:7;6024:1;6013:8;:12;6005:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6085:3;6074:8;:14;6066:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6145:5;6139:25;;;6165:10;6185:4;6192:8;6139:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6131:103;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6288:4;6263:29;;:5;:13;6269:6;6263:13;;;;;;;;;;;:20;;;;;;;;;;;;:29;;;;6255:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6352:20;6375:5;:13;6381:6;6375:13;;;;;;;;;;;6352:36;;6416:10;6399:7;:13;;;:27;;;;;;;;;;;;;;;;;;6454:5;6437:7;:13;;;:22;;;;;;;;;;;;;;;;;;6491:8;6471:7;:16;;:28;;;;6530:8;6511:7;:15;;:27;;;;6570:8;6550:7;:16;;:28;;;;6606:4;6590:7;:12;;:20;;;;6642:8;6622:7;:16;;:28;;;;6680:1;6662:7;:14;;:19;;;;6711:4;6693:7;:14;;;:22;;;;;;;;;;;;;;;;;;6738:10;6754:6;6738:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5853:921;;;;;;;;;:::o;4620:178::-;4431:5;;;;;;;;;;4417:19;;:10;:19;;;4409:28;;;;;;4717:1:::1;4697:22;;:8;:22;;;;4689:31;;;::::0;::::1;;4760:8;4732:37;;4753:5;::::0;::::1;;;;;;;;4732:37;;;;;;;;;;;;4784:8;4776:5;::::0;:16:::1;;;;;;;;;;;;;;;;;;4620:178:::0;:::o;315:134::-;373:7;400:1;397;:4;389:14;;;;;;411:9;427:1;423;:5;;;;;;411:17;;442:1;435:8;;;315:134;;;;:::o;162:147::-;220:7;236:9;252:1;248;:5;236:17;;272:1;267;:6;:20;;;;286:1;281;277;:5;;;;;;:10;267:20;260:28;;;;302:1;295:8;;;162:147;;;;:::o;455:113::-;513:7;541:1;536;:6;;529:14;;;;561:1;557;:5;550:12;;455:113;;;;:::o;8748:149::-;8855:10;8849:26;;;8876:3;8881:7;8849:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8748:149;;;:::o
Swarm Source
ipfs://06ca4e950288ace5ce25f0a363973fa4ace59acb5a8cf3d66a1949c42cd0ddbd
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.