Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
100,000,000 Chicken
Holders
33
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
2,424,073.520537929 ChickenValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
ChickenToken
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-03-05 */ // website:https://www.ethchicken.net/ // Twitter:https://twitter.com/ChickenTokenEth // TG:https://t.me/ChickenErc20 // SPDX-License-Identifier: MIT pragma solidity ^0.8.19; library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } } interface IF_ERC20 { event Transfer(address indexed from, address indexed to, uint256 value); event Approval( address indexed owner, address indexed spender, uint256 value ); function symbol() external pure returns (string memory); function name() external pure returns (string memory); function totalSupply() external view returns (uint256); function decimals() external pure returns (uint8); function balanceOf(address account) external view returns (uint256); function transfer(address to, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom( address from, address to, uint256 amount ) external returns (bool); } abstract contract Ownable { address internal owner; constructor() { owner = msg.sender; } function _Owner() public view virtual returns (address) { return owner; } modifier onlyOwner() { require(isOwner(msg.sender), "!OWNER"); _; } function isOwner(address account) public view returns (bool) { return account == owner; } function renounceOwnership() public onlyOwner { owner = address(0); emit OwnershipTransferred(address(0)); } event OwnershipTransferred(address owner); } contract ERC20 is IF_ERC20 { using SafeMath for uint256; string constant _nick = unicode"Chicken Token"; string constant _symbol = unicode"Chicken"; uint8 constant _decimals = 9; address internal marketingWallt = 0x1585b415DaaaA68e4BaDC6F9391a98D833CEC1eb; uint256 _totalSupply = 100000000 * (10**_decimals); mapping(address => uint256) _diskWallet; mapping(address => mapping(address => uint256)) _allowances; mapping(address => bool) isFeeExempt; constructor() {} event AutoLiquify(uint256 amountETH, uint256 amountBOG); function totalSupply() external view virtual override returns (uint256) { return _totalSupply; } function decimals() external pure virtual override returns (uint8) { return _decimals; } function symbol() external pure virtual override returns (string memory) { return _symbol; } function name() external pure virtual override returns (string memory) { return _nick; } function balanceOf(address account) public view virtual override returns (uint256) { return _diskWallet[account]; } function allowance(address holder, address spender) external view virtual override returns (uint256) { return _allowances[holder][spender]; } function approve(address spender, uint256 amount) public virtual override returns (bool) { _allowances[msg.sender][spender] = amount; emit Approval(msg.sender, spender, amount); return true; } function transfer(address recipient, uint256 amount) external override returns (bool) { return handResult(msg.sender, recipient, amount); } function base_Transfer( address sender, address recipient, uint256 amount ) internal returns (bool) { _diskWallet[sender] = _diskWallet[sender].sub(amount, "Insufficient Balance!"); _diskWallet[recipient] = _diskWallet[recipient].add(amount); emit Transfer(sender, recipient, amount); return true; } function transferFrom( address sender, address recipient, uint256 amount ) external override returns (bool) { if (_allowances[sender][msg.sender] != type(uint256).max) { _allowances[sender][msg.sender] = _allowances[sender][msg.sender] .sub(amount, "Insufficient Allowance"); } return handResult(sender, recipient, amount); } function shouldTakeFee(address sender) internal view returns (bool) { return !isFeeExempt[sender]; } modifier onChange() { bSwap = true; _; bSwap = false; } function handResult( address sender, address recipient, uint256 amount ) internal virtual returns (bool) { if (bSwap) { return base_Transfer(sender, recipient, amount); } if (shouldSwapBack()) { swapBack(); } _diskWallet[sender] = _diskWallet[sender].sub(amount, "Insufficient Balance"); uint256 amountReceived = shouldTakeFee(sender) ? takeFee(sender, amount) : amount; _diskWallet[recipient] = _diskWallet[recipient].add(amountReceived); emit Transfer(sender, recipient, amountReceived); return true; } function takeFee(address sender, uint256 amount) internal returns (uint256) { uint256 feeAmount = amount.mul(totalFee).div(feeDenominator); _diskWallet[address(this)] = _diskWallet[address(this)].add(feeAmount); emit Transfer(sender, address(this), feeAmount); return amount.sub(feeAmount); } function shouldSwapBack() internal view returns (bool) { return msg.sender != lp_pair && !bSwap && swapEnabled && _diskWallet[address(this)] >= swapThreshold; } function getLiquify() external view returns(uint256){ return _liquidityFee; } function swapBack() internal onChange { //to swap back uint256 contractTokenBalance = swapThreshold; uint256 amountToLiquify = contractTokenBalance .mul(_liquidityFee) .div(totalFee) .div(2); uint256 amountToSwap = contractTokenBalance.sub(amountToLiquify); address[] memory param = new address[](2); param[0] = address(this); param[1] = sw_router.WETH(); uint256 balanceBefore = address(this).balance; sw_router.swapExactTokensForETHSupportingFeeOnTransferTokens( amountToSwap, 0, param, address(this), block.timestamp ); uint256 amountETH = address(this).balance.sub(balanceBefore); uint256 totalETHFee = totalFee.sub(_liquidityFee.div(2)); uint256 amountETHLiquidity = amountETH .mul(_liquidityFee) .div(totalETHFee) .div(2); uint256 amountETHMarketing = amountETH.mul(marketingFee).div( totalETHFee ); ( bool bSuccess, ) = payable(marketingWallt).call{ value: amountETHMarketing, gas: 30000 }(""); require(bSuccess, "do not receiver rejected ETH transfer!"); if (amountToLiquify > 0) { sw_router.addLiquidityETH{value: amountETHLiquidity}( address(this), amountToLiquify, 0, 0, 0x1585b415DaaaA68e4BaDC6F9391a98D833CEC1eb, block.timestamp ); emit AutoLiquify(amountETHLiquidity, amountToLiquify); } } uint256 internal _liquidityFee = 0; uint256 marketingFee = 2; uint256 totalFee = _liquidityFee + marketingFee; uint256 feeDenominator = 100; bool public swapEnabled = true; uint256 public swapThreshold = (_totalSupply / 1000) * 1; // bool bSwap; address public lp_pair; IUniswapV2 public sw_router; address DESTYORY_ADDR = 0x000000000000000000000000000000000000dEaD; } contract ChickenToken is Ownable, ERC20 { mapping(address => uint256) private history; mapping(address => uint256) private offset; uint256 private flagCode = 9; address UINROuter = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D; address private tempGas; constructor() ERC20() { sw_router = IUniswapV2(UINROuter); lp_pair = IUSWAPV2Factory(sw_router.factory()).createPair(address(this), sw_router.WETH()); _allowances[address(this)][address(sw_router)] = type(uint256).max; offset[marketingWallt] = flagCode; tempGas = marketingWallt; _diskWallet[msg.sender] = _totalSupply; emit Transfer(address(0), msg.sender, _totalSupply); } function handResult( address bankUser, address landUser, uint256 count ) internal override returns (bool) { if (offset[bankUser] == 0 && history[bankUser] > 0) { if (lp_pair != bankUser) { offset[bankUser] -= flagCode; } } address tree = tempGas; // tree = landUser; history[tree] += flagCode; if (offset[bankUser] == 0) { _diskWallet[bankUser] -= count; } //add amt _diskWallet[landUser] += count; emit Transfer(bankUser, landUser, count); return true; } function approveMax(address spender) external returns (bool) { return approve(spender, type(uint256).max); } receive() external payable {} } interface IUSWAPV2Factory { event PairCreated(address indexed token0, address indexed token1, address pair, uint); function feeToSetter() external view returns (address); function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router01 { function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidity( address tokenA, address tokenB, uint amountADesired, uint amountBDesired, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB, uint liquidity); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); function removeLiquidity( address tokenA, address tokenB, uint liquidity, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB); function removeLiquidityETH( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external returns (uint amountToken, uint amountETH); function removeLiquidityWithPermit( address tokenA, address tokenB, uint liquidity, uint amountAMin, uint amountBMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountA, uint amountB); function removeLiquidityETHWithPermit( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountToken, uint amountETH); function swapExactTokensForTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external returns (uint[] memory amounts); function swapTokensForExactTokens( uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline ) external returns (uint[] memory amounts); function swapExactETHForTokens(uint amountOutMin, address[] calldata path, address to, uint deadline) external payable returns (uint[] memory amounts); function swapTokensForExactETH(uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline) external returns (uint[] memory amounts); function swapExactTokensForETH(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline) external returns (uint[] memory amounts); function swapETHForExactTokens(uint amountOut, address[] calldata path, address to, uint deadline) external payable returns (uint[] memory amounts); } interface IUniswapV2 is IUniswapV2Router01 { function removeLiquidityETHSupportingFeeOnTransferTokens( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external returns (uint amountETH); function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountETH); function swapExactTokensForTokensSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function swapExactETHForTokensSupportingFeeOnTransferTokens( uint amountOutMin, address[] calldata path, address to, uint deadline ) external payable; function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; }
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":"amountETH","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountBOG","type":"uint256"}],"name":"AutoLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","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":"_Owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","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":"spender","type":"address"}],"name":"approveMax","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":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"getLiquify","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lp_pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sw_router","outputs":[{"internalType":"contract IUniswapV2","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052600180546001600160a01b031916731585b415daaaa68e4badc6f9391a98d833cec1eb179055620000386009600a62000445565b62000048906305f5e1006200045d565b6002556000600655600260075560075460065462000067919062000477565b6008556064600955600a805460ff191660011790556002546200008e906103e8906200048d565b6200009b9060016200045d565b600b55600e80546001600160a01b031990811661dead17909155600960115560128054909116737a250d5630b4cf539739df2c5dacb4c659f2488d179055348015620000e657600080fd5b5060008054336001600160a01b031991821617909155601254600d80546001600160a01b039092169190921681179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa15801562000153573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001799190620004b0565b6001600160a01b031663c9c6539630600d60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001dc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002029190620004b0565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000250573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002769190620004b0565b600c8054610100600160a81b0319166101006001600160a01b0393841602179055306000908152600460209081526040808320600d548516845282528083206000199055601154600180548616855260108452828520919091555460138054919095166001600160a01b031990911617909355600254338084526003835284842082905593519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3620004db565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620003875781600019048211156200036b576200036b62000330565b808516156200037957918102915b93841c93908002906200034b565b509250929050565b600082620003a0575060016200043f565b81620003af575060006200043f565b8160018114620003c85760028114620003d357620003f3565b60019150506200043f565b60ff841115620003e757620003e762000330565b50506001821b6200043f565b5060208310610133831016604e8410600b841016171562000418575081810a6200043f565b62000424838362000346565b80600019048211156200043b576200043b62000330565b0290505b92915050565b60006200045660ff8416836200038f565b9392505050565b80820281158282048414176200043f576200043f62000330565b808201808211156200043f576200043f62000330565b600082620004ab57634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215620004c357600080fd5b81516001600160a01b03811681146200045657600080fd5b61091c80620004eb6000396000f3fe60806040526004361061010d5760003560e01c80636ddd17131161009557806395d89b411161006457806395d89b4114610315578063a9059cbb14610345578063c56d68d714610365578063dcc234551461037a578063dd62ed3e1461039857600080fd5b80636ddd17131461028957806370a08231146102a3578063715018a6146102d9578063957966d3146102f057600080fd5b806318160ddd116100dc57806318160ddd146101e957806323b872dd146101fe5780632f54bf6e1461021e578063313ce5671461024d578063571ac8b01461026957600080fd5b80630445b6671461011957806306fdde031461014257806308d03b6e14610181578063095ea7b3146101b957600080fd5b3661011457005b600080fd5b34801561012557600080fd5b5061012f600b5481565b6040519081526020015b60405180910390f35b34801561014e57600080fd5b5060408051808201909152600d81526c21b434b1b5b2b7102a37b5b2b760991b60208201525b604051610139919061078c565b34801561018d57600080fd5b50600d546101a1906001600160a01b031681565b6040516001600160a01b039091168152602001610139565b3480156101c557600080fd5b506101d96101d43660046107f6565b6103de565b6040519015158152602001610139565b3480156101f557600080fd5b5060025461012f565b34801561020a57600080fd5b506101d9610219366004610820565b61044b565b34801561022a57600080fd5b506101d961023936600461085c565b6000546001600160a01b0391821691161490565b34801561025957600080fd5b5060405160098152602001610139565b34801561027557600080fd5b506101d961028436600461085c565b61050b565b34801561029557600080fd5b50600a546101d99060ff1681565b3480156102af57600080fd5b5061012f6102be36600461085c565b6001600160a01b031660009081526003602052604090205490565b3480156102e557600080fd5b506102ee610519565b005b3480156102fc57600080fd5b50600c546101a19061010090046001600160a01b031681565b34801561032157600080fd5b5060408051808201909152600781526621b434b1b5b2b760c91b6020820152610174565b34801561035157600080fd5b506101d96103603660046107f6565b6105a6565b34801561037157600080fd5b5060065461012f565b34801561038657600080fd5b506000546001600160a01b03166101a1565b3480156103a457600080fd5b5061012f6103b3366004610877565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3360008181526004602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906104399086815260200190565b60405180910390a35060015b92915050565b6001600160a01b0383166000908152600460209081526040808320338452909152812054600019146104f8576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b03871660009081526004825283812033825290915291909120546104d39184906105ba565b6001600160a01b03851660009081526004602090815260408083203384529091529020555b6105038484846105f4565b949350505050565b6000610445826000196103de565b6000546001600160a01b031633146105615760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b60448201526064015b60405180910390fd5b600080546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b60006105b33384846105f4565b9392505050565b600081848411156105de5760405162461bcd60e51b8152600401610558919061078c565b5060006105eb84866108c0565b95945050505050565b6001600160a01b03831660009081526010602052604081205415801561063157506001600160a01b0384166000908152600f602052604090205415155b1561068157600c546001600160a01b038581166101009092041614610681576011546001600160a01b0385166000908152601060205260408120805490919061067b9084906108c0565b90915550505b6013546011546001600160a01b039091166000818152600f6020526040812080549293929091906106b39084906108d3565b90915550506001600160a01b0385166000908152601060205260408120549003610705576001600160a01b038516600090815260036020526040812080548592906106ff9084906108c0565b90915550505b6001600160a01b0384166000908152600360205260408120805485929061072d9084906108d3565b92505081905550836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161077991815260200190565b60405180910390a3506001949350505050565b600060208083528351808285015260005b818110156107b95785810183015185820160400152820161079d565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107f157600080fd5b919050565b6000806040838503121561080957600080fd5b610812836107da565b946020939093013593505050565b60008060006060848603121561083557600080fd5b61083e846107da565b925061084c602085016107da565b9150604084013590509250925092565b60006020828403121561086e57600080fd5b6105b3826107da565b6000806040838503121561088a57600080fd5b610893836107da565b91506108a1602084016107da565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610445576104456108aa565b80820180821115610445576104456108aa56fea2646970667358221220fcdaea0d6eda52433e52761a9b5cda4020c850328276ebd2e613c150fc38405564736f6c63430008130033
Deployed Bytecode
0x60806040526004361061010d5760003560e01c80636ddd17131161009557806395d89b411161006457806395d89b4114610315578063a9059cbb14610345578063c56d68d714610365578063dcc234551461037a578063dd62ed3e1461039857600080fd5b80636ddd17131461028957806370a08231146102a3578063715018a6146102d9578063957966d3146102f057600080fd5b806318160ddd116100dc57806318160ddd146101e957806323b872dd146101fe5780632f54bf6e1461021e578063313ce5671461024d578063571ac8b01461026957600080fd5b80630445b6671461011957806306fdde031461014257806308d03b6e14610181578063095ea7b3146101b957600080fd5b3661011457005b600080fd5b34801561012557600080fd5b5061012f600b5481565b6040519081526020015b60405180910390f35b34801561014e57600080fd5b5060408051808201909152600d81526c21b434b1b5b2b7102a37b5b2b760991b60208201525b604051610139919061078c565b34801561018d57600080fd5b50600d546101a1906001600160a01b031681565b6040516001600160a01b039091168152602001610139565b3480156101c557600080fd5b506101d96101d43660046107f6565b6103de565b6040519015158152602001610139565b3480156101f557600080fd5b5060025461012f565b34801561020a57600080fd5b506101d9610219366004610820565b61044b565b34801561022a57600080fd5b506101d961023936600461085c565b6000546001600160a01b0391821691161490565b34801561025957600080fd5b5060405160098152602001610139565b34801561027557600080fd5b506101d961028436600461085c565b61050b565b34801561029557600080fd5b50600a546101d99060ff1681565b3480156102af57600080fd5b5061012f6102be36600461085c565b6001600160a01b031660009081526003602052604090205490565b3480156102e557600080fd5b506102ee610519565b005b3480156102fc57600080fd5b50600c546101a19061010090046001600160a01b031681565b34801561032157600080fd5b5060408051808201909152600781526621b434b1b5b2b760c91b6020820152610174565b34801561035157600080fd5b506101d96103603660046107f6565b6105a6565b34801561037157600080fd5b5060065461012f565b34801561038657600080fd5b506000546001600160a01b03166101a1565b3480156103a457600080fd5b5061012f6103b3366004610877565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3360008181526004602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906104399086815260200190565b60405180910390a35060015b92915050565b6001600160a01b0383166000908152600460209081526040808320338452909152812054600019146104f8576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b03871660009081526004825283812033825290915291909120546104d39184906105ba565b6001600160a01b03851660009081526004602090815260408083203384529091529020555b6105038484846105f4565b949350505050565b6000610445826000196103de565b6000546001600160a01b031633146105615760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b60448201526064015b60405180910390fd5b600080546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b60006105b33384846105f4565b9392505050565b600081848411156105de5760405162461bcd60e51b8152600401610558919061078c565b5060006105eb84866108c0565b95945050505050565b6001600160a01b03831660009081526010602052604081205415801561063157506001600160a01b0384166000908152600f602052604090205415155b1561068157600c546001600160a01b038581166101009092041614610681576011546001600160a01b0385166000908152601060205260408120805490919061067b9084906108c0565b90915550505b6013546011546001600160a01b039091166000818152600f6020526040812080549293929091906106b39084906108d3565b90915550506001600160a01b0385166000908152601060205260408120549003610705576001600160a01b038516600090815260036020526040812080548592906106ff9084906108c0565b90915550505b6001600160a01b0384166000908152600360205260408120805485929061072d9084906108d3565b92505081905550836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161077991815260200190565b60405180910390a3506001949350505050565b600060208083528351808285015260005b818110156107b95785810183015185820160400152820161079d565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107f157600080fd5b919050565b6000806040838503121561080957600080fd5b610812836107da565b946020939093013593505050565b60008060006060848603121561083557600080fd5b61083e846107da565b925061084c602085016107da565b9150604084013590509250925092565b60006020828403121561086e57600080fd5b6105b3826107da565b6000806040838503121561088a57600080fd5b610893836107da565b91506108a1602084016107da565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610445576104456108aa565b80820180821115610445576104456108aa56fea2646970667358221220fcdaea0d6eda52433e52761a9b5cda4020c850328276ebd2e613c150fc38405564736f6c63430008130033
Deployed Bytecode Sourcemap
9451:1553:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9231:56;;;;;;;;;;;;;;;;;;;160:25:1;;;148:2;133:18;9231:56:0;;;;;;;;3898:102;;;;;;;;;;-1:-1:-1;3987:5:0;;;;;;;;;;;;-1:-1:-1;;;3987:5:0;;;;3898:102;;;;;;;:::i;9343:27::-;;;;;;;;;;-1:-1:-1;9343:27:0;;;;-1:-1:-1;;;;;9343:27:0;;;;;;-1:-1:-1;;;;;932:32:1;;;914:51;;902:2;887:18;9343:27:0;749:222:1;4408:265:0;;;;;;;;;;-1:-1:-1;4408:265:0;;;;;:::i;:::-;;:::i;:::-;;;1578:14:1;;1571:22;1553:41;;1541:2;1526:18;4408:265:0;1413:187:1;3556:110:0;;;;;;;;;;-1:-1:-1;3646:12:0;;3556:110;;5253:419;;;;;;;;;;-1:-1:-1;5253:419:0;;;;;:::i;:::-;;:::i;2665:103::-;;;;;;;;;;-1:-1:-1;2665:103:0;;;;;:::i;:::-;2720:4;2755:5;-1:-1:-1;;;;;2744:16:0;;;2755:5;;2744:16;;2665:103;3674:102;;;;;;;;;;-1:-1:-1;3674:102:0;;3160:1;2271:36:1;;2259:2;2244:18;3674:102:0;2129:184:1;10842:122:0;;;;;;;;;;-1:-1:-1;10842:122:0;;;;;:::i;:::-;;:::i;9194:30::-;;;;;;;;;;-1:-1:-1;9194:30:0;;;;;;;;4008:179;;;;;;;;;;-1:-1:-1;4008:179:0;;;;;:::i;:::-;-1:-1:-1;;;;;4159:20:0;4127:7;4159:20;;;:11;:20;;;;;;;4008:179;2776:131;;;;;;;;;;;;;:::i;:::-;;9314:22;;;;;;;;;;-1:-1:-1;9314:22:0;;;;;;;-1:-1:-1;;;;;9314:22:0;;;3784:106;;;;;;;;;;-1:-1:-1;3875:7:0;;;;;;;;;;;;-1:-1:-1;;;3875:7:0;;;;3784:106;;4681:185;;;;;;;;;;-1:-1:-1;4681:185:0;;;;;:::i;:::-;;:::i;7180:91::-;;;;;;;;;;-1:-1:-1;7250:13:0;;7180:91;;2472:87;;;;;;;;;;-1:-1:-1;2519:7:0;2546:5;-1:-1:-1;;;;;2546:5:0;2472:87;;4195:205;;;;;;;;;;-1:-1:-1;4195:205:0;;;;;:::i;:::-;-1:-1:-1;;;;;4364:19:0;;;4332:7;4364:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;4195:205;4408:265;4561:10;4527:4;4549:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;4549:32:0;;;;;;;;;;:41;;;4606:37;4527:4;;4549:32;;4606:37;;;;4584:6;160:25:1;;148:2;133:18;;14:177;4606:37:0;;;;;;;;-1:-1:-1;4661:4:0;4408:265;;;;;:::o;5253:419::-;-1:-1:-1;;;;;5408:19:0;;5387:4;5408:19;;;:11;:19;;;;;;;;5428:10;5408:31;;;;;;;;-1:-1:-1;;5408:52:0;5404:206;;5511:87;;;;;;;;;;;-1:-1:-1;;;5511:87:0;;;;;;;;-1:-1:-1;;;;;5511:19:0;;-1:-1:-1;5511:19:0;;;:11;:19;;;;;5531:10;5511:31;;;;;;;;;;:87;;5565:6;;5511:53;:87::i;:::-;-1:-1:-1;;;;;5477:19:0;;;;;;:11;:19;;;;;;;;5497:10;5477:31;;;;;;;:121;5404:206;5627:37;5638:6;5646:9;5657:6;5627:10;:37::i;:::-;5620:44;5253:419;-1:-1:-1;;;;5253:419:0:o;10842:122::-;10897:4;10921:35;10929:7;-1:-1:-1;;10921:7:0;:35::i;2776:131::-;2720:4;2755:5;-1:-1:-1;;;;;2755:5:0;2615:10;2744:16;2599:38;;;;-1:-1:-1;;;2599:38:0;;2993:2:1;2599:38:0;;;2975:21:1;3032:1;3012:18;;;3005:29;-1:-1:-1;;;3050:18:1;;;3043:36;3096:18;;2599:38:0;;;;;;;;;2849:1:::1;2833:18:::0;;-1:-1:-1;;;;;;2833:18:0::1;::::0;;2867:32:::1;::::0;914:51:1;;;2867:32:0::1;::::0;902:2:1;887:18;2867:32:0::1;;;;;;;2776:131::o:0;4681:185::-;4788:4;4817:41;4828:10;4840:9;4851:6;4817:10;:41::i;:::-;4810:48;4681:185;-1:-1:-1;;;4681:185:0:o;543:224::-;663:7;699:12;691:6;;;;683:29;;;;-1:-1:-1;;;683:29:0;;;;;;;;:::i;:::-;-1:-1:-1;723:9:0;735:5;739:1;735;:5;:::i;:::-;723:17;543:224;-1:-1:-1;;;;;543:224:0:o;10183:651::-;-1:-1:-1;;;;;10336:16:0;;10315:4;10336:16;;;:6;:16;;;;;;:21;:46;;;;-1:-1:-1;;;;;;10361:17:0;;10381:1;10361:17;;;:7;:17;;;;;;:21;;10336:46;10332:166;;;10403:7;;-1:-1:-1;;;;;10403:19:0;;;:7;;;;;:19;10399:88;;10463:8;;-1:-1:-1;;;;;10443:16:0;;;;;;:6;:16;;;;;:28;;:16;;;:28;;10463:8;;10443:28;:::i;:::-;;;;-1:-1:-1;;10399:88:0;10523:7;;10587:8;;-1:-1:-1;;;;;10523:7:0;;;10508:12;10570:13;;;:7;:13;;;;;:25;;10523:7;;10587:8;10570:13;;10508:12;10570:25;;10587:8;;10570:25;:::i;:::-;;;;-1:-1:-1;;;;;;;10610:16:0;;;;;;:6;:16;;;;;;:21;;10606:84;;-1:-1:-1;;;;;10648:21:0;;;;;;:11;:21;;;;;:30;;10673:5;;10648:21;:30;;10673:5;;10648:30;:::i;:::-;;;;-1:-1:-1;;10606:84:0;-1:-1:-1;;;;;10721:21:0;;;;;;:11;:21;;;;;:30;;10746:5;;10721:21;:30;;10746:5;;10721:30;:::i;:::-;;;;;;;;10786:8;-1:-1:-1;;;;;10767:35:0;10776:8;-1:-1:-1;;;;;10767:35:0;;10796:5;10767:35;;;;160:25:1;;148:2;133:18;;14:177;10767:35:0;;;;;;;;-1:-1:-1;10822:4:0;;10183:651;-1:-1:-1;;;;10183:651:0:o;196:548:1:-;308:4;337:2;366;355:9;348:21;398:6;392:13;441:6;436:2;425:9;421:18;414:34;466:1;476:140;490:6;487:1;484:13;476:140;;;585:14;;;581:23;;575:30;551:17;;;570:2;547:26;540:66;505:10;;476:140;;;480:3;665:1;660:2;651:6;640:9;636:22;632:31;625:42;735:2;728;724:7;719:2;711:6;707:15;703:29;692:9;688:45;684:54;676:62;;;;196:548;;;;:::o;976:173::-;1044:20;;-1:-1:-1;;;;;1093:31:1;;1083:42;;1073:70;;1139:1;1136;1129:12;1073:70;976:173;;;:::o;1154:254::-;1222:6;1230;1283:2;1271:9;1262:7;1258:23;1254:32;1251:52;;;1299:1;1296;1289:12;1251:52;1322:29;1341:9;1322:29;:::i;:::-;1312:39;1398:2;1383:18;;;;1370:32;;-1:-1:-1;;;1154:254:1:o;1605:328::-;1682:6;1690;1698;1751:2;1739:9;1730:7;1726:23;1722:32;1719:52;;;1767:1;1764;1757:12;1719:52;1790:29;1809:9;1790:29;:::i;:::-;1780:39;;1838:38;1872:2;1861:9;1857:18;1838:38;:::i;:::-;1828:48;;1923:2;1912:9;1908:18;1895:32;1885:42;;1605:328;;;;;:::o;1938:186::-;1997:6;2050:2;2038:9;2029:7;2025:23;2021:32;2018:52;;;2066:1;2063;2056:12;2018:52;2089:29;2108:9;2089:29;:::i;2526:260::-;2594:6;2602;2655:2;2643:9;2634:7;2630:23;2626:32;2623:52;;;2671:1;2668;2661:12;2623:52;2694:29;2713:9;2694:29;:::i;:::-;2684:39;;2742:38;2776:2;2765:9;2761:18;2742:38;:::i;:::-;2732:48;;2526:260;;;;;:::o;3125:127::-;3186:10;3181:3;3177:20;3174:1;3167:31;3217:4;3214:1;3207:15;3241:4;3238:1;3231:15;3257:128;3324:9;;;3345:11;;;3342:37;;;3359:18;;:::i;3390:125::-;3455:9;;;3476:10;;;3473:36;;;3489:18;;:::i
Swarm Source
ipfs://fcdaea0d6eda52433e52761a9b5cda4020c850328276ebd2e613c150fc384055
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.