Feature Tip: Add private address tag to any address under My Name Tag !
Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 2,725 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Cancel Listing | 8802085 | 1903 days ago | IN | 0 ETH | 0.00002867 | ||||
Cancel Listing | 8801511 | 1904 days ago | IN | 0 ETH | 0.0002294 | ||||
Set Paused | 8800928 | 1904 days ago | IN | 0 ETH | 0.00021752 | ||||
Withdraw Funds | 8800919 | 1904 days ago | IN | 0 ETH | 0.00024027 | ||||
Cancel Listing | 8800313 | 1904 days ago | IN | 0 ETH | 0.00010322 | ||||
Add Listing | 8800110 | 1904 days ago | IN | 0 ETH | 0.00017193 | ||||
Buy Raffle | 8800024 | 1904 days ago | IN | 0.1 ETH | 0.00127407 | ||||
Add Listing | 8799981 | 1904 days ago | IN | 0 ETH | 0.00057278 | ||||
Add Listing | 8799963 | 1904 days ago | IN | 0 ETH | 0.00011462 | ||||
Buy Raffle | 8799951 | 1904 days ago | IN | 0.005 ETH | 0.00050937 | ||||
Add Listing | 8799942 | 1904 days ago | IN | 0 ETH | 0.00114492 | ||||
Cancel Listing | 8799939 | 1904 days ago | IN | 0 ETH | 0.00017205 | ||||
Cancel Listing | 8799936 | 1904 days ago | IN | 0 ETH | 0.00017205 | ||||
Add Listing | 8799928 | 1904 days ago | IN | 0 ETH | 0.00045822 | ||||
Add Listing | 8799919 | 1904 days ago | IN | 0 ETH | 0.00011455 | ||||
Add Listing | 8799918 | 1904 days ago | IN | 0 ETH | 0.00017193 | ||||
Cancel Listing | 8799916 | 1904 days ago | IN | 0 ETH | 0.0001147 | ||||
Add Listing | 8799907 | 1904 days ago | IN | 0 ETH | 0.00045848 | ||||
Add Listing | 8799905 | 1904 days ago | IN | 0 ETH | 0.00022911 | ||||
Add Listing | 8799897 | 1904 days ago | IN | 0 ETH | 0.00045822 | ||||
Add Listing | 8799896 | 1904 days ago | IN | 0 ETH | 0.00002724 | ||||
Add Listing | 8799895 | 1904 days ago | IN | 0 ETH | 0.00057278 | ||||
Cancel Listing | 8799894 | 1904 days ago | IN | 0 ETH | 0.00005161 | ||||
Add Listing | 8799876 | 1904 days ago | IN | 0 ETH | 0.00026347 | ||||
Buy Raffle | 8799875 | 1904 days ago | IN | 0.275 ETH | 0.00074258 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
8800919 | 1904 days ago | 0.65865504 ETH | ||||
8800024 | 1904 days ago | 0.1 ETH | ||||
8799951 | 1904 days ago | 0.005 ETH | ||||
8799875 | 1904 days ago | 0.2 ETH | ||||
8799875 | 1904 days ago | 0.05 ETH | ||||
8799649 | 1904 days ago | 0.288666 ETH | ||||
8799633 | 1904 days ago | 0.04 ETH | ||||
8799620 | 1904 days ago | 0.00099995 ETH | ||||
8799535 | 1904 days ago | 0.01159 ETH | ||||
8799535 | 1904 days ago | 0.19 ETH | ||||
8799535 | 1904 days ago | 0.011077 ETH | ||||
8799535 | 1904 days ago | 0.19 ETH | ||||
8799535 | 1904 days ago | 0.4142 ETH | ||||
8799535 | 1904 days ago | 0.049552 ETH | ||||
8799535 | 1904 days ago | 0.01672 ETH | ||||
8799535 | 1904 days ago | 0.095 ETH | ||||
8799535 | 1904 days ago | 0.09 ETH | ||||
8799535 | 1904 days ago | 0.01470518 ETH | ||||
8799501 | 1904 days ago | 0.161991 ETH | ||||
8799457 | 1904 days ago | 0.02734048 ETH | ||||
8799457 | 1904 days ago | 0.116658 ETH | ||||
8799418 | 1904 days ago | 0.014688 ETH | ||||
8799418 | 1904 days ago | 0.129312 ETH | ||||
8799382 | 1904 days ago | 0.018 ETH | ||||
8799378 | 1904 days ago | 0.072 ETH |
Loading...
Loading
Contract Name:
RaffleTokenExchange
Compiler Version
v0.5.11+commit.c082d0b4
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2019-09-22 */ pragma solidity =0.5.11; // * Gods Unchained Raffle Token Exchange // // * Version 1.0 // // * A dedicated contract for listing (selling) and buying raffle tokens. // // * https://gu.cards contract ERC20Interface { function transferFrom(address from, address to, uint tokens) public returns (bool success); } contract IERC20Interface { function allowance(address owner, address spender) external view returns (uint256); function balanceOf(address account) external view returns (uint256); } contract RaffleToken is ERC20Interface, IERC20Interface {} /** * @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; } } contract RaffleTokenExchange { using SafeMath for uint256; //////// V A R I A B L E S // // The raffle token contract // RaffleToken constant public raffleContract = RaffleToken(0x0C8cDC16973E88FAb31DD0FCB844DdF0e1056dE2); // // In case the exchange is paused. // bool public paused; // // Standard contract ownership. // address payable public owner; // // Next id for the next listing // uint256 public nextListingId; // // All raffle token listings mapped by id // mapping (uint256 => Listing) public listingsById; // // All purchases // mapping (uint256 => Purchase) public purchasesById; // // Next id for the next purche // uint256 public nextPurchaseId; //////// S T R U C T S // // A listing of raffle tokens // struct Listing { // // price per token (in wei). // uint256 pricePerToken; // // // How many tokens? (Original Amount) // uint256 initialAmount; // // How many tokens left? (Maybe altered due to partial sales) // uint256 amountLeft; // // Listed by whom? // address payable seller; // // Active/Inactive listing? // bool active; } // // A purchase of raffle tokens // struct Purchase { // // How many tokens? // uint256 totalAmount; // // total price payed // uint256 totalAmountPayed; // // When did the purchase happen? // uint256 timestamp; } //////// EVENTS // // // event Listed(uint256 id, uint256 pricePerToken, uint256 initialAmount, address seller); event Canceled(uint256 id); event Purchased(uint256 id, uint256 totalAmount, uint256 totalAmountPayed, uint256 timestamp); //////// M O D I F I E R S // // Invokable only by contract owner. // modifier onlyContractOwner { require(msg.sender == owner, "Function called by non-owner."); _; } // // Invokable only if exchange is not paused. // modifier onlyUnpaused { require(paused == false, "Exchange is paused."); _; } //////// C O N S T R U C T O R // constructor() public { owner = msg.sender; nextListingId = 916; nextPurchaseId = 344; } //////// F U N C T I O N S // // buyRaffle // function buyRaffle(uint256[] calldata amounts, uint256[] calldata listingIds) payable external onlyUnpaused { require(amounts.length == listingIds.length, "You have to provide amounts for every single listing!"); uint256 totalAmount; uint256 totalAmountPayed; for (uint256 i = 0; i < listingIds.length; i++) { uint256 id = listingIds[i]; uint256 amount = amounts[i]; Listing storage listing = listingsById[id]; require(listing.active, "Listing is not active anymore!"); listing.amountLeft = listing.amountLeft.sub(amount); require(listing.amountLeft >= 0, "Amount left needs to be higher than 0."); if(listing.amountLeft == 0) { listing.active = false; } uint256 amountToPay = listing.pricePerToken * amount; listing.seller.transfer(amountToPay); totalAmountPayed = totalAmountPayed.add(amountToPay); totalAmount = totalAmount.add(amount); require(raffleContract.transferFrom(listing.seller, msg.sender, amount), 'Token transfer failed!'); } require(totalAmountPayed <= msg.value, 'Overpayed!'); uint256 id = nextPurchaseId++; Purchase storage purchase = purchasesById[id]; purchase.totalAmount = totalAmount; purchase.totalAmountPayed = totalAmountPayed; purchase.timestamp = now; emit Purchased(id, totalAmount, totalAmountPayed, now); } // // Add listing // function addListing(uint256 initialAmount, uint256 pricePerToken) external onlyUnpaused { require(raffleContract.balanceOf(msg.sender) >= initialAmount, "Amount to sell is higher than balance!"); require(raffleContract.allowance(msg.sender, address(this)) >= initialAmount, "Allowance is to small (increase allowance)!"); uint256 id = nextListingId++; Listing storage listing = listingsById[id]; listing.initialAmount = initialAmount; listing.amountLeft = initialAmount; listing.pricePerToken = pricePerToken; listing.seller = msg.sender; listing.active = true; emit Listed(id, listing.pricePerToken, listing.initialAmount, listing.seller); } // // Cancel listing // function cancelListing(uint256 id) external { Listing storage listing = listingsById[id]; require(listing.active, "This listing was turned inactive already!"); require(listing.seller == msg.sender || owner == msg.sender, "Only the listing owner or the contract owner can cancel the listing!"); listing.active = false; emit Canceled(id); } // // Set paused // function setPaused(bool value) external onlyContractOwner { paused = value; } // // Funds withdrawal to cover operational costs // function withdrawFunds(uint256 withdrawAmount) external onlyContractOwner { owner.transfer(withdrawAmount); } // // Contract may be destroyed only when there is nothing else going on. // All funds are transferred to contract owner. // function kill() external onlyContractOwner { selfdestruct(owner); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"listingsById","outputs":[{"internalType":"uint256","name":"pricePerToken","type":"uint256"},{"internalType":"uint256","name":"initialAmount","type":"uint256"},{"internalType":"uint256","name":"amountLeft","type":"uint256"},{"internalType":"address payable","name":"seller","type":"address"},{"internalType":"bool","name":"active","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"withdrawAmount","type":"uint256"}],"name":"withdrawFunds","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"bool","name":"value","type":"bool"}],"name":"setPaused","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"nextPurchaseId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"cancelListing","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256[]","name":"amounts","type":"uint256[]"},{"internalType":"uint256[]","name":"listingIds","type":"uint256[]"}],"name":"buyRaffle","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[],"name":"kill","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"raffleContract","outputs":[{"internalType":"contract RaffleToken","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"initialAmount","type":"uint256"},{"internalType":"uint256","name":"pricePerToken","type":"uint256"}],"name":"addListing","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"internalType":"address payable","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"nextListingId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"purchasesById","outputs":[{"internalType":"uint256","name":"totalAmount","type":"uint256"},{"internalType":"uint256","name":"totalAmountPayed","type":"uint256"},{"internalType":"uint256","name":"timestamp","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"pricePerToken","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"initialAmount","type":"uint256"},{"indexed":false,"internalType":"address","name":"seller","type":"address"}],"name":"Listed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"id","type":"uint256"}],"name":"Canceled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"totalAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"totalAmountPayed","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"Purchased","type":"event"}]
Contract Creation Code
608060405234801561001057600080fd5b50600080546101003302610100600160a81b0319909116179055610394600155610158600455610eba806100456000396000f3fe6080604052600436106100c25760003560e01c806341c0e1b51161007f578063836cf6e911610059578063836cf6e9146103015780638da5cb5b14610331578063aaccf1ec14610346578063e72fc8a11461035b576100c2565b806341c0e1b5146102925780635c975abb146102a75780635d7916ed146102d0576100c2565b806310103cdc146100c7578063155dd5ee1461012757806316c38b3c1461015357806323b4a7a31461017f578063305a67a8146101a657806334bafd08146101d0575b600080fd5b3480156100d357600080fd5b506100f1600480360360208110156100ea57600080fd5b50356103a3565b604080519586526020860194909452848401929092526001600160a01b0316606084015215156080830152519081900360a00190f35b34801561013357600080fd5b506101516004803603602081101561014a57600080fd5b50356103e1565b005b34801561015f57600080fd5b506101516004803603602081101561017657600080fd5b50351515610486565b34801561018b57600080fd5b506101946104fd565b60408051918252519081900360200190f35b3480156101b257600080fd5b50610151600480360360208110156101c957600080fd5b5035610503565b610151600480360360408110156101e657600080fd5b81019060208101813564010000000081111561020157600080fd5b82018360208201111561021357600080fd5b8035906020019184602083028401116401000000008311171561023557600080fd5b91939092909160208101903564010000000081111561025357600080fd5b82018360208201111561026557600080fd5b8035906020019184602083028401116401000000008311171561028757600080fd5b509092509050610606565b34801561029e57600080fd5b50610151610990565b3480156102b357600080fd5b506102bc610a07565b604080519115158252519081900360200190f35b3480156102dc57600080fd5b506102e5610a10565b604080516001600160a01b039092168252519081900360200190f35b34801561030d57600080fd5b506101516004803603604081101561032457600080fd5b5080359060200135610a28565b34801561033d57600080fd5b506102e5610c99565b34801561035257600080fd5b50610194610cad565b34801561036757600080fd5b506103856004803603602081101561037e57600080fd5b5035610cb3565b60408051938452602084019290925282820152519081900360600190f35b60026020819052600091825260409091208054600182015492820154600390920154909291906001600160a01b03811690600160a01b900460ff1685565b60005461010090046001600160a01b03163314610445576040805162461bcd60e51b815260206004820152601d60248201527f46756e6374696f6e2063616c6c6564206279206e6f6e2d6f776e65722e000000604482015290519081900360640190fd5b600080546040516101009091046001600160a01b0316916108fc841502918491818181858888f19350505050158015610482573d6000803e3d6000fd5b5050565b60005461010090046001600160a01b031633146104ea576040805162461bcd60e51b815260206004820152601d60248201527f46756e6374696f6e2063616c6c6564206279206e6f6e2d6f776e65722e000000604482015290519081900360640190fd5b6000805460ff1916911515919091179055565b60045481565b60008181526002602052604090206003810154600160a01b900460ff1661055b5760405162461bcd60e51b8152600401808060200182810382526029815260200180610e5d6029913960400191505060405180910390fd5b60038101546001600160a01b0316331480610585575060005461010090046001600160a01b031633145b6105c05760405162461bcd60e51b8152600401808060200182810382526044815260200180610d936044913960600191505060405180910390fd5b60038101805460ff60a01b191690556040805183815290517f829a8683c544ad289ce92d3ce06e9ebad69b18a6916e60ec766c2c217461d8e99181900360200190a15050565b60005460ff1615610654576040805162461bcd60e51b815260206004820152601360248201527222bc31b430b733b29034b9903830bab9b2b21760691b604482015290519081900360640190fd5b8281146106925760405162461bcd60e51b8152600401808060200182810382526035815260200180610dd76035913960400191505060405180910390fd5b600080805b838110156108cf5760008585838181106106ad57fe5b90506020020135905060008888848181106106c457fe5b600085815260026020908152604090912060038101549290910293909301359350600160a01b900460ff169050610742576040805162461bcd60e51b815260206004820152601e60248201527f4c697374696e67206973206e6f742061637469766520616e796d6f7265210000604482015290519081900360640190fd5b6002810154610757908363ffffffff610cd416565b600282018190556107725760038101805460ff60a01b191690555b80546003820154604051918402916001600160a01b039091169082156108fc029083906000818181858888f193505050501580156107b4573d6000803e3d6000fd5b506107c5868263ffffffff610d3116565b95506107d7878463ffffffff610d3116565b6003830154604080516323b872dd60e01b81526001600160a01b0390921660048301523360248301526044820186905251919850730c8cdc16973e88fab31dd0fcb844ddf0e1056de2916323b872dd916064808201926020929091908290030181600087803b15801561084957600080fd5b505af115801561085d573d6000803e3d6000fd5b505050506040513d602081101561087357600080fd5b50516108bf576040805162461bcd60e51b8152602060048201526016602482015275546f6b656e207472616e73666572206661696c65642160501b604482015290519081900360640190fd5b5050600190920191506106979050565b5034811115610912576040805162461bcd60e51b815260206004820152600a6024820152694f76657270617965642160b01b604482015290519081900360640190fd5b60048054600180820190925560008181526003602090815260409182902086815593840185905542600285018190558251848152918201879052818301869052606082015290519192917f84502bfec963904254d319aee2b2b0dbcaecfd446f7a912b6b6bc4b9d9b3bb2e9181900360800190a15050505050505050565b60005461010090046001600160a01b031633146109f4576040805162461bcd60e51b815260206004820152601d60248201527f46756e6374696f6e2063616c6c6564206279206e6f6e2d6f776e65722e000000604482015290519081900360640190fd5b60005461010090046001600160a01b0316ff5b60005460ff1681565b730c8cdc16973e88fab31dd0fcb844ddf0e1056de281565b60005460ff1615610a76576040805162461bcd60e51b815260206004820152601360248201527222bc31b430b733b29034b9903830bab9b2b21760691b604482015290519081900360640190fd5b604080516370a0823160e01b815233600482015290518391730c8cdc16973e88fab31dd0fcb844ddf0e1056de2916370a0823191602480820192602092909190829003018186803b158015610aca57600080fd5b505afa158015610ade573d6000803e3d6000fd5b505050506040513d6020811015610af457600080fd5b50511015610b335760405162461bcd60e51b8152600401808060200182810382526026815260200180610e376026913960400191505060405180910390fd5b60408051636eb1769f60e11b815233600482015230602482015290518391730c8cdc16973e88fab31dd0fcb844ddf0e1056de29163dd62ed3e91604480820192602092909190829003018186803b158015610b8d57600080fd5b505afa158015610ba1573d6000803e3d6000fd5b505050506040513d6020811015610bb757600080fd5b50511015610bf65760405162461bcd60e51b815260040180806020018281038252602b815260200180610e0c602b913960400191505060405180910390fd5b60018054808201825560008181526002602081815260409283902094850187905590840186905584845560038401805460ff60a01b196001600160a01b0319909116331716600160a01b179081905582518481529182018690528183018790526001600160a01b0316606082015290519192917ffc1c0dadda05af971023a71c686d9fbfa12ebe1c41d696c041672f9c0ac4c2b69181900360800190a150505050565b60005461010090046001600160a01b031681565b60015481565b60036020526000908152604090208054600182015460029092015490919083565b600082821115610d2b576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b600082820183811015610d8b576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b939250505056fe4f6e6c7920746865206c697374696e67206f776e6572206f722074686520636f6e7472616374206f776e65722063616e2063616e63656c20746865206c697374696e6721596f75206861766520746f2070726f7669646520616d6f756e747320666f722065766572792073696e676c65206c697374696e6721416c6c6f77616e636520697320746f20736d616c6c2028696e63726561736520616c6c6f77616e63652921416d6f756e7420746f2073656c6c20697320686967686572207468616e2062616c616e63652154686973206c697374696e6720776173207475726e656420696e61637469766520616c726561647921a265627a7a7231582097573ef32e4b299ca2ba39de4b050b159470d8ae0e2e7e736eec63d04f8615f764736f6c634300050b0032
Deployed Bytecode
0x6080604052600436106100c25760003560e01c806341c0e1b51161007f578063836cf6e911610059578063836cf6e9146103015780638da5cb5b14610331578063aaccf1ec14610346578063e72fc8a11461035b576100c2565b806341c0e1b5146102925780635c975abb146102a75780635d7916ed146102d0576100c2565b806310103cdc146100c7578063155dd5ee1461012757806316c38b3c1461015357806323b4a7a31461017f578063305a67a8146101a657806334bafd08146101d0575b600080fd5b3480156100d357600080fd5b506100f1600480360360208110156100ea57600080fd5b50356103a3565b604080519586526020860194909452848401929092526001600160a01b0316606084015215156080830152519081900360a00190f35b34801561013357600080fd5b506101516004803603602081101561014a57600080fd5b50356103e1565b005b34801561015f57600080fd5b506101516004803603602081101561017657600080fd5b50351515610486565b34801561018b57600080fd5b506101946104fd565b60408051918252519081900360200190f35b3480156101b257600080fd5b50610151600480360360208110156101c957600080fd5b5035610503565b610151600480360360408110156101e657600080fd5b81019060208101813564010000000081111561020157600080fd5b82018360208201111561021357600080fd5b8035906020019184602083028401116401000000008311171561023557600080fd5b91939092909160208101903564010000000081111561025357600080fd5b82018360208201111561026557600080fd5b8035906020019184602083028401116401000000008311171561028757600080fd5b509092509050610606565b34801561029e57600080fd5b50610151610990565b3480156102b357600080fd5b506102bc610a07565b604080519115158252519081900360200190f35b3480156102dc57600080fd5b506102e5610a10565b604080516001600160a01b039092168252519081900360200190f35b34801561030d57600080fd5b506101516004803603604081101561032457600080fd5b5080359060200135610a28565b34801561033d57600080fd5b506102e5610c99565b34801561035257600080fd5b50610194610cad565b34801561036757600080fd5b506103856004803603602081101561037e57600080fd5b5035610cb3565b60408051938452602084019290925282820152519081900360600190f35b60026020819052600091825260409091208054600182015492820154600390920154909291906001600160a01b03811690600160a01b900460ff1685565b60005461010090046001600160a01b03163314610445576040805162461bcd60e51b815260206004820152601d60248201527f46756e6374696f6e2063616c6c6564206279206e6f6e2d6f776e65722e000000604482015290519081900360640190fd5b600080546040516101009091046001600160a01b0316916108fc841502918491818181858888f19350505050158015610482573d6000803e3d6000fd5b5050565b60005461010090046001600160a01b031633146104ea576040805162461bcd60e51b815260206004820152601d60248201527f46756e6374696f6e2063616c6c6564206279206e6f6e2d6f776e65722e000000604482015290519081900360640190fd5b6000805460ff1916911515919091179055565b60045481565b60008181526002602052604090206003810154600160a01b900460ff1661055b5760405162461bcd60e51b8152600401808060200182810382526029815260200180610e5d6029913960400191505060405180910390fd5b60038101546001600160a01b0316331480610585575060005461010090046001600160a01b031633145b6105c05760405162461bcd60e51b8152600401808060200182810382526044815260200180610d936044913960600191505060405180910390fd5b60038101805460ff60a01b191690556040805183815290517f829a8683c544ad289ce92d3ce06e9ebad69b18a6916e60ec766c2c217461d8e99181900360200190a15050565b60005460ff1615610654576040805162461bcd60e51b815260206004820152601360248201527222bc31b430b733b29034b9903830bab9b2b21760691b604482015290519081900360640190fd5b8281146106925760405162461bcd60e51b8152600401808060200182810382526035815260200180610dd76035913960400191505060405180910390fd5b600080805b838110156108cf5760008585838181106106ad57fe5b90506020020135905060008888848181106106c457fe5b600085815260026020908152604090912060038101549290910293909301359350600160a01b900460ff169050610742576040805162461bcd60e51b815260206004820152601e60248201527f4c697374696e67206973206e6f742061637469766520616e796d6f7265210000604482015290519081900360640190fd5b6002810154610757908363ffffffff610cd416565b600282018190556107725760038101805460ff60a01b191690555b80546003820154604051918402916001600160a01b039091169082156108fc029083906000818181858888f193505050501580156107b4573d6000803e3d6000fd5b506107c5868263ffffffff610d3116565b95506107d7878463ffffffff610d3116565b6003830154604080516323b872dd60e01b81526001600160a01b0390921660048301523360248301526044820186905251919850730c8cdc16973e88fab31dd0fcb844ddf0e1056de2916323b872dd916064808201926020929091908290030181600087803b15801561084957600080fd5b505af115801561085d573d6000803e3d6000fd5b505050506040513d602081101561087357600080fd5b50516108bf576040805162461bcd60e51b8152602060048201526016602482015275546f6b656e207472616e73666572206661696c65642160501b604482015290519081900360640190fd5b5050600190920191506106979050565b5034811115610912576040805162461bcd60e51b815260206004820152600a6024820152694f76657270617965642160b01b604482015290519081900360640190fd5b60048054600180820190925560008181526003602090815260409182902086815593840185905542600285018190558251848152918201879052818301869052606082015290519192917f84502bfec963904254d319aee2b2b0dbcaecfd446f7a912b6b6bc4b9d9b3bb2e9181900360800190a15050505050505050565b60005461010090046001600160a01b031633146109f4576040805162461bcd60e51b815260206004820152601d60248201527f46756e6374696f6e2063616c6c6564206279206e6f6e2d6f776e65722e000000604482015290519081900360640190fd5b60005461010090046001600160a01b0316ff5b60005460ff1681565b730c8cdc16973e88fab31dd0fcb844ddf0e1056de281565b60005460ff1615610a76576040805162461bcd60e51b815260206004820152601360248201527222bc31b430b733b29034b9903830bab9b2b21760691b604482015290519081900360640190fd5b604080516370a0823160e01b815233600482015290518391730c8cdc16973e88fab31dd0fcb844ddf0e1056de2916370a0823191602480820192602092909190829003018186803b158015610aca57600080fd5b505afa158015610ade573d6000803e3d6000fd5b505050506040513d6020811015610af457600080fd5b50511015610b335760405162461bcd60e51b8152600401808060200182810382526026815260200180610e376026913960400191505060405180910390fd5b60408051636eb1769f60e11b815233600482015230602482015290518391730c8cdc16973e88fab31dd0fcb844ddf0e1056de29163dd62ed3e91604480820192602092909190829003018186803b158015610b8d57600080fd5b505afa158015610ba1573d6000803e3d6000fd5b505050506040513d6020811015610bb757600080fd5b50511015610bf65760405162461bcd60e51b815260040180806020018281038252602b815260200180610e0c602b913960400191505060405180910390fd5b60018054808201825560008181526002602081815260409283902094850187905590840186905584845560038401805460ff60a01b196001600160a01b0319909116331716600160a01b179081905582518481529182018690528183018790526001600160a01b0316606082015290519192917ffc1c0dadda05af971023a71c686d9fbfa12ebe1c41d696c041672f9c0ac4c2b69181900360800190a150505050565b60005461010090046001600160a01b031681565b60015481565b60036020526000908152604090208054600182015460029092015490919083565b600082821115610d2b576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b600082820183811015610d8b576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b939250505056fe4f6e6c7920746865206c697374696e67206f776e6572206f722074686520636f6e7472616374206f776e65722063616e2063616e63656c20746865206c697374696e6721596f75206861766520746f2070726f7669646520616d6f756e747320666f722065766572792073696e676c65206c697374696e6721416c6c6f77616e636520697320746f20736d616c6c2028696e63726561736520616c6c6f77616e63652921416d6f756e7420746f2073656c6c20697320686967686572207468616e2062616c616e63652154686973206c697374696e6720776173207475726e656420696e61637469766520616c726561647921a265627a7a7231582097573ef32e4b299ca2ba39de4b050b159470d8ae0e2e7e736eec63d04f8615f764736f6c634300050b0032
Deployed Bytecode Sourcemap
4198:5965:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4778:48;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4778:48:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;4778:48:0;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4778:48:0;;;;;;;;;;;;;;;;;;;;9804:123;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9804:123:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9804:123:0;;:::i;:::-;;9639:91;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9639:91:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9639:91:0;;;;:::i;4980:29::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4980:29:0;;;:::i;:::-;;;;;;;;;;;;;;;;9210:388;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9210:388:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9210:388:0;;:::i;6878:1508::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6878:1508:0;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;6878:1508:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;6878:1508:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;6878:1508:0;;;;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;6878:1508:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;6878:1508:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;-1:-1;6878:1508:0;;-1:-1:-1;6878:1508:0;-1:-1:-1;6878:1508:0;:::i;10079:81::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10079:81:0;;;:::i;4514:18::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4514:18:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;4351:100;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4351:100:0;;;:::i;:::-;;;;-1:-1:-1;;;;;4351:100:0;;;;;;;;;;;;;;8428:737;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8428:737:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8428:737:0;;;;;;;:::i;4592:28::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4592:28:0;;;:::i;4680:::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4680:28:0;;;:::i;4871:50::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4871:50:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;4871:50:0;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;4778:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4778:48:0;;;-1:-1:-1;;;4778:48:0;;;;;:::o;9804:123::-;6402:5;;;;;-1:-1:-1;;;;;6402:5:0;6388:10;:19;6380:61;;;;;-1:-1:-1;;;6380:61:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;9889:5;;;:30;;:5;;;;-1:-1:-1;;;;;9889:5:0;;:30;;;;;;;;:5;:30;;:5;:30;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9889:30:0;9804:123;:::o;9639:91::-;6402:5;;;;;-1:-1:-1;;;;;6402:5:0;6388:10;:19;6380:61;;;;;-1:-1:-1;;;6380:61:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;9708:6;:14;;-1:-1:-1;;9708:14:0;;;;;;;;;;9639:91::o;4980:29::-;;;;:::o;9210:388::-;9265:23;9291:16;;;:12;:16;;;;;9326:14;;;;-1:-1:-1;;;9326:14:0;;;;9318:68;;;;-1:-1:-1;;;9318:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9405:14;;;;-1:-1:-1;;;;;9405:14:0;9423:10;9405:28;;:51;;-1:-1:-1;9437:5:0;;;;;-1:-1:-1;;;;;9437:5:0;9446:10;9437:19;9405:51;9397:132;;;;-1:-1:-1;;;9397:132:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9540:14;;;:22;;-1:-1:-1;;;;9540:22:0;;;9578:12;;;;;;;;;;;;;;;;;9210:388;;:::o;6878:1508::-;6574:6;;;;:15;6566:47;;;;;-1:-1:-1;;;6566:47:0;;;;;;;;;;;;-1:-1:-1;;;6566:47:0;;;;;;;;;;;;;;;7005:35;;;6997:101;;;;-1:-1:-1;;;6997:101:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7109:19;;;7174:846;7194:21;;;7174:846;;;7237:10;7250;;7261:1;7250:13;;;;;;;;;;;;;7237:26;;7278:14;7295:7;;7303:1;7295:10;;;;;;;7320:23;7346:16;;;:12;7295:10;7346:16;;;;;;;7385:14;;;;7295:10;;;;;;;;;;-1:-1:-1;;;;7385:14:0;;;;;-1:-1:-1;7377:57:0;;;;;-1:-1:-1;;;7377:57:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;7470:18;;;;:30;;7493:6;7470:30;:22;:30;:::i;:::-;7449:18;;;:51;;;7604:55;;7634:14;;;:22;;-1:-1:-1;;;;7634:22:0;;;7604:55;7695:21;;7740:14;;;;:36;;7695:30;;;;-1:-1:-1;;;;;7740:14:0;;;;:36;;;;;7695:30;;7673:19;7740:36;7673:19;7740:36;7695:30;7740:14;:36;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;7810:33:0;:16;7831:11;7810:33;:20;:33;:::i;:::-;7791:52;-1:-1:-1;7872:23:0;:11;7888:6;7872:23;:15;:23;:::i;:::-;7946:14;;;;7918:63;;;-1:-1:-1;;;7918:63:0;;-1:-1:-1;;;;;7946:14:0;;;7918:63;;;;7962:10;7918:63;;;;;;;;;;;7858:37;;-1:-1:-1;4408:42:0;;7918:27;;:63;;;;;;;;;;;;;;;-1:-1:-1;4408:42:0;7918:63;;;5:2:-1;;;;30:1;27;20:12;5:2;7918:63:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7918:63:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7918:63:0;7910:98;;;;;-1:-1:-1;;;7910:98:0;;;;;;;;;;;;-1:-1:-1;;;7910:98:0;;;;;;;;;;;;;;;-1:-1:-1;;7217:3:0;;;;;-1:-1:-1;7174:846:0;;-1:-1:-1;7174:846:0;;;8058:9;8038:16;:29;;8030:52;;;;;-1:-1:-1;;;8030:52:0;;;;;;;;;;;;-1:-1:-1;;;8030:52:0;;;;;;;;;;;;;;;8106:14;:16;;;;;;;;;8093:10;8161:17;;;:13;:17;;;;;;;;;8189:34;;;8234:25;;;:44;;;8310:3;8289:18;;;:24;;;8329:49;;;;;;;;;;;;;;;;;;;;;;;8106:16;;8161:17;8329:49;;;;;;;;;6624:1;;;;6878:1508;;;;:::o;10079:81::-;6402:5;;;;;-1:-1:-1;;;;;6402:5:0;6388:10;:19;6380:61;;;;;-1:-1:-1;;;6380:61:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;10146:5;;;;;-1:-1:-1;;;;;10146:5:0;10133:19;4514:18;;;;;;:::o;4351:100::-;4408:42;4351:100;:::o;8428:737::-;6574:6;;;;:15;6566:47;;;;;-1:-1:-1;;;6566:47:0;;;;;;;;;;;;-1:-1:-1;;;6566:47:0;;;;;;;;;;;;;;;8535:36;;;-1:-1:-1;;;8535:36:0;;8560:10;8535:36;;;;;;8575:13;;4408:42;;8535:24;;:36;;;;;;;;;;;;;;;4408:42;8535:36;;;5:2:-1;;;;30:1;27;20:12;5:2;8535:36:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8535:36:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8535:36:0;:53;;8527:104;;;;-1:-1:-1;;;8527:104:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8650:51;;;-1:-1:-1;;;8650:51:0;;8675:10;8650:51;;;;8695:4;8650:51;;;;;;8705:13;;4408:42;;8650:24;;:51;;;;;;;;;;;;;;;4408:42;8650:51;;;5:2:-1;;;;30:1;27;20:12;5:2;8650:51:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8650:51:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8650:51:0;:68;;8642:124;;;;-1:-1:-1;;;8642:124:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8790:13;:15;;;;;;;8777:10;8842:16;;;:12;:16;;;;;;;;;8869:21;;;:37;;;8917:18;;;:34;;;8962:37;;;9010:14;;;:27;;-1:-1:-1;;;;;;;;;;9010:27:0;;;9027:10;9010:27;9048:21;-1:-1:-1;;;9048:21:0;;;;;9085:72;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9142:14:0;9085:72;;;;;;8790:15;;8842:16;9085:72;;;;;;;;;6624:1;;8428:737;;:::o;4592:28::-;;;;;;-1:-1:-1;;;;;4592:28:0;;:::o;4680:::-;;;;:::o;4871:50::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1876:184::-;1934:7;1967:1;1962;:6;;1954:49;;;;;-1:-1:-1;;;1954:49:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2026:5:0;;;1876:184::o;1420:181::-;1478:7;1510:5;;;1534:6;;;;1526:46;;;;;-1:-1:-1;;;1526:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;1592:1;1420:181;-1:-1:-1;;;1420:181:0:o
Swarm Source
bzzr://97573ef32e4b299ca2ba39de4b050b159470d8ae0e2e7e736eec63d04f8615f7
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.