Feature Tip: Add private address tag to any address under My Name Tag !
More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 228 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Approve | 20457633 | 26 days ago | IN | 0 ETH | 0.00020607 | ||||
Approve | 20373077 | 38 days ago | IN | 0 ETH | 0.00010212 | ||||
Approve | 20260823 | 53 days ago | IN | 0 ETH | 0.00026415 | ||||
Approve | 19937500 | 98 days ago | IN | 0 ETH | 0.00028313 | ||||
Approve | 18938314 | 238 days ago | IN | 0 ETH | 0.00069581 | ||||
Approve | 18194745 | 343 days ago | IN | 0 ETH | 0.00034814 | ||||
Approve | 17654652 | 418 days ago | IN | 0 ETH | 0.00069517 | ||||
Approve | 17644320 | 420 days ago | IN | 0 ETH | 0.00304425 | ||||
Approve | 17631370 | 422 days ago | IN | 0 ETH | 0.00225427 | ||||
Approve | 17599947 | 426 days ago | IN | 0 ETH | 0.0008477 | ||||
Approve | 17586191 | 428 days ago | IN | 0 ETH | 0.00116563 | ||||
Approve | 17580814 | 429 days ago | IN | 0 ETH | 0.00106967 | ||||
Approve | 17574562 | 430 days ago | IN | 0 ETH | 0.00058307 | ||||
Approve | 17574546 | 430 days ago | IN | 0 ETH | 0.00067594 | ||||
Approve | 17573104 | 430 days ago | IN | 0 ETH | 0.00052337 | ||||
Approve | 17568976 | 430 days ago | IN | 0 ETH | 0.00065254 | ||||
Approve | 17567751 | 430 days ago | IN | 0 ETH | 0.00075354 | ||||
Approve | 17567658 | 431 days ago | IN | 0 ETH | 0.00052978 | ||||
Transfer | 17566887 | 431 days ago | IN | 0 ETH | 0.00227103 | ||||
Approve | 17566321 | 431 days ago | IN | 0 ETH | 0.00061925 | ||||
Approve | 17565988 | 431 days ago | IN | 0 ETH | 0.00075446 | ||||
Approve | 17565864 | 431 days ago | IN | 0 ETH | 0.00075241 | ||||
Approve | 17565845 | 431 days ago | IN | 0 ETH | 0.00083887 | ||||
Approve | 17565792 | 431 days ago | IN | 0 ETH | 0.00071474 | ||||
Approve | 17565763 | 431 days ago | IN | 0 ETH | 0.00080557 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
18938316 | 238 days ago | 0.001705 ETH | ||||
18938316 | 238 days ago | 0.001705 ETH | ||||
17751448 | 405 days ago | 0.00182948 ETH | ||||
17751448 | 405 days ago | 0.00182948 ETH | ||||
17732696 | 407 days ago | 0.00186237 ETH | ||||
17732696 | 407 days ago | 0.00186237 ETH | ||||
17654655 | 418 days ago | 0.00205902 ETH | ||||
17654655 | 418 days ago | 0.00205902 ETH | ||||
17636320 | 421 days ago | 0.00235707 ETH | ||||
17636320 | 421 days ago | 0.00235707 ETH | ||||
17623541 | 423 days ago | 0.0015835 ETH | ||||
17623541 | 423 days ago | 0.0015835 ETH | ||||
17623541 | 423 days ago | 0.00118386 ETH | ||||
17623541 | 423 days ago | 0.00118386 ETH | ||||
17623540 | 423 days ago | 0.00271274 ETH | ||||
17623540 | 423 days ago | 0.00271274 ETH | ||||
17623540 | 423 days ago | 0.00293285 ETH | ||||
17623540 | 423 days ago | 0.00293285 ETH | ||||
17599951 | 426 days ago | 0.00341978 ETH | ||||
17599951 | 426 days ago | 0.00341978 ETH | ||||
17594570 | 427 days ago | 0.00414629 ETH | ||||
17594570 | 427 days ago | 0.00414629 ETH | ||||
17580815 | 429 days ago | 0.00467343 ETH | ||||
17580815 | 429 days ago | 0.00467343 ETH | ||||
17580076 | 429 days ago | 0.00493897 ETH |
Loading...
Loading
Contract Name:
Gemaakt
Compiler Version
v0.8.19+commit.7dd6d404
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT //telegram: https://t.me/Gemaaktoken pragma solidity ^0.8.17; import "@openzeppelin/contracts/access/Ownable.sol"; import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import "@openzeppelin/contracts/utils/math/SafeMath.sol"; interface IUniswapV2Factory { function createPair( address tokenA, address tokenB ) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); } contract Gemaakt is Context, IERC20, Ownable { using SafeMath for uint256; IUniswapV2Router02 private uniswapV2Router; struct TokenHolder { address holder; uint256 balance; } TokenHolder[] tokenHolders; uint256 firstBlock; uint256 tokenHoldersCount; address private uniswapV2Pair; address public adminWallet; address payable public taxWallet; string private constant _name = "\u05d1\u05e0\u05e7 \u05e6\u05d9\u05d5\u05df"; string private constant _symbol = "Gemaakt"; uint256 public buyTax = 3; uint256 public sellTax = 3; uint8 private constant _decimals = 18; uint256 private constant _tTotal = 1089 * 10 ** _decimals; // 1089 uint256 public maxTxAmount = _tTotal.div(100); // 1% of total supply uint256 public maxWalletSize = _tTotal.mul(2).div(100); // 2% of total supply uint256 public initialTokenAmountForLp = _tTotal; // 100% of total supply uint256 public taxSwapThreshold = _tTotal.div(1000); // 0.1% of total supply uint256 public maxTaxSwap = _tTotal.div(1000); // 0.1% of total supply bool private tradingOpen = false; bool private inSwap = false; bool private swapEnabled = false; mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; mapping(address => bool) private _isExcludedFromFee; mapping(address => bool) private _isExitHolder; mapping(address => uint256) private _tokenHolderIndex; modifier lockTheSwap() { inSwap = true; _; inSwap = false; } event MaxTxAmountUpdated(uint maxTxAmount); constructor() { adminWallet = _msgSender(); taxWallet = payable(0xb3Ce086ba3c8f45BCD0fcCC1027A0c9F2046Ad41); _balances[_msgSender()] = _tTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[taxWallet] = true; setTokenHolders(_msgSender()); emit Transfer(address(0), _msgSender(), _tTotal); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function transfer( address recipient, uint256 amount ) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance( address owner, address spender ) public view override returns (uint256) { return _allowances[owner][spender]; } function approve( address spender, uint256 amount ) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom( address sender, address recipient, uint256 amount ) public override returns (bool) { _transfer(sender, recipient, amount); _approve( sender, _msgSender(), _allowances[sender][_msgSender()].sub( amount, "ERC20: transfer amount exceeds allowance" ) ); return true; } function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _transfer(address from, address to, uint256 amount) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); if (from != owner() && to != owner()) { if ( from == uniswapV2Pair && to != address(uniswapV2Router) && !_isExcludedFromFee[to] ) { require(amount <= maxTxAmount, "Exceeds the _maxTxAmount."); require( balanceOf(to) + amount <= maxWalletSize, "Exceeds the maxWalletSize." ); if (firstBlock + 1 > block.number) { require(!isContract(to)); } } if (to != uniswapV2Pair && !_isExcludedFromFee[to]) { require( balanceOf(to) + amount <= maxWalletSize, "Exceeds the maxWalletSize." ); } uint256 contractTokenBalance = balanceOf(address(this)); if ( !inSwap && to == uniswapV2Pair && swapEnabled && contractTokenBalance > taxSwapThreshold ) { swapTokensForEth( min(amount, min(contractTokenBalance, maxTaxSwap)) ); uint256 contractETHBalance = address(this).balance; if (contractETHBalance > 0) { sendETHToFee(address(this).balance); } } } uint256 taxAmount = 0; if ( (_isExcludedFromFee[from] || _isExcludedFromFee[to]) || (from != uniswapV2Pair && to != uniswapV2Pair) ) { taxAmount = 0; } else { //Set Fee for Buys if (from == uniswapV2Pair && to != address(uniswapV2Router)) { taxAmount = amount .mul(buyTax) .div(100); } //Set Fee for Sells if (to == uniswapV2Pair && from != address(uniswapV2Router)) { taxAmount = amount .mul(sellTax) .div(100); } } if (taxAmount > 0) { _balances[address(this)] = _balances[address(this)].add(taxAmount); setTokenHolders(address(this)); emit Transfer(from, address(this), taxAmount); } _balances[from] = _balances[from].sub(amount); _balances[to] = _balances[to].add(amount.sub(taxAmount)); setTokenHolders(from); setTokenHolders(to); emit Transfer(from, to, amount.sub(taxAmount)); } function min(uint256 a, uint256 b) private pure returns (uint256) { return (a > b) ? b : a; } function isContract(address account) private view returns (bool) { uint256 size; assembly { size := extcodesize(account) } return size > 0; } function swapTokensForEth(uint256 _tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), _tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( _tokenAmount, 0, path, address(this), block.timestamp ); } function manualswap(uint256 _tokenAmount) external { require( (msg.sender == adminWallet) || (msg.sender == owner()), "Only admin can call this method." ); require( _tokenAmount <= balanceOf(address(this)), "Exceeds the maxWalletSize." ); swapTokensForEth(_tokenAmount); } function withdrawFees() external { require( (msg.sender == adminWallet) || (msg.sender == owner()), "Only admin can call this method." ); uint256 contractETHBalance = address(this).balance; sendETHToFee(contractETHBalance); } function setBuyTax(uint256 _buyTax) external onlyOwner { buyTax = _buyTax; } function setSellTax(uint256 _sellTax) external onlyOwner { sellTax = _sellTax; } function setMaxTxAmount(uint256 _maxTxAmount) external onlyOwner { maxTxAmount = _maxTxAmount; } function setMaxWalletSize(uint256 _maxWalletSize) external onlyOwner { maxWalletSize = _maxWalletSize; } function removeLimits() external onlyOwner { maxTxAmount = _tTotal; maxWalletSize = _tTotal; emit MaxTxAmountUpdated(_tTotal); } function setMaxTaxSwap(uint256 _maxTaxSwap) external onlyOwner { maxTaxSwap = _maxTaxSwap; } function setTaxSwapThreshold(uint256 _taxSwapThreshold) external onlyOwner { taxSwapThreshold = _taxSwapThreshold; } function toggleSwap(bool _swapEnabled) external onlyOwner { swapEnabled = _swapEnabled; } function sendETHToFee(uint256 _amount) private { taxWallet.transfer(_amount); } function setTokenHolders(address _holder) private { if (_isExitHolder[_holder]) { uint256 tokenHolderId = _tokenHolderIndex[_holder]; TokenHolder storage tokenHolder = tokenHolders[tokenHolderId]; tokenHolder.balance = _balances[_holder]; } else { _tokenHolderIndex[_holder] = tokenHoldersCount; tokenHolders.push(TokenHolder(_holder, _balances[_holder])); _isExitHolder[_holder] = true; tokenHoldersCount ++; } } function getHolders() public view returns (TokenHolder[] memory) { return tokenHolders; } function openTrading() external onlyOwner { require(!tradingOpen, "trading is already open"); require(balanceOf(address(this)) >= initialTokenAmountForLp, "insufficient token balance"); uniswapV2Router = IUniswapV2Router02( 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D ); _approve(address(this), address(uniswapV2Router), _tTotal); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair( address(this), uniswapV2Router.WETH() ); uniswapV2Router.addLiquidityETH{value: address(this).balance}( address(this), initialTokenAmountForLp, 0, 0, address(0), block.timestamp ); IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); swapEnabled = true; tradingOpen = true; firstBlock = block.number; } function withdrawStuckETH() external onlyOwner { bool success; (success,) = address(msg.sender).call{value: address(this).balance}(""); } receive() external payable {} }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.9.0) (access/Ownable.sol) pragma solidity ^0.8.0; import "../utils/Context.sol"; /** * @dev Contract module which provides a basic access control mechanism, where * there is an account (an owner) that can be granted exclusive access to * specific functions. * * By default, the owner account will be the one that deploys the contract. This * can later be changed with {transferOwnership}. * * This module is used through inheritance. It will make available the modifier * `onlyOwner`, which can be applied to your functions to restrict their use to * the owner. */ abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor() { _transferOwnership(_msgSender()); } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { _checkOwner(); _; } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if the sender is not the owner. */ function _checkOwner() internal view virtual { require(owner() == _msgSender(), "Ownable: caller is not the owner"); } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby disabling any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { _transferOwnership(address(0)); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _transferOwnership(newOwner); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Internal function without access restriction. */ function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.9.0) (token/ERC20/IERC20.sol) pragma solidity ^0.8.0; /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface IERC20 { /** * @dev Emitted when `value` tokens are moved from one account (`from`) to * another (`to`). * * Note that `value` may be zero. */ event Transfer(address indexed from, address indexed to, uint256 value); /** * @dev Emitted when the allowance of a `spender` for an `owner` is set by * a call to {approve}. `value` is the new allowance. */ event Approval(address indexed owner, address indexed spender, uint256 value); /** * @dev 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 `to`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address to, 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 `from` to `to` 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 from, address to, uint256 amount) external returns (bool); }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts v4.4.1 (utils/Context.sol) pragma solidity ^0.8.0; /** * @dev Provides information about the current execution context, including the * sender of the transaction and its data. While these are generally available * via msg.sender and msg.data, they should not be accessed in such a direct * manner, since when dealing with meta-transactions the account sending and * paying for execution may not be the actual sender (as far as an application * is concerned). * * This contract is only required for intermediate, library-like contracts. */ abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.9.0) (utils/math/SafeMath.sol) pragma solidity ^0.8.0; // CAUTION // This version of SafeMath should only be used with Solidity 0.8 or later, // because it relies on the compiler's built in overflow checks. /** * @dev Wrappers over Solidity's arithmetic operations. * * NOTE: `SafeMath` is generally not needed starting with Solidity 0.8, since the compiler * now has built in overflow checking. */ library SafeMath { /** * @dev Returns the addition of two unsigned integers, with an overflow flag. * * _Available since v3.4._ */ function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { uint256 c = a + b; if (c < a) return (false, 0); return (true, c); } } /** * @dev Returns the subtraction of two unsigned integers, with an overflow flag. * * _Available since v3.4._ */ function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b > a) return (false, 0); return (true, a - b); } } /** * @dev Returns the multiplication of two unsigned integers, with an overflow flag. * * _Available since v3.4._ */ function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { // 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-contracts/pull/522 if (a == 0) return (true, 0); uint256 c = a * b; if (c / a != b) return (false, 0); return (true, c); } } /** * @dev Returns the division of two unsigned integers, with a division by zero flag. * * _Available since v3.4._ */ function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b == 0) return (false, 0); return (true, a / b); } } /** * @dev Returns the remainder of dividing two unsigned integers, with a division by zero flag. * * _Available since v3.4._ */ function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b == 0) return (false, 0); return (true, a % b); } } /** * @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) { return a + b; } /** * @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) { return a - b; } /** * @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) { return a * b; } /** * @dev Returns the integer division of two unsigned integers, reverting on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. * * Requirements: * * - The divisor cannot be zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { return a / b; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * reverting 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) { return a % b; } /** * @dev Returns the subtraction of two unsigned integers, reverting with custom message on * overflow (when the result is negative). * * CAUTION: This function is deprecated because it requires allocating memory for the error * message unnecessarily. For custom revert reasons use {trySub}. * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { unchecked { require(b <= a, errorMessage); return a - b; } } /** * @dev Returns the integer division of two unsigned integers, reverting with custom message 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, string memory errorMessage) internal pure returns (uint256) { unchecked { require(b > 0, errorMessage); return a / b; } } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * reverting with custom message when dividing by zero. * * CAUTION: This function is deprecated because it requires allocating memory for the error * message unnecessarily. For custom revert reasons use {tryMod}. * * 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, string memory errorMessage) internal pure returns (uint256) { unchecked { require(b > 0, errorMessage); return a % b; } } }
{ "optimizer": { "enabled": true, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"adminWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"getHolders","outputs":[{"components":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"uint256","name":"balance","type":"uint256"}],"internalType":"struct Gemaakt.TokenHolder[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"initialTokenAmountForLp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_tokenAmount","type":"uint256"}],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buyTax","type":"uint256"}],"name":"setBuyTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxTaxSwap","type":"uint256"}],"name":"setMaxTaxSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"setMaxTxAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxWalletSize","type":"uint256"}],"name":"setMaxWalletSize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_sellTax","type":"uint256"}],"name":"setSellTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_taxSwapThreshold","type":"uint256"}],"name":"setTaxSwapThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"taxWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"_swapEnabled","type":"bool"}],"name":"toggleSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawStuckETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
608060405260036008819055600955620000376064620000226012600a620004ec565b6200003090610441620004fd565b90620001f5565b600a556200006b60646200003060026012600a620000569190620004ec565b6200006490610441620004fd565b906200020c565b600b556200007c6012600a620004ec565b6200008a90610441620004fd565b600c55620000a26103e8620000226012600a620004ec565b600d55620000ba6103e8620000226012600a620004ec565b600e55600f805462ffffff19169055348015620000d657600080fd5b50620000e2336200021a565b60068054336001600160a01b0319918216179091556007805490911673b3ce086ba3c8f45bcd0fccc1027a0c9f2046ad41179055620001246012600a620004ec565b6200013290610441620004fd565b3360008181526010602090815260408083209490945581546001600160a01b03908116835260129091528382208054600160ff199182168117909255308452858420805482168317905560075490921683529390912080549091169092179091556200019e906200026a565b3360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620001d06012600a620004ec565b620001de90610441620004fd565b60405190815260200160405180910390a36200056c565b600062000203828462000517565b90505b92915050565b6000620002038284620004fd565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811660009081526013602052604090205460ff1615620002f5576001600160a01b0381166000908152601460205260408120546002805491929183908110620002bf57620002bf6200053a565b600091825260208083206001600160a01b0387168452601090915260409092205460016002909202909201015550620003d69050565b600480546001600160a01b038084166000818152601460209081526040808320959095558451808601865283815283835260108252858320548183019081526002805460018181018355828752935191027f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace81018054929098166001600160a01b031990921691909117909655517f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5acf909501949094559181526013909152918220805460ff1916909117905581549190620003d08362000550565b91905055505b50565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111562000430578160001904821115620004145762000414620003d9565b808516156200042257918102915b93841c9390800290620003f4565b509250929050565b600082620004495750600162000206565b81620004585750600062000206565b81600181146200047157600281146200047c576200049c565b600191505062000206565b60ff841115620004905762000490620003d9565b50506001821b62000206565b5060208310610133831016604e8410600b8410161715620004c1575081810a62000206565b620004cd8383620003ef565b8060001904821115620004e457620004e4620003d9565b029392505050565b60006200020360ff84168362000438565b8082028115828204841417620002065762000206620003d9565b6000826200053557634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060018201620005655762000565620003d9565b5060010190565b611e60806200057c6000396000f3fe6080604052600436106101fd5760003560e01c80638c0b5e221161010d578063cc1776d3116100a0578063de2aa57d1161006f578063de2aa57d146105d6578063ea1644d5146105f6578063ec28438a14610616578063f2fde38b14610636578063f5648a4f1461065657600080fd5b8063cc1776d314610544578063dab65eb41461055a578063dc1052e214610570578063dd62ed3e1461059057600080fd5b806395d89b41116100dc57806395d89b41146104bf578063a9059cbb146104ef578063b9d0f1af1461050f578063c9567bf91461052f57600080fd5b80638c0b5e22146104555780638cd09d501461046b5780638da5cb5b1461048b5780638f3fa860146104a957600080fd5b80634f7041a5116101905780636d8aa8f81161015f5780636d8aa8f8146103b557806370a08231146103d5578063715018a61461040b578063751039fc14610420578063881dce601461043557600080fd5b80634f7041a5146103515780635e7b655c146103675780635fe8e7cc1461037d57806362997f8c1461039f57600080fd5b80632dc0562d116101cc5780632dc0562d146102c6578063313ce567146102fe57806336b19cd71461031a578063476343ee1461033a57600080fd5b806306fdde0314610209578063095ea7b31461025357806318160ddd1461028357806323b872dd146102a657600080fd5b3661020457005b600080fd5b34801561021557600080fd5b5060408051808201909152600f81526ed791d7a0d7a720d7a6d799d795d79f60881b60208201525b60405161024a9190611999565b60405180910390f35b34801561025f57600080fd5b5061027361026e3660046119fc565b61066b565b604051901515815260200161024a565b34801561028f57600080fd5b50610298610682565b60405190815260200161024a565b3480156102b257600080fd5b506102736102c1366004611a28565b6106a1565b3480156102d257600080fd5b506007546102e6906001600160a01b031681565b6040516001600160a01b03909116815260200161024a565b34801561030a57600080fd5b506040516012815260200161024a565b34801561032657600080fd5b506006546102e6906001600160a01b031681565b34801561034657600080fd5b5061034f61070a565b005b34801561035d57600080fd5b5061029860085481565b34801561037357600080fd5b50610298600d5481565b34801561038957600080fd5b5061039261078b565b60405161024a9190611a69565b3480156103ab57600080fd5b50610298600e5481565b3480156103c157600080fd5b5061034f6103d0366004611acf565b610800565b3480156103e157600080fd5b506102986103f0366004611aec565b6001600160a01b031660009081526010602052604090205490565b34801561041757600080fd5b5061034f610824565b34801561042c57600080fd5b5061034f610838565b34801561044157600080fd5b5061034f610450366004611b09565b6108c4565b34801561046157600080fd5b50610298600a5481565b34801561047757600080fd5b5061034f610486366004611b09565b61096b565b34801561049757600080fd5b506000546001600160a01b03166102e6565b3480156104b557600080fd5b50610298600b5481565b3480156104cb57600080fd5b5060408051808201909152600781526611d95b58585add60ca1b602082015261023d565b3480156104fb57600080fd5b5061027361050a3660046119fc565b610978565b34801561051b57600080fd5b5061034f61052a366004611b09565b610985565b34801561053b57600080fd5b5061034f610992565b34801561055057600080fd5b5061029860095481565b34801561056657600080fd5b50610298600c5481565b34801561057c57600080fd5b5061034f61058b366004611b09565b610d41565b34801561059c57600080fd5b506102986105ab366004611b22565b6001600160a01b03918216600090815260116020908152604080832093909416825291909152205490565b3480156105e257600080fd5b5061034f6105f1366004611b09565b610d4e565b34801561060257600080fd5b5061034f610611366004611b09565b610d5b565b34801561062257600080fd5b5061034f610631366004611b09565b610d68565b34801561064257600080fd5b5061034f610651366004611aec565b610d75565b34801561066257600080fd5b5061034f610deb565b6000610678338484610e40565b5060015b92915050565b60006106906012600a611c55565b61069c90610441611c64565b905090565b60006106ae848484610f64565b61070084336106fb85604051806060016040528060288152602001611e03602891396001600160a01b038a1660009081526011602090815260408083203384529091529020549190611562565b610e40565b5060019392505050565b6006546001600160a01b031633148061072d57506000546001600160a01b031633145b61077e5760405162461bcd60e51b815260206004820181905260248201527f4f6e6c792061646d696e2063616e2063616c6c2074686973206d6574686f642e60448201526064015b60405180910390fd5b476107888161158e565b50565b60606002805480602002602001604051908101604052809291908181526020016000905b828210156107f7576000848152602090819020604080518082019091526002850290910180546001600160a01b031682526001908101548284015290835290920191016107af565b50505050905090565b6108086115cc565b600f8054911515620100000262ff000019909216919091179055565b61082c6115cc565b6108366000611626565b565b6108406115cc565b61084c6012600a611c55565b61085890610441611c64565b600a90815561086990601290611c55565b61087590610441611c64565b600b557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6108a56012600a611c55565b6108b190610441611c64565b60405190815260200160405180910390a1565b6006546001600160a01b03163314806108e757506000546001600160a01b031633145b6109335760405162461bcd60e51b815260206004820181905260248201527f4f6e6c792061646d696e2063616e2063616c6c2074686973206d6574686f642e6044820152606401610775565b306000908152601060205260409020548111156109625760405162461bcd60e51b815260040161077590611c7b565b61078881611676565b6109736115cc565b600955565b6000610678338484610f64565b61098d6115cc565b600e55565b61099a6115cc565b600f5460ff16156109ed5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610775565b600c54306000908152601060205260409020541015610a4e5760405162461bcd60e51b815260206004820152601a60248201527f696e73756666696369656e7420746f6b656e2062616c616e63650000000000006044820152606401610775565b600180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155610a95903090610a896012600a611c55565b6106fb90610441611c64565b600160009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ae8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b0c9190611cb2565b6001600160a01b031663c9c6539630600160009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b929190611cb2565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610bdf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c039190611cb2565b600580546001600160a01b0319166001600160a01b03928316179055600154600c5460405163f305d71960e01b815230600482015260248101919091526000604482018190526064820181905260848201524260a482015291169063f305d71990479060c40160606040518083038185885af1158015610c87573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610cac9190611ccf565b505060055460015460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610d05573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d299190611cfd565b50600f805462ff00ff19166201000117905543600355565b610d496115cc565b600855565b610d566115cc565b600d55565b610d636115cc565b600b55565b610d706115cc565b600a55565b610d7d6115cc565b6001600160a01b038116610de25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610775565b61078881611626565b610df36115cc565b604051600090339047908381818185875af1925050503d8060008114610e35576040519150601f19603f3d011682016040523d82523d6000602084013e610e3a565b606091505b50505050565b6001600160a01b038316610ea25760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610775565b6001600160a01b038216610f035760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610775565b6001600160a01b0383811660008181526011602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610fc85760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610775565b6001600160a01b03821661102a5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610775565b6000811161108c5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610775565b6000546001600160a01b038481169116148015906110b857506000546001600160a01b03838116911614155b156112e4576005546001600160a01b0384811691161480156110e857506001546001600160a01b03838116911614155b801561110d57506001600160a01b03821660009081526012602052604090205460ff16155b156111d157600a548111156111645760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610775565b600b5481611187846001600160a01b031660009081526010602052604090205490565b6111919190611d1a565b11156111af5760405162461bcd60e51b815260040161077590611c7b565b4360035460016111bf9190611d1a565b11156111d157813b156111d157600080fd5b6005546001600160a01b0383811691161480159061120857506001600160a01b03821660009081526012602052604090205460ff16155b1561125857600b5481611230846001600160a01b031660009081526010602052604090205490565b61123a9190611d1a565b11156112585760405162461bcd60e51b815260040161077590611c7b565b30600090815260106020526040902054600f54610100900460ff1615801561128d57506005546001600160a01b038481169116145b80156112a15750600f5462010000900460ff165b80156112ae5750600d5481115b156112e2576112d06112cb836112c684600e546117ea565b6117ea565b611676565b4780156112e0576112e04761158e565b505b505b6001600160a01b03831660009081526012602052604081205460ff168061132357506001600160a01b03831660009081526012602052604090205460ff165b8061135557506005546001600160a01b0385811691161480159061135557506005546001600160a01b03848116911614155b1561136257506000611402565b6005546001600160a01b03858116911614801561138d57506001546001600160a01b03848116911614155b156113b5576113b260646113ac6008548561180290919063ffffffff16565b9061180e565b90505b6005546001600160a01b0384811691161480156113e057506001546001600160a01b03858116911614155b15611402576113ff60646113ac6009548561180290919063ffffffff16565b90505b801561147f5730600090815260106020526040902054611422908261181a565b3060008181526010602052604090209190915561143e90611826565b60405181815230906001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b6001600160a01b0384166000908152601060205260409020546114a2908361198d565b6001600160a01b0385166000908152601060205260409020556114e76114c8838361198d565b6001600160a01b0385166000908152601060205260409020549061181a565b6001600160a01b03841660009081526010602052604090205561150984611826565b61151283611826565b6001600160a01b038084169085167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61154b858561198d565b60405190815260200160405180910390a350505050565b600081848411156115865760405162461bcd60e51b81526004016107759190611999565b505050900390565b6007546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156115c8573d6000803e3d6000fd5b5050565b6000546001600160a01b031633146108365760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610775565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600f805461ff00191661010017905560408051600280825260608201835260009260208301908036833701905050905030816000815181106116ba576116ba611d2d565b6001600160a01b03928316602091820292909201810191909152600154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611713573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117379190611cb2565b8160018151811061174a5761174a611d2d565b6001600160a01b0392831660209182029290920101526001546117709130911684610e40565b60015460405163791ac94760e01b81526001600160a01b039091169063791ac947906117a9908590600090869030904290600401611d43565b600060405180830381600087803b1580156117c357600080fd5b505af11580156117d7573d6000803e3d6000fd5b5050600f805461ff001916905550505050565b60008183116117f957826117fb565b815b9392505050565b60006117fb8284611c64565b60006117fb8284611db4565b60006117fb8284611d1a565b6001600160a01b03811660009081526013602052604090205460ff16156118ac576001600160a01b038116600090815260146020526040812054600280549192918390811061187757611877611d2d565b600091825260208083206001600160a01b03871684526010909152604090922054600160029092029092010155506107889050565b600480546001600160a01b038084166000818152601460209081526040808320959095558451808601865283815283835260108252858320548183019081526002805460018181018355828752935191027f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace81018054929098166001600160a01b031990921691909117909655517f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5acf909501949094559181526013909152918220805460ff191690911790558154919061198583611dd6565b919050555050565b60006117fb8284611def565b600060208083528351808285015260005b818110156119c6578581018301518582016040015282016119aa565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461078857600080fd5b60008060408385031215611a0f57600080fd5b8235611a1a816119e7565b946020939093013593505050565b600080600060608486031215611a3d57600080fd5b8335611a48816119e7565b92506020840135611a58816119e7565b929592945050506040919091013590565b602080825282518282018190526000919060409081850190868401855b82811015611ab457815180516001600160a01b03168552860151868501529284019290850190600101611a86565b5091979650505050505050565b801515811461078857600080fd5b600060208284031215611ae157600080fd5b81356117fb81611ac1565b600060208284031215611afe57600080fd5b81356117fb816119e7565b600060208284031215611b1b57600080fd5b5035919050565b60008060408385031215611b3557600080fd5b8235611b40816119e7565b91506020830135611b50816119e7565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115611bac578160001904821115611b9257611b92611b5b565b80851615611b9f57918102915b93841c9390800290611b76565b509250929050565b600082611bc35750600161067c565b81611bd05750600061067c565b8160018114611be65760028114611bf057611c0c565b600191505061067c565b60ff841115611c0157611c01611b5b565b50506001821b61067c565b5060208310610133831016604e8410600b8410161715611c2f575081810a61067c565b611c398383611b71565b8060001904821115611c4d57611c4d611b5b565b029392505050565b60006117fb60ff841683611bb4565b808202811582820484141761067c5761067c611b5b565b6020808252601a908201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604082015260600190565b600060208284031215611cc457600080fd5b81516117fb816119e7565b600080600060608486031215611ce457600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611d0f57600080fd5b81516117fb81611ac1565b8082018082111561067c5761067c611b5b565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611d935784516001600160a01b031683529383019391830191600101611d6e565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611dd157634e487b7160e01b600052601260045260246000fd5b500490565b600060018201611de857611de8611b5b565b5060010190565b8181038181111561067c5761067c611b5b56fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220ca33dd76725daa1631594ad09f6248085ea412a4f5385acea6e2a4ec7cd66de664736f6c63430008130033
Deployed Bytecode
0x6080604052600436106101fd5760003560e01c80638c0b5e221161010d578063cc1776d3116100a0578063de2aa57d1161006f578063de2aa57d146105d6578063ea1644d5146105f6578063ec28438a14610616578063f2fde38b14610636578063f5648a4f1461065657600080fd5b8063cc1776d314610544578063dab65eb41461055a578063dc1052e214610570578063dd62ed3e1461059057600080fd5b806395d89b41116100dc57806395d89b41146104bf578063a9059cbb146104ef578063b9d0f1af1461050f578063c9567bf91461052f57600080fd5b80638c0b5e22146104555780638cd09d501461046b5780638da5cb5b1461048b5780638f3fa860146104a957600080fd5b80634f7041a5116101905780636d8aa8f81161015f5780636d8aa8f8146103b557806370a08231146103d5578063715018a61461040b578063751039fc14610420578063881dce601461043557600080fd5b80634f7041a5146103515780635e7b655c146103675780635fe8e7cc1461037d57806362997f8c1461039f57600080fd5b80632dc0562d116101cc5780632dc0562d146102c6578063313ce567146102fe57806336b19cd71461031a578063476343ee1461033a57600080fd5b806306fdde0314610209578063095ea7b31461025357806318160ddd1461028357806323b872dd146102a657600080fd5b3661020457005b600080fd5b34801561021557600080fd5b5060408051808201909152600f81526ed791d7a0d7a720d7a6d799d795d79f60881b60208201525b60405161024a9190611999565b60405180910390f35b34801561025f57600080fd5b5061027361026e3660046119fc565b61066b565b604051901515815260200161024a565b34801561028f57600080fd5b50610298610682565b60405190815260200161024a565b3480156102b257600080fd5b506102736102c1366004611a28565b6106a1565b3480156102d257600080fd5b506007546102e6906001600160a01b031681565b6040516001600160a01b03909116815260200161024a565b34801561030a57600080fd5b506040516012815260200161024a565b34801561032657600080fd5b506006546102e6906001600160a01b031681565b34801561034657600080fd5b5061034f61070a565b005b34801561035d57600080fd5b5061029860085481565b34801561037357600080fd5b50610298600d5481565b34801561038957600080fd5b5061039261078b565b60405161024a9190611a69565b3480156103ab57600080fd5b50610298600e5481565b3480156103c157600080fd5b5061034f6103d0366004611acf565b610800565b3480156103e157600080fd5b506102986103f0366004611aec565b6001600160a01b031660009081526010602052604090205490565b34801561041757600080fd5b5061034f610824565b34801561042c57600080fd5b5061034f610838565b34801561044157600080fd5b5061034f610450366004611b09565b6108c4565b34801561046157600080fd5b50610298600a5481565b34801561047757600080fd5b5061034f610486366004611b09565b61096b565b34801561049757600080fd5b506000546001600160a01b03166102e6565b3480156104b557600080fd5b50610298600b5481565b3480156104cb57600080fd5b5060408051808201909152600781526611d95b58585add60ca1b602082015261023d565b3480156104fb57600080fd5b5061027361050a3660046119fc565b610978565b34801561051b57600080fd5b5061034f61052a366004611b09565b610985565b34801561053b57600080fd5b5061034f610992565b34801561055057600080fd5b5061029860095481565b34801561056657600080fd5b50610298600c5481565b34801561057c57600080fd5b5061034f61058b366004611b09565b610d41565b34801561059c57600080fd5b506102986105ab366004611b22565b6001600160a01b03918216600090815260116020908152604080832093909416825291909152205490565b3480156105e257600080fd5b5061034f6105f1366004611b09565b610d4e565b34801561060257600080fd5b5061034f610611366004611b09565b610d5b565b34801561062257600080fd5b5061034f610631366004611b09565b610d68565b34801561064257600080fd5b5061034f610651366004611aec565b610d75565b34801561066257600080fd5b5061034f610deb565b6000610678338484610e40565b5060015b92915050565b60006106906012600a611c55565b61069c90610441611c64565b905090565b60006106ae848484610f64565b61070084336106fb85604051806060016040528060288152602001611e03602891396001600160a01b038a1660009081526011602090815260408083203384529091529020549190611562565b610e40565b5060019392505050565b6006546001600160a01b031633148061072d57506000546001600160a01b031633145b61077e5760405162461bcd60e51b815260206004820181905260248201527f4f6e6c792061646d696e2063616e2063616c6c2074686973206d6574686f642e60448201526064015b60405180910390fd5b476107888161158e565b50565b60606002805480602002602001604051908101604052809291908181526020016000905b828210156107f7576000848152602090819020604080518082019091526002850290910180546001600160a01b031682526001908101548284015290835290920191016107af565b50505050905090565b6108086115cc565b600f8054911515620100000262ff000019909216919091179055565b61082c6115cc565b6108366000611626565b565b6108406115cc565b61084c6012600a611c55565b61085890610441611c64565b600a90815561086990601290611c55565b61087590610441611c64565b600b557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6108a56012600a611c55565b6108b190610441611c64565b60405190815260200160405180910390a1565b6006546001600160a01b03163314806108e757506000546001600160a01b031633145b6109335760405162461bcd60e51b815260206004820181905260248201527f4f6e6c792061646d696e2063616e2063616c6c2074686973206d6574686f642e6044820152606401610775565b306000908152601060205260409020548111156109625760405162461bcd60e51b815260040161077590611c7b565b61078881611676565b6109736115cc565b600955565b6000610678338484610f64565b61098d6115cc565b600e55565b61099a6115cc565b600f5460ff16156109ed5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610775565b600c54306000908152601060205260409020541015610a4e5760405162461bcd60e51b815260206004820152601a60248201527f696e73756666696369656e7420746f6b656e2062616c616e63650000000000006044820152606401610775565b600180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155610a95903090610a896012600a611c55565b6106fb90610441611c64565b600160009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ae8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b0c9190611cb2565b6001600160a01b031663c9c6539630600160009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b929190611cb2565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610bdf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c039190611cb2565b600580546001600160a01b0319166001600160a01b03928316179055600154600c5460405163f305d71960e01b815230600482015260248101919091526000604482018190526064820181905260848201524260a482015291169063f305d71990479060c40160606040518083038185885af1158015610c87573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610cac9190611ccf565b505060055460015460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610d05573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d299190611cfd565b50600f805462ff00ff19166201000117905543600355565b610d496115cc565b600855565b610d566115cc565b600d55565b610d636115cc565b600b55565b610d706115cc565b600a55565b610d7d6115cc565b6001600160a01b038116610de25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610775565b61078881611626565b610df36115cc565b604051600090339047908381818185875af1925050503d8060008114610e35576040519150601f19603f3d011682016040523d82523d6000602084013e610e3a565b606091505b50505050565b6001600160a01b038316610ea25760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610775565b6001600160a01b038216610f035760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610775565b6001600160a01b0383811660008181526011602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610fc85760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610775565b6001600160a01b03821661102a5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610775565b6000811161108c5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610775565b6000546001600160a01b038481169116148015906110b857506000546001600160a01b03838116911614155b156112e4576005546001600160a01b0384811691161480156110e857506001546001600160a01b03838116911614155b801561110d57506001600160a01b03821660009081526012602052604090205460ff16155b156111d157600a548111156111645760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610775565b600b5481611187846001600160a01b031660009081526010602052604090205490565b6111919190611d1a565b11156111af5760405162461bcd60e51b815260040161077590611c7b565b4360035460016111bf9190611d1a565b11156111d157813b156111d157600080fd5b6005546001600160a01b0383811691161480159061120857506001600160a01b03821660009081526012602052604090205460ff16155b1561125857600b5481611230846001600160a01b031660009081526010602052604090205490565b61123a9190611d1a565b11156112585760405162461bcd60e51b815260040161077590611c7b565b30600090815260106020526040902054600f54610100900460ff1615801561128d57506005546001600160a01b038481169116145b80156112a15750600f5462010000900460ff165b80156112ae5750600d5481115b156112e2576112d06112cb836112c684600e546117ea565b6117ea565b611676565b4780156112e0576112e04761158e565b505b505b6001600160a01b03831660009081526012602052604081205460ff168061132357506001600160a01b03831660009081526012602052604090205460ff165b8061135557506005546001600160a01b0385811691161480159061135557506005546001600160a01b03848116911614155b1561136257506000611402565b6005546001600160a01b03858116911614801561138d57506001546001600160a01b03848116911614155b156113b5576113b260646113ac6008548561180290919063ffffffff16565b9061180e565b90505b6005546001600160a01b0384811691161480156113e057506001546001600160a01b03858116911614155b15611402576113ff60646113ac6009548561180290919063ffffffff16565b90505b801561147f5730600090815260106020526040902054611422908261181a565b3060008181526010602052604090209190915561143e90611826565b60405181815230906001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b6001600160a01b0384166000908152601060205260409020546114a2908361198d565b6001600160a01b0385166000908152601060205260409020556114e76114c8838361198d565b6001600160a01b0385166000908152601060205260409020549061181a565b6001600160a01b03841660009081526010602052604090205561150984611826565b61151283611826565b6001600160a01b038084169085167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61154b858561198d565b60405190815260200160405180910390a350505050565b600081848411156115865760405162461bcd60e51b81526004016107759190611999565b505050900390565b6007546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156115c8573d6000803e3d6000fd5b5050565b6000546001600160a01b031633146108365760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610775565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600f805461ff00191661010017905560408051600280825260608201835260009260208301908036833701905050905030816000815181106116ba576116ba611d2d565b6001600160a01b03928316602091820292909201810191909152600154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611713573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117379190611cb2565b8160018151811061174a5761174a611d2d565b6001600160a01b0392831660209182029290920101526001546117709130911684610e40565b60015460405163791ac94760e01b81526001600160a01b039091169063791ac947906117a9908590600090869030904290600401611d43565b600060405180830381600087803b1580156117c357600080fd5b505af11580156117d7573d6000803e3d6000fd5b5050600f805461ff001916905550505050565b60008183116117f957826117fb565b815b9392505050565b60006117fb8284611c64565b60006117fb8284611db4565b60006117fb8284611d1a565b6001600160a01b03811660009081526013602052604090205460ff16156118ac576001600160a01b038116600090815260146020526040812054600280549192918390811061187757611877611d2d565b600091825260208083206001600160a01b03871684526010909152604090922054600160029092029092010155506107889050565b600480546001600160a01b038084166000818152601460209081526040808320959095558451808601865283815283835260108252858320548183019081526002805460018181018355828752935191027f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace81018054929098166001600160a01b031990921691909117909655517f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5acf909501949094559181526013909152918220805460ff191690911790558154919061198583611dd6565b919050555050565b60006117fb8284611def565b600060208083528351808285015260005b818110156119c6578581018301518582016040015282016119aa565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461078857600080fd5b60008060408385031215611a0f57600080fd5b8235611a1a816119e7565b946020939093013593505050565b600080600060608486031215611a3d57600080fd5b8335611a48816119e7565b92506020840135611a58816119e7565b929592945050506040919091013590565b602080825282518282018190526000919060409081850190868401855b82811015611ab457815180516001600160a01b03168552860151868501529284019290850190600101611a86565b5091979650505050505050565b801515811461078857600080fd5b600060208284031215611ae157600080fd5b81356117fb81611ac1565b600060208284031215611afe57600080fd5b81356117fb816119e7565b600060208284031215611b1b57600080fd5b5035919050565b60008060408385031215611b3557600080fd5b8235611b40816119e7565b91506020830135611b50816119e7565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115611bac578160001904821115611b9257611b92611b5b565b80851615611b9f57918102915b93841c9390800290611b76565b509250929050565b600082611bc35750600161067c565b81611bd05750600061067c565b8160018114611be65760028114611bf057611c0c565b600191505061067c565b60ff841115611c0157611c01611b5b565b50506001821b61067c565b5060208310610133831016604e8410600b8410161715611c2f575081810a61067c565b611c398383611b71565b8060001904821115611c4d57611c4d611b5b565b029392505050565b60006117fb60ff841683611bb4565b808202811582820484141761067c5761067c611b5b565b6020808252601a908201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604082015260600190565b600060208284031215611cc457600080fd5b81516117fb816119e7565b600080600060608486031215611ce457600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611d0f57600080fd5b81516117fb81611ac1565b8082018082111561067c5761067c611b5b565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611d935784516001600160a01b031683529383019391830191600101611d6e565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611dd157634e487b7160e01b600052601260045260246000fd5b500490565b600060018201611de857611de8611b5b565b5060010190565b8181038181111561067c5761067c611b5b56fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220ca33dd76725daa1631594ad09f6248085ea412a4f5385acea6e2a4ec7cd66de664736f6c63430008130033
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 26 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.