More Info
Private Name Tags
ContractCreator
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
BigSBsaleClaim
Compiler Version
v0.8.7+commit.e28d00a7
Contract Source Code (Solidity Multiple files format)
// SPDX-License-Identifier: UNLICENSE // Rzucam 70mln worków w tłum w tłum .. kto łapie ten jara ... XD /** Apes Together Strong! About BigShortBets DeFi project: We are creating a social&trading p2p platform that guarantees encrypted interaction between investors. Logging in is possible via a cryptocurrency wallet (e.g. Metamask). The security level is one comparable to the Tor network. https://bigsb.io/ - Our Tool https://bigshortbets.com - Project&Team info Video explainer: https://youtu.be/wbhUo5IvKdk Zaorski, You Son of a bitch I’m in … */ pragma solidity 0.8.7; import "./owned.sol"; import "./reentryGuard.sol"; import "./interfaces.sol"; contract BigSBsaleClaim is Owned, Guarded { /** Claiming contract for BigSB public sale @param sale address of sale contract @param token address of BigSB token tontract */ constructor(address sale, address token) { saleContract = sale; tokenContract = token; emergencyUnlock = block.timestamp + 720 days; } /// timestamp moving 2 years of last lock made uint256 public emergencyUnlock; address public immutable tokenContract; address public immutable saleContract; struct Lock { uint256 reflection; uint256 locktime; } /// Storage of user locks by address mapping(address => Lock[]) public userLocks; /** Add lock for user, can be called only by sale contract. Using contract reflection rate it can earn from transfer fees. @param user address of user @param reflection amount of reflection tokens @param locktime timestamp after which tokens can be released */ function addLock( address user, uint256 reflection, uint256 locktime ) external { require(msg.sender == saleContract, "Only sale contract"); userLocks[user].push(Lock(reflection, locktime)); emergencyUnlock = block.timestamp + 720 days; } /// claim all tokens than can be claimed function claim() external guarded { uint256 len = userLocks[msg.sender].length; require(len > 0, "Nothing locked"); uint256 i; uint256 timeNow = block.timestamp; uint256 amt; for (i; i < len; i++) { Lock memory l = userLocks[msg.sender][i]; if (timeNow > l.locktime && l.reflection > 0) { amt += IReflect(tokenContract).tokenFromReflection( l.reflection ); // tokens taken userLocks[msg.sender][i].reflection = 0; } } require(amt > 0, "Nothing to claim"); IERC20(tokenContract).transfer(msg.sender, amt); } /// return all user locks function getUserLocks(address user) external view returns (Lock[] memory) { return userLocks[user]; } /// return balance of user from all locks function balanceOf(address user) external view returns (uint256 amt) { uint256 len = userLocks[user].length; if (len == 0) return amt; uint256 i; for (i; i < len; i++) { amt += IReflect(tokenContract).tokenFromReflection( userLocks[user][i].reflection ); } return amt; } /// How many tokens user can claim now? function claimable(address user) external view returns (uint256 amt) { uint256 len = userLocks[user].length; if (len == 0) return amt; uint256 i; uint256 timeNow = block.timestamp; for (i; i < len; i++) { Lock memory l = userLocks[user][i]; if (timeNow > l.locktime) { amt += IReflect(tokenContract).tokenFromReflection( l.reflection ); } } return amt; } // // Emergency functions // /** Take ETH from contract */ function withdrawEth() external onlyOwner { payable(owner).transfer(address(this).balance); } /** Take any ERC20 from contract BigSB is possible after 2 years form last lock event */ function withdrawErc20(address token) external onlyOwner { if (token == tokenContract) { require(block.timestamp > emergencyUnlock, "Too soon"); } uint256 balance = IERC20(token).balanceOf(address(this)); require(balance > 0, "Nothing to withdraw"); // use broken IERC20 IUsdt(token).transfer(owner, balance); } } //This is fine!
// SPDX-License-Identifier: UNLICENSE pragma solidity ^0.8.7; /** * @dev Interface of the ERC20 standard as defined in the EIP. */ 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. * * IMPORTANT: 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 ); } // Reflection interface IReflect { function tokenFromReflection(uint256 rAmount) external view returns (uint256); function reflectionFromToken(uint256 tAmount, bool deductTransferFee) external view returns (uint256); function getRate() external view returns (uint256); } /// ChainLink ETH/USD oracle interface IChainLink { // chainlink ETH/USD oracle // answer|int256 : 216182781556 - 8 decimals function latestRoundData() external view returns ( uint80 roundId, int256 answer, uint256 startedAt, uint256 updatedAt, uint80 answeredInRound ); } /// USDT is not ERC-20 compliant, not returning true on transfers interface IUsdt { function transfer(address, uint256) external; function transferFrom( address, address, uint256 ) external; } // Check ETH send to first presale // Yes, there is a typo interface IPresale1 { function blanceOf(address user) external view returns (uint256 amt); } // Check tokens bought in second presale // There is bug in ETH deposits, we need handle it // Also "tokensBoughtOf" calculation is broken, so we do all math interface IPresale2 { function ethDepositOf(address user) external view returns (uint256 amt); function usdDepositOf(address user) external view returns (uint256 amt); } // Check final sale tokens bought interface ISale { function tokensBoughtOf(address user) external view returns (uint256 amt); } interface IClaimSale { function addLock( address user, uint256 reflection, uint256 locktime ) external; }
// SPDX-License-Identifier: UNLICENSE pragma solidity ^0.8.7; contract Owned { address public owner; address public newOwner; event OwnershipChanged(address from, address to); constructor() { owner = msg.sender; emit OwnershipChanged(address(0), msg.sender); } modifier onlyOwner() { require(msg.sender == owner, "Only owner"); _; } // owner can give super-rights to someone function giveOwnership(address user) external onlyOwner { require(user != address(0), "User renounceOwnership"); newOwner = user; } // new owner need to accept function acceptOwnership() external { require(msg.sender == newOwner, "Only NewOwner"); emit OwnershipChanged(owner, newOwner); owner = msg.sender; delete newOwner; } }
// SPDX-License-Identifier: UNLICENSE pragma solidity ^0.8.7; contract Guarded { uint256 constant NOT_ENTERED = 1; uint256 constant ENTERED = 2; uint256 entryState = NOT_ENTERED; modifier guarded() { require(entryState == NOT_ENTERED, "Reentry"); entryState = ENTERED; _; entryState = NOT_ENTERED; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"sale","type":"address"},{"internalType":"address","name":"token","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipChanged","type":"event"},{"inputs":[],"name":"acceptOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"reflection","type":"uint256"},{"internalType":"uint256","name":"locktime","type":"uint256"}],"name":"addLock","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"amt","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"claim","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"claimable","outputs":[{"internalType":"uint256","name":"amt","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"emergencyUnlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getUserLocks","outputs":[{"components":[{"internalType":"uint256","name":"reflection","type":"uint256"},{"internalType":"uint256","name":"locktime","type":"uint256"}],"internalType":"struct BigSBsaleClaim.Lock[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"giveOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"newOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"saleContract","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokenContract","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"userLocks","outputs":[{"internalType":"uint256","name":"reflection","type":"uint256"},{"internalType":"uint256","name":"locktime","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"withdrawErc20","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawEth","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60c0604052600160025534801561001557600080fd5b50604051611043380380611043833981016040819052610034916100d1565b600080546001600160a01b0319163390811782556040805192835260208301919091527f0384899bd253d83b23daa4d29aaa2efe0563d1132b43101e9ad667235aeb951b910160405180910390a16001600160601b0319606083811b821660a05282901b166080526100aa426303b53800610104565b6003555061012a9050565b80516001600160a01b03811681146100cc57600080fd5b919050565b600080604083850312156100e457600080fd5b6100ed836100b5565b91506100fb602084016100b5565b90509250929050565b6000821982111561012557634e487b7160e01b600052601160045260246000fd5b500190565b60805160601c60a05160601c610ec461017f600039600081816102290152610b8501526000818161015301528181610395015281816105570152818161068d0152818161074e01526109da0152610ec46000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c8063a0ef91df11610097578063d4ee1d9011610066578063d4ee1d9014610211578063daf6ca3014610224578063e3a0a1481461024b578063f2c399921461025e57600080fd5b8063a0ef91df146101bb578063aa33fedb146101c3578063c7e42b1b146101eb578063cc9ac376146101fe57600080fd5b806355a373d6116100d357806355a373d61461014e57806370a082311461018d57806379ba5097146101a05780638da5cb5b146101a857600080fd5b806323a35de9146100fa578063402914f5146101235780634e71d92d14610144575b600080fd5b61010d610108366004610d02565b610267565b60405161011a9190610dbc565b60405180910390f35b610136610131366004610d02565b6102f0565b60405190815260200161011a565b61014c61043f565b005b6101757f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161011a565b61013661019b366004610d02565b61071d565b61014c610856565b600054610175906001600160a01b031681565b61014c61090b565b6101d66101d1366004610d24565b610972565b6040805192835260208301919091520161011a565b61014c6101f9366004610d02565b6109ae565b61014c61020c366004610d4e565b610b7a565b600154610175906001600160a01b031681565b6101757f000000000000000000000000000000000000000000000000000000000000000081565b61014c610259366004610d02565b610c4b565b61013660035481565b6001600160a01b0381166000908152600460209081526040808320805482518185028101850190935280835260609492939192909184015b828210156102e55783829060005260206000209060020201604051806040016040529081600082015481526020016001820154815250508152602001906001019061029f565b505050509050919050565b6001600160a01b038116600090815260046020526040812054806103145750919050565b6000425b82821015610437576001600160a01b038516600090815260046020526040812080548490811061034a5761034a610e78565b60009182526020918290206040805180820190915260029092020180548252600101549181018290529150821115610424578051604051632d83811960e01b815260048101919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632d8381199060240160206040518083038186803b1580156103df57600080fd5b505afa1580156103f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104179190610da3565b6104219086610e2f565b94505b508161042f81610e47565b925050610318565b505050919050565b6001600254146104805760405162461bcd60e51b81526020600482015260076024820152665265656e74727960c81b60448201526064015b60405180910390fd5b6002805533600090815260046020526040902054806104d25760405162461bcd60e51b815260206004820152600e60248201526d139bdd1a1a5b99c81b1bd8dad95960921b6044820152606401610477565b600042815b8383101561062e5733600090815260046020526040812080548590811061050057610500610e78565b60009182526020918290206040805180820190915260029092020180548252600101549181018290529150831180156105395750805115155b1561061b578051604051632d83811960e01b815260048101919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632d8381199060240160206040518083038186803b1580156105a157600080fd5b505afa1580156105b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d99190610da3565b6105e39083610e2f565b336000908152600460205260408120805492945090918690811061060957610609610e78565b60009182526020909120600290910201555b508261062681610e47565b9350506104d7565b600081116106715760405162461bcd60e51b815260206004820152601060248201526f4e6f7468696e6720746f20636c61696d60801b6044820152606401610477565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb90604401602060405180830381600087803b1580156106d957600080fd5b505af11580156106ed573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107119190610d81565b50506001600255505050565b6001600160a01b038116600090815260046020526040812054806107415750919050565b60005b8181101561084f577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316632d83811960046000876001600160a01b03166001600160a01b0316815260200190815260200160002083815481106107b1576107b1610e78565b9060005260206000209060020201600001546040518263ffffffff1660e01b81526004016107e191815260200190565b60206040518083038186803b1580156107f957600080fd5b505afa15801561080d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108319190610da3565b61083b9084610e2f565b92508061084781610e47565b915050610744565b5050919050565b6001546001600160a01b031633146108a05760405162461bcd60e51b815260206004820152600d60248201526c27b7363c902732bba7bbb732b960991b6044820152606401610477565b600054600154604080516001600160a01b0393841681529290911660208301527f0384899bd253d83b23daa4d29aaa2efe0563d1132b43101e9ad667235aeb951b910160405180910390a1600080546001600160a01b03199081163317909155600180549091169055565b6000546001600160a01b031633146109355760405162461bcd60e51b815260040161047790610e0b565b600080546040516001600160a01b03909116914780156108fc02929091818181858888f1935050505015801561096f573d6000803e3d6000fd5b50565b6004602052816000526040600020818154811061098e57600080fd5b600091825260209091206002909102018054600190910154909250905082565b6000546001600160a01b031633146109d85760405162461bcd60e51b815260040161047790610e0b565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b03161415610a4e576003544211610a4e5760405162461bcd60e51b81526020600482015260086024820152672a37b79039b7b7b760c11b6044820152606401610477565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a082319060240160206040518083038186803b158015610a9057600080fd5b505afa158015610aa4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ac89190610da3565b905060008111610b105760405162461bcd60e51b81526020600482015260136024820152724e6f7468696e6720746f20776974686472617760681b6044820152606401610477565b60005460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529083169063a9059cbb90604401600060405180830381600087803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b505050505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610be75760405162461bcd60e51b815260206004820152601260248201527113db9b1e481cd85b194818dbdb9d1c9858dd60721b6044820152606401610477565b6001600160a01b0383166000908152600460209081526040808320815180830190925285825281830185815281546001818101845592865293909420915160029093029091019182559151910155610c43426303b53800610e2f565b600355505050565b6000546001600160a01b03163314610c755760405162461bcd60e51b815260040161047790610e0b565b6001600160a01b038116610cc45760405162461bcd60e51b81526020600482015260166024820152750557365722072656e6f756e63654f776e6572736869760541b6044820152606401610477565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b80356001600160a01b0381168114610cfd57600080fd5b919050565b600060208284031215610d1457600080fd5b610d1d82610ce6565b9392505050565b60008060408385031215610d3757600080fd5b610d4083610ce6565b946020939093013593505050565b600080600060608486031215610d6357600080fd5b610d6c84610ce6565b95602085013595506040909401359392505050565b600060208284031215610d9357600080fd5b81518015158114610d1d57600080fd5b600060208284031215610db557600080fd5b5051919050565b602080825282518282018190526000919060409081850190868401855b82811015610dfe57815180518552860151868501529284019290850190600101610dd9565b5091979650505050505050565b6020808252600a908201526927b7363c9037bbb732b960b11b604082015260600190565b60008219821115610e4257610e42610e62565b500190565b6000600019821415610e5b57610e5b610e62565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fdfea264697066735822122028d7fc522c64294bd2acacc00b353332b3e294bd44d3ae7007ac03e6d7cc76e464736f6c63430008070033000000000000000000000000286b2eb4f4dbf2dffc1fcb00bab547f103be5fd4000000000000000000000000131157c6760f78f7ddf877c0019eba175ba4b6f6
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100f55760003560e01c8063a0ef91df11610097578063d4ee1d9011610066578063d4ee1d9014610211578063daf6ca3014610224578063e3a0a1481461024b578063f2c399921461025e57600080fd5b8063a0ef91df146101bb578063aa33fedb146101c3578063c7e42b1b146101eb578063cc9ac376146101fe57600080fd5b806355a373d6116100d357806355a373d61461014e57806370a082311461018d57806379ba5097146101a05780638da5cb5b146101a857600080fd5b806323a35de9146100fa578063402914f5146101235780634e71d92d14610144575b600080fd5b61010d610108366004610d02565b610267565b60405161011a9190610dbc565b60405180910390f35b610136610131366004610d02565b6102f0565b60405190815260200161011a565b61014c61043f565b005b6101757f000000000000000000000000131157c6760f78f7ddf877c0019eba175ba4b6f681565b6040516001600160a01b03909116815260200161011a565b61013661019b366004610d02565b61071d565b61014c610856565b600054610175906001600160a01b031681565b61014c61090b565b6101d66101d1366004610d24565b610972565b6040805192835260208301919091520161011a565b61014c6101f9366004610d02565b6109ae565b61014c61020c366004610d4e565b610b7a565b600154610175906001600160a01b031681565b6101757f000000000000000000000000286b2eb4f4dbf2dffc1fcb00bab547f103be5fd481565b61014c610259366004610d02565b610c4b565b61013660035481565b6001600160a01b0381166000908152600460209081526040808320805482518185028101850190935280835260609492939192909184015b828210156102e55783829060005260206000209060020201604051806040016040529081600082015481526020016001820154815250508152602001906001019061029f565b505050509050919050565b6001600160a01b038116600090815260046020526040812054806103145750919050565b6000425b82821015610437576001600160a01b038516600090815260046020526040812080548490811061034a5761034a610e78565b60009182526020918290206040805180820190915260029092020180548252600101549181018290529150821115610424578051604051632d83811960e01b815260048101919091527f000000000000000000000000131157c6760f78f7ddf877c0019eba175ba4b6f66001600160a01b031690632d8381199060240160206040518083038186803b1580156103df57600080fd5b505afa1580156103f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104179190610da3565b6104219086610e2f565b94505b508161042f81610e47565b925050610318565b505050919050565b6001600254146104805760405162461bcd60e51b81526020600482015260076024820152665265656e74727960c81b60448201526064015b60405180910390fd5b6002805533600090815260046020526040902054806104d25760405162461bcd60e51b815260206004820152600e60248201526d139bdd1a1a5b99c81b1bd8dad95960921b6044820152606401610477565b600042815b8383101561062e5733600090815260046020526040812080548590811061050057610500610e78565b60009182526020918290206040805180820190915260029092020180548252600101549181018290529150831180156105395750805115155b1561061b578051604051632d83811960e01b815260048101919091527f000000000000000000000000131157c6760f78f7ddf877c0019eba175ba4b6f66001600160a01b031690632d8381199060240160206040518083038186803b1580156105a157600080fd5b505afa1580156105b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d99190610da3565b6105e39083610e2f565b336000908152600460205260408120805492945090918690811061060957610609610e78565b60009182526020909120600290910201555b508261062681610e47565b9350506104d7565b600081116106715760405162461bcd60e51b815260206004820152601060248201526f4e6f7468696e6720746f20636c61696d60801b6044820152606401610477565b60405163a9059cbb60e01b8152336004820152602481018290527f000000000000000000000000131157c6760f78f7ddf877c0019eba175ba4b6f66001600160a01b03169063a9059cbb90604401602060405180830381600087803b1580156106d957600080fd5b505af11580156106ed573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107119190610d81565b50506001600255505050565b6001600160a01b038116600090815260046020526040812054806107415750919050565b60005b8181101561084f577f000000000000000000000000131157c6760f78f7ddf877c0019eba175ba4b6f66001600160a01b0316632d83811960046000876001600160a01b03166001600160a01b0316815260200190815260200160002083815481106107b1576107b1610e78565b9060005260206000209060020201600001546040518263ffffffff1660e01b81526004016107e191815260200190565b60206040518083038186803b1580156107f957600080fd5b505afa15801561080d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108319190610da3565b61083b9084610e2f565b92508061084781610e47565b915050610744565b5050919050565b6001546001600160a01b031633146108a05760405162461bcd60e51b815260206004820152600d60248201526c27b7363c902732bba7bbb732b960991b6044820152606401610477565b600054600154604080516001600160a01b0393841681529290911660208301527f0384899bd253d83b23daa4d29aaa2efe0563d1132b43101e9ad667235aeb951b910160405180910390a1600080546001600160a01b03199081163317909155600180549091169055565b6000546001600160a01b031633146109355760405162461bcd60e51b815260040161047790610e0b565b600080546040516001600160a01b03909116914780156108fc02929091818181858888f1935050505015801561096f573d6000803e3d6000fd5b50565b6004602052816000526040600020818154811061098e57600080fd5b600091825260209091206002909102018054600190910154909250905082565b6000546001600160a01b031633146109d85760405162461bcd60e51b815260040161047790610e0b565b7f000000000000000000000000131157c6760f78f7ddf877c0019eba175ba4b6f66001600160a01b0316816001600160a01b03161415610a4e576003544211610a4e5760405162461bcd60e51b81526020600482015260086024820152672a37b79039b7b7b760c11b6044820152606401610477565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a082319060240160206040518083038186803b158015610a9057600080fd5b505afa158015610aa4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ac89190610da3565b905060008111610b105760405162461bcd60e51b81526020600482015260136024820152724e6f7468696e6720746f20776974686472617760681b6044820152606401610477565b60005460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529083169063a9059cbb90604401600060405180830381600087803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b505050505050565b336001600160a01b037f000000000000000000000000286b2eb4f4dbf2dffc1fcb00bab547f103be5fd41614610be75760405162461bcd60e51b815260206004820152601260248201527113db9b1e481cd85b194818dbdb9d1c9858dd60721b6044820152606401610477565b6001600160a01b0383166000908152600460209081526040808320815180830190925285825281830185815281546001818101845592865293909420915160029093029091019182559151910155610c43426303b53800610e2f565b600355505050565b6000546001600160a01b03163314610c755760405162461bcd60e51b815260040161047790610e0b565b6001600160a01b038116610cc45760405162461bcd60e51b81526020600482015260166024820152750557365722072656e6f756e63654f776e6572736869760541b6044820152606401610477565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b80356001600160a01b0381168114610cfd57600080fd5b919050565b600060208284031215610d1457600080fd5b610d1d82610ce6565b9392505050565b60008060408385031215610d3757600080fd5b610d4083610ce6565b946020939093013593505050565b600080600060608486031215610d6357600080fd5b610d6c84610ce6565b95602085013595506040909401359392505050565b600060208284031215610d9357600080fd5b81518015158114610d1d57600080fd5b600060208284031215610db557600080fd5b5051919050565b602080825282518282018190526000919060409081850190868401855b82811015610dfe57815180518552860151868501529284019290850190600101610dd9565b5091979650505050505050565b6020808252600a908201526927b7363c9037bbb732b960b11b604082015260600190565b60008219821115610e4257610e42610e62565b500190565b6000600019821415610e5b57610e5b610e62565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fdfea264697066735822122028d7fc522c64294bd2acacc00b353332b3e294bd44d3ae7007ac03e6d7cc76e464736f6c63430008070033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000286b2eb4f4dbf2dffc1fcb00bab547f103be5fd4000000000000000000000000131157c6760f78f7ddf877c0019eba175ba4b6f6
-----Decoded View---------------
Arg [0] : sale (address): 0x286b2eb4f4DBF2dFFc1FcB00BAB547f103be5fd4
Arg [1] : token (address): 0x131157c6760f78f7dDF877C0019Eba175BA4b6F6
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000286b2eb4f4dbf2dffc1fcb00bab547f103be5fd4
Arg [1] : 000000000000000000000000131157c6760f78f7ddf877c0019eba175ba4b6f6
Deployed Bytecode Sourcemap
668:3890:2:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2785:113;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3362:502;;;;;;:::i;:::-;;:::i;:::-;;;6253:25:4;;;6241:2;6226:18;3362:502:2;6107:177:4;2047:702:2;;;:::i;:::-;;1134:38;;;;;;;;-1:-1:-1;;;;;1604:32:4;;;1586:51;;1574:2;1559:18;1134:38:2;1440:203:4;2950:362:2;;;;;;:::i;:::-;;:::i;638:202:1:-;;;:::i;85:20::-;;;;;-1:-1:-1;;;;;85:20:1;;;3957:105:2;;;:::i;1342:43::-;;;;;;:::i;:::-;;:::i;:::-;;;;6463:25:4;;;6519:2;6504:18;;6497:34;;;;6436:18;1342:43:2;6289:248:4;4181:375:2;;;;;;:::i;:::-;;:::i;1702:294::-;;;;;;:::i;:::-;;:::i;111:23:1:-;;;;;-1:-1:-1;;;;;111:23:1;;;1178:37:2;;;;;449:151:1;;;;;;:::i;:::-;;:::i;1097:30:2:-;;;;;;2785:113;-1:-1:-1;;;;;2876:15:2;;;;;;:9;:15;;;;;;;;2869:22;;;;;;;;;;;;;;;;;2844:13;;2869:22;;2876:15;;2869:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2785:113;;;:::o;3362:502::-;-1:-1:-1;;;;;3455:15:2;;3418:11;3455:15;;;:9;:15;;;;;:22;3491:8;3487:24;;3501:10;3362:502;;;:::o;3487:24::-;3521:9;3558:15;3583:255;3595:3;3591:1;:7;3583:255;;;-1:-1:-1;;;;;3635:15:2;;3619:13;3635:15;;;:9;:15;;;;;:18;;3651:1;;3635:18;;;;;;:::i;:::-;;;;;;;;;;3619:34;;;;;;;;;3635:18;;;;;3619:34;;;;;;;;;;;;;;-1:-1:-1;3671:20:2;;3667:161;;;3783:12;;3718:95;;-1:-1:-1;;;3718:95:2;;;;;6253:25:4;;;;3727:13:2;-1:-1:-1;;;;;3718:43:2;;;;6226:18:4;;3718:95:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3711:102;;;;:::i;:::-;;;3667:161;-1:-1:-1;3600:3:2;;;;:::i;:::-;;;;3583:255;;;3847:10;;;3362:502;;;:::o;2047:702::-;118:1:3;235:10;;:25;227:45;;;;-1:-1:-1;;;227:45:3;;3223:2:4;227:45:3;;;3205:21:4;3262:1;3242:18;;;3235:29;-1:-1:-1;;;3280:18:4;;;3273:37;3327:18;;227:45:3;;;;;;;;;152:1;282:20;;2115:10:2::1;2091:11;2105:21:::0;;;:9:::1;:21;::::0;;;;:28;2151:7;2143:34:::1;;;::::0;-1:-1:-1;;;2143:34:2;;4590:2:4;2143:34:2::1;::::0;::::1;4572:21:4::0;4629:2;4609:18;;;4602:30;-1:-1:-1;;;4648:18:4;;;4641:44;4702:18;;2143:34:2::1;4388:338:4::0;2143:34:2::1;2187:9;2224:15;2187:9:::0;2270:370:::1;2282:3;2278:1;:7;2270:370;;;2332:10;2306:13;2322:21:::0;;;:9:::1;:21;::::0;;;;:24;;2344:1;;2322:24;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;2306:40:::1;::::0;;;;::::1;::::0;;;2322:24:::1;::::0;;::::1;;2306:40:::0;;;;::::1;;::::0;;;::::1;::::0;;;;-1:-1:-1;2364:20:2;::::1;:40:::0;::::1;;;-1:-1:-1::0;2388:12:2;;:16;;2364:40:::1;2360:270;;;2496:12:::0;;2431:95:::1;::::0;-1:-1:-1;;;2431:95:2;;::::1;::::0;::::1;6253:25:4::0;;;;2440:13:2::1;-1:-1:-1::0;;;;;2431:43:2::1;::::0;::::1;::::0;6226:18:4;;2431:95:2::1;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2424:102;::::0;;::::1;:::i;:::-;2586:10;2614:1;2576:21:::0;;;:9:::1;:21;::::0;;;;:24;;2424:102;;-1:-1:-1;2614:1:2;;2598;;2576:24;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;;::::1;;:39:::0;2360:270:::1;-1:-1:-1::0;2287:3:2;::::1;::::0;::::1;:::i;:::-;;;;2270:370;;;2663:1;2657:3;:7;2649:36;;;::::0;-1:-1:-1;;;2649:36:2;;4245:2:4;2649:36:2::1;::::0;::::1;4227:21:4::0;4284:2;4264:18;;;4257:30;-1:-1:-1;;;4303:18:4;;;4296:46;4359:18;;2649:36:2::1;4043:340:4::0;2649:36:2::1;2695:47;::::0;-1:-1:-1;;;2695:47:2;;2726:10:::1;2695:47;::::0;::::1;2131:51:4::0;2198:18;;;2191:34;;;2702:13:2::1;-1:-1:-1::0;;;;;2695:30:2::1;::::0;::::1;::::0;2104:18:4;;2695:47:2::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;118:1:3;323:10;:24;-1:-1:-1;;;2047:702:2:o;2950:362::-;-1:-1:-1;;;;;3043:15:2;;3006:11;3043:15;;;:9;:15;;;;;:22;3079:8;3075:24;;3089:10;2950:362;;;:::o;3075:24::-;3109:9;3128:158;3140:3;3136:1;:7;3128:158;;;3180:13;-1:-1:-1;;;;;3171:43:2;;3232:9;:15;3242:4;-1:-1:-1;;;;;3232:15:2;-1:-1:-1;;;;;3232:15:2;;;;;;;;;;;;3248:1;3232:18;;;;;;;;:::i;:::-;;;;;;;;;;;:29;;;3171:104;;;;;;;;;;;;;6253:25:4;;6241:2;6226:18;;6107:177;3171:104:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3164:111;;;;:::i;:::-;;-1:-1:-1;3145:3:2;;;;:::i;:::-;;;;3128:158;;;3295:10;;2950:362;;;:::o;638:202:1:-;706:8;;-1:-1:-1;;;;;706:8:1;692:10;:22;684:48;;;;-1:-1:-1;;;684:48:1;;5967:2:4;684:48:1;;;5949:21:4;6006:2;5986:18;;;5979:30;-1:-1:-1;;;6025:18:4;;;6018:43;6078:18;;684:48:1;5765:337:4;684:48:1;764:5;;;771:8;747:33;;;-1:-1:-1;;;;;764:5:1;;;1860:34:4;;771:8:1;;;;1925:2:4;1910:18;;1903:43;747:33:1;;1795:18:4;747:33:1;;;;;;;790:5;:18;;-1:-1:-1;;;;;;790:18:1;;;798:10;790:18;;;;;818:15;;;;;;;638:202::o;3957:105:2:-;359:5:1;;-1:-1:-1;;;;;359:5:1;345:10;:19;337:42;;;;-1:-1:-1;;;337:42:1;;;;;;;:::i;:::-;4017:5:2::1;::::0;;4009:46:::1;::::0;-1:-1:-1;;;;;4017:5:2;;::::1;::::0;4033:21:::1;4009:46:::0;::::1;;;::::0;4033:21;;4009:46;4017:5;4009:46;4033:21;4017:5;4009:46;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;3957:105::o:0;1342:43::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1342:43:2;-1:-1:-1;1342:43:2;:::o;4181:375::-;359:5:1;;-1:-1:-1;;;;;359:5:1;345:10;:19;337:42;;;;-1:-1:-1;;;337:42:1;;;;;;;:::i;:::-;4261:13:2::1;-1:-1:-1::0;;;;;4252:22:2::1;:5;-1:-1:-1::0;;;;;4252:22:2::1;;4248:107;;;4316:15;;4298;:33;4290:54;;;::::0;-1:-1:-1;;;4290:54:2;;4933:2:4;4290:54:2::1;::::0;::::1;4915:21:4::0;4972:1;4952:18;;;4945:29;-1:-1:-1;;;4990:18:4;;;4983:38;5038:18;;4290:54:2::1;4731:331:4::0;4290:54:2::1;4382:38;::::0;-1:-1:-1;;;4382:38:2;;4414:4:::1;4382:38;::::0;::::1;1586:51:4::0;4364:15:2::1;::::0;-1:-1:-1;;;;;4382:23:2;::::1;::::0;::::1;::::0;1559:18:4;;4382:38:2::1;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4364:56;;4448:1;4438:7;:11;4430:43;;;::::0;-1:-1:-1;;;4430:43:2;;3897:2:4;4430:43:2::1;::::0;::::1;3879:21:4::0;3936:2;3916:18;;;3909:30;-1:-1:-1;;;3955:18:4;;;3948:49;4014:18;;4430:43:2::1;3695:343:4::0;4430:43:2::1;4534:5;::::0;4512:37:::1;::::0;-1:-1:-1;;;4512:37:2;;-1:-1:-1;;;;;4534:5:2;;::::1;4512:37;::::0;::::1;2131:51:4::0;2198:18;;;2191:34;;;4512:21:2;;::::1;::::0;::::1;::::0;2104:18:4;;4512:37:2::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;4238:318;4181:375:::0;:::o;1702:294::-;1828:10;-1:-1:-1;;;;;1842:12:2;1828:26;;1820:57;;;;-1:-1:-1;;;1820:57:2;;5620:2:4;1820:57:2;;;5602:21:4;5659:2;5639:18;;;5632:30;-1:-1:-1;;;5678:18:4;;;5671:48;5736:18;;1820:57:2;5418:342:4;1820:57:2;-1:-1:-1;;;;;1887:15:2;;;;;;:9;:15;;;;;;;;1908:26;;;;;;;;;;;;;;;;;1887:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1963:26;:15;1981:8;1963:26;:::i;:::-;1945:15;:44;-1:-1:-1;;;1702:294:2:o;449:151:1:-;359:5;;-1:-1:-1;;;;;359:5:1;345:10;:19;337:42;;;;-1:-1:-1;;;337:42:1;;;;;;;:::i;:::-;-1:-1:-1;;;;;523:18:1;::::1;515:53;;;::::0;-1:-1:-1;;;515:53:1;;5269:2:4;515:53:1::1;::::0;::::1;5251:21:4::0;5308:2;5288:18;;;5281:30;-1:-1:-1;;;5327:18:4;;;5320:52;5389:18;;515:53:1::1;5067:346:4::0;515:53:1::1;578:8;:15:::0;;-1:-1:-1;;;;;;578:15:1::1;-1:-1:-1::0;;;;;578:15:1;;;::::1;::::0;;;::::1;::::0;;449:151::o;14:173:4:-;82:20;;-1:-1:-1;;;;;131:31:4;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:186::-;251:6;304:2;292:9;283:7;279:23;275:32;272:52;;;320:1;317;310:12;272:52;343:29;362:9;343:29;:::i;:::-;333:39;192:186;-1:-1:-1;;;192:186:4:o;383:254::-;451:6;459;512:2;500:9;491:7;487:23;483:32;480:52;;;528:1;525;518:12;480:52;551:29;570:9;551:29;:::i;:::-;541:39;627:2;612:18;;;;599:32;;-1:-1:-1;;;383:254:4:o;642:322::-;719:6;727;735;788:2;776:9;767:7;763:23;759:32;756:52;;;804:1;801;794:12;756:52;827:29;846:9;827:29;:::i;:::-;817:39;903:2;888:18;;875:32;;-1:-1:-1;954:2:4;939:18;;;926:32;;642:322;-1:-1:-1;;;642:322:4:o;969:277::-;1036:6;1089:2;1077:9;1068:7;1064:23;1060:32;1057:52;;;1105:1;1102;1095:12;1057:52;1137:9;1131:16;1190:5;1183:13;1176:21;1169:5;1166:32;1156:60;;1212:1;1209;1202:12;1251:184;1321:6;1374:2;1362:9;1353:7;1349:23;1345:32;1342:52;;;1390:1;1387;1380:12;1342:52;-1:-1:-1;1413:16:4;;1251:184;-1:-1:-1;1251:184:4:o;2236:780::-;2449:2;2501:21;;;2571:13;;2474:18;;;2593:22;;;2420:4;;2449:2;2634;;2652:18;;;;2693:15;;;2420:4;2736:254;2750:6;2747:1;2744:13;2736:254;;;2809:13;;2847:9;;2835:22;;2897:11;;2891:18;2877:12;;;2870:40;2930:12;;;;2965:15;;;;2772:1;2765:9;2736:254;;;-1:-1:-1;3007:3:4;;2236:780;-1:-1:-1;;;;;;;2236:780:4:o;3356:334::-;3558:2;3540:21;;;3597:2;3577:18;;;3570:30;-1:-1:-1;;;3631:2:4;3616:18;;3609:40;3681:2;3666:18;;3356:334::o;6542:128::-;6582:3;6613:1;6609:6;6606:1;6603:13;6600:39;;;6619:18;;:::i;:::-;-1:-1:-1;6655:9:4;;6542:128::o;6675:135::-;6714:3;-1:-1:-1;;6735:17:4;;6732:43;;;6755:18;;:::i;:::-;-1:-1:-1;6802:1:4;6791:13;;6675:135::o;6815:127::-;6876:10;6871:3;6867:20;6864:1;6857:31;6907:4;6904:1;6897:15;6931:4;6928:1;6921:15;6947:127;7008:10;7003:3;6999:20;6996:1;6989:31;7039:4;7036:1;7029:15;7063:4;7060:1;7053:15
Swarm Source
ipfs://28d7fc522c64294bd2acacc00b353332b3e294bd44d3ae7007ac03e6d7cc76e4
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | 100.00% | $0.242589 | 251.2131 | $60.94 |
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.