Feature Tip: Add private address tag to any address under My Name Tag !
Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 105 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Manual Send | 16846035 | 666 days ago | IN | 0 ETH | 0.00050527 | ||||
Approve | 15594613 | 841 days ago | IN | 0 ETH | 0.00026775 | ||||
Approve | 15592940 | 841 days ago | IN | 0 ETH | 0.00032126 | ||||
Approve | 15591709 | 842 days ago | IN | 0 ETH | 0.00040306 | ||||
Manual Send | 15588502 | 842 days ago | IN | 0 ETH | 0.00014521 | ||||
Approve | 15588472 | 842 days ago | IN | 0 ETH | 0.00033368 | ||||
Approve | 15588459 | 842 days ago | IN | 0 ETH | 0.00027962 | ||||
Approve | 15588320 | 842 days ago | IN | 0 ETH | 0.00025987 | ||||
Approve | 15588294 | 842 days ago | IN | 0 ETH | 0.00030629 | ||||
Approve | 15588270 | 842 days ago | IN | 0 ETH | 0.00013889 | ||||
Approve | 15588253 | 842 days ago | IN | 0 ETH | 0.00042151 | ||||
Approve | 15588253 | 842 days ago | IN | 0 ETH | 0.0006246 | ||||
Approve | 15588240 | 842 days ago | IN | 0 ETH | 0.00018507 | ||||
Approve | 15588223 | 842 days ago | IN | 0 ETH | 0.00014567 | ||||
Approve | 15588223 | 842 days ago | IN | 0 ETH | 0.00030439 | ||||
Approve | 15588215 | 842 days ago | IN | 0 ETH | 0.00027962 | ||||
Approve | 15588215 | 842 days ago | IN | 0 ETH | 0.00018348 | ||||
Approve | 15588214 | 842 days ago | IN | 0 ETH | 0.00032218 | ||||
Approve | 15588210 | 842 days ago | IN | 0 ETH | 0.00028204 | ||||
Approve | 15588210 | 842 days ago | IN | 0 ETH | 0.00037178 | ||||
Approve | 15588207 | 842 days ago | IN | 0 ETH | 0.00029904 | ||||
Approve | 15588201 | 842 days ago | IN | 0 ETH | 0.00040617 | ||||
Approve | 15588201 | 842 days ago | IN | 0 ETH | 0.00041445 | ||||
Approve | 15588198 | 842 days ago | IN | 0 ETH | 0.00034 | ||||
Approve | 15588195 | 842 days ago | IN | 0 ETH | 0.00030147 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
16846035 | 666 days ago | 0.00128665 ETH | ||||
16846030 | 666 days ago | 0.00128665 ETH | ||||
16371657 | 733 days ago | 0.00137167 ETH | ||||
16371656 | 733 days ago | 0.00137167 ETH | ||||
15588502 | 842 days ago | 2.21251629 ETH | ||||
15588465 | 842 days ago | 0.00137167 ETH | ||||
15588460 | 842 days ago | 0.00137167 ETH | ||||
15588294 | 842 days ago | 0.00226762 ETH | ||||
15588293 | 842 days ago | 0.00233792 ETH | ||||
15588293 | 842 days ago | 0.00233792 ETH | ||||
15588293 | 842 days ago | 0.00378007 ETH | ||||
15588277 | 842 days ago | 0.00161931 ETH | ||||
15588275 | 842 days ago | 0.00162435 ETH | ||||
15588275 | 842 days ago | 0.00525361 ETH | ||||
15588275 | 842 days ago | 0.00764572 ETH | ||||
15588270 | 842 days ago | 0.00169103 ETH | ||||
15588256 | 842 days ago | 0.00083588 ETH | ||||
15588255 | 842 days ago | 0.00083588 ETH | ||||
15588240 | 842 days ago | 0.00192587 ETH | ||||
15588226 | 842 days ago | 0.00192587 ETH | ||||
15588225 | 842 days ago | 0.00328291 ETH | ||||
15588225 | 842 days ago | 0.00226563 ETH | ||||
15588223 | 842 days ago | 0.00226563 ETH | ||||
15588222 | 842 days ago | 0.00129177 ETH | ||||
15588220 | 842 days ago | 0.00705986 ETH |
Loading...
Loading
Contract Name:
CHINYO
Compiler Version
v0.8.12+commit.f00d7308
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-09-22 */ /** Volt inu whales as the team! Telegram: T.me/Chinyoinu */ // SPDX-License-Identifier: Unlicensed pragma solidity ^0.8.12; abstract contract Context { function _msgSender() internal view virtual returns (address payable) { return payable(msg.sender); } function _msgData() internal view virtual returns (bytes memory) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, 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 sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } 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) { // 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 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; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, "SafeMath: modulo by zero"); } function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } library Address { function isContract(address account) internal view returns (bool) { // According to EIP-1052, 0x0 is the value returned for not-yet created accounts // and 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470 is returned // for accounts without code, i.e. `keccak256('')` bytes32 codehash; bytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470; // solhint-disable-next-line no-inline-assembly assembly { codehash := extcodehash(account) } return (codehash != accountHash && codehash != 0x0); } function sendValue(address payable recipient, uint256 amount) internal { require(address(this).balance >= amount, "Address: insufficient balance"); // solhint-disable-next-line avoid-low-level-calls, avoid-call-value (bool success, ) = recipient.call{ value: amount }(""); require(success, "Address: unable to send value, recipient may have reverted"); } function functionCall(address target, bytes memory data) internal returns (bytes memory) { return functionCall(target, data, "Address: low-level call failed"); } function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) { return _functionCallWithValue(target, data, 0, errorMessage); } function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) { return functionCallWithValue(target, data, value, "Address: low-level call with value failed"); } function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) { require(address(this).balance >= value, "Address: insufficient balance for call"); return _functionCallWithValue(target, data, value, errorMessage); } function _functionCallWithValue(address target, bytes memory data, uint256 weiValue, string memory errorMessage) private returns (bytes memory) { require(isContract(target), "Address: call to non-contract"); // solhint-disable-next-line avoid-low-level-calls (bool success, bytes memory returndata) = target.call{ value: weiValue }(data); if (success) { return returndata; } else { // Look for revert reason and bubble it up if present if (returndata.length > 0) { // The easiest way to bubble the revert reason is using memory via assembly // solhint-disable-next-line no-inline-assembly assembly { let returndata_size := mload(returndata) revert(add(32, returndata), returndata_size) } } else { revert(errorMessage); } } } } contract Ownable is Context { address private _owner; address private _previousOwner; uint256 private _lockTime; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } function geUnlockTime() public view returns (uint256) { return _lockTime; } //Locks the contract for owner for the amount of time provided function lock(uint256 time) public virtual onlyOwner { _previousOwner = _owner; _owner = address(0); _lockTime = block.timestamp + time; emit OwnershipTransferred(_owner, address(0)); } //Unlocks the contract for owner when _lockTime is exceeds function unlock() public virtual { require(_previousOwner == msg.sender, "You don't have permission to unlock"); require(block.timestamp > _lockTime , "Contract is locked until 7 days"); emit OwnershipTransferred(_owner, _previousOwner); _owner = _previousOwner; } } interface IUniswapV2Factory { event PairCreated(address indexed token0, address indexed token1, address pair, uint); function feeTo() external view returns (address); function feeToSetter() external view returns (address); function getPair(address tokenA, address tokenB) external view returns (address pair); function allPairs(uint) external view returns (address pair); function allPairsLength() external view returns (uint); function createPair(address tokenA, address tokenB) external returns (address pair); function setFeeTo(address) external; function setFeeToSetter(address) external; } interface IUniswapV2Pair { event Approval(address indexed owner, address indexed spender, uint value); event Transfer(address indexed from, address indexed to, uint value); function name() external pure returns (string memory); function symbol() external pure returns (string memory); function decimals() external pure returns (uint8); function totalSupply() external view returns (uint); function balanceOf(address owner) external view returns (uint); function allowance(address owner, address spender) external view returns (uint); function approve(address spender, uint value) external returns (bool); function transfer(address to, uint value) external returns (bool); function transferFrom(address from, address to, uint value) external returns (bool); function DOMAIN_SEPARATOR() external view returns (bytes32); function PERMIT_TYPEHASH() external pure returns (bytes32); function nonces(address owner) external view returns (uint); function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external; event Mint(address indexed sender, uint amount0, uint amount1); event Burn(address indexed sender, uint amount0, uint amount1, address indexed to); event Swap( address indexed sender, uint amount0In, uint amount1In, uint amount0Out, uint amount1Out, address indexed to ); event Sync(uint112 reserve0, uint112 reserve1); function MINIMUM_LIQUIDITY() external pure returns (uint); function factory() external view returns (address); function token0() external view returns (address); function token1() external view returns (address); function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast); function price0CumulativeLast() external view returns (uint); function price1CumulativeLast() external view returns (uint); function kLast() external view returns (uint); function mint(address to) external returns (uint liquidity); function burn(address to) external returns (uint amount0, uint amount1); function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external; function skim(address to) external; function sync() external; function initialize(address, address) external; } 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); function quote(uint amountA, uint reserveA, uint reserveB) external pure returns (uint amountB); function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut) external pure returns (uint amountOut); function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut) external pure returns (uint amountIn); function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts); function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts); } interface IUniswapV2Router02 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 implementation contract CHINYO is Context, IERC20, Ownable { using SafeMath for uint256; using Address for address; mapping (address => uint256) private _rOwned; mapping (address => uint256) private _tOwned; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private _isExcludedFromFee; mapping (address => bool) private _isExcluded; address[] private _excluded; uint256 private constant MAX = ~uint256(0); uint256 private _tTotal = 1_000_000_000_000* 10**9; uint256 private _rTotal = (MAX - (MAX % _tTotal)); uint256 private _tFeeTotal; string private _name = 'Chinyo Inu'; string private _symbol = 'CHINYO'; uint8 private _decimals = 9; uint256 public _liquidityFee = 0; uint256 private _taxFee = 0; uint256 private _previousTaxFee = _taxFee; address payable private _MarketingWalletAddress; IUniswapV2Router02 public immutable uniswapV2Router; address public immutable uniswapV2Pair; bool inSwap = false; bool public swapEnabled = true; uint256 private _maxTxAmount = _tTotal * 3 / 100; uint256 private _numOfTokensToExchangeForMarketing = 5 * 10**3 * 10**9; uint256 private _Denominator = 17; uint256 private _previousDenominator = _Denominator; event MinTokensBeforeSwapUpdated(uint256 minTokensBeforeSwap); event SwapEnabledUpdated(bool enabled); modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor (address payable MarketingWalletAddress) public { _MarketingWalletAddress = MarketingWalletAddress; _rOwned[_msgSender()] = _rTotal; IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()) .createPair(address(this), _uniswapV2Router.WETH()); uniswapV2Router = _uniswapV2Router; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[_MarketingWalletAddress] = true; emit Transfer(address(0), _msgSender(), _tTotal); } function name() public view returns (string memory) { return _name; } function symbol() public view returns (string memory) { return _symbol; } function decimals() public view returns (uint8) { return _decimals; } function totalSupply() public view override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { if (_isExcluded[account]) return _tOwned[account]; return tokenFromReflection(_rOwned[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 increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue)); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero")); return true; } function deliver(uint256 tAmount) public { address sender = _msgSender(); require(!_isExcluded[sender], "Excluded addresses cannot call this function"); (uint256 rAmount,,,,,) = _getValues(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _rTotal = _rTotal.sub(rAmount); _tFeeTotal = _tFeeTotal.add(tAmount); } function reflectionFromToken(uint256 tAmount, bool deductTransferFee) public view returns(uint256) { require(tAmount <= _tTotal, "Amount must be less than supply"); if (!deductTransferFee) { (uint256 rAmount,,,,,) = _getValues(tAmount); return rAmount; } else { (,uint256 rTransferAmount,,,,) = _getValues(tAmount); return rTransferAmount; } } function tokenFromReflection(uint256 rAmount) public view returns(uint256) { require(rAmount <= _rTotal, "Amount must be less than total reflections"); uint256 currentRate = _getRate(); return rAmount.div(currentRate); } function excludeAccount(address account) external onlyOwner() { require(!_isExcluded[account], "Account is already excluded"); if(_rOwned[account] > 0) { _tOwned[account] = tokenFromReflection(_rOwned[account]); } _isExcluded[account] = true; _excluded.push(account); } function includeAccount(address account) external onlyOwner() { require(_isExcluded[account], "Account is already excluded"); for (uint256 i = 0; i < _excluded.length; i++) { if (_excluded[i] == account) { _excluded[i] = _excluded[_excluded.length - 1]; _tOwned[account] = 0; _isExcluded[account] = false; _excluded.pop(); break; } } } function removeAllFee() private { if(_taxFee == 0 && _Denominator == 0) return; _previousTaxFee = _taxFee; _previousDenominator = _Denominator; _taxFee = 0; _Denominator = 0; } function restoreAllFee() private { _taxFee = _previousTaxFee; _Denominator = _previousDenominator; } function isExcludedFromFee(address account) public view returns(bool) { return _isExcludedFromFee[account]; } 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 sender, address recipient, uint256 amount) private { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); if(sender != owner() && recipient != owner()) require(amount <= _maxTxAmount, "Transfer amount exceeds the maxTxAmount."); uint256 contractTokenBalance = balanceOf(address(this)); if(contractTokenBalance >= _maxTxAmount) { contractTokenBalance = _maxTxAmount; } bool overMinTokenBalance = contractTokenBalance >= _numOfTokensToExchangeForMarketing; if (!inSwap && swapEnabled && overMinTokenBalance && sender != uniswapV2Pair) { swapTokensForEth(contractTokenBalance); } bool takeFee = true; if(_isExcludedFromFee[sender] || _isExcludedFromFee[recipient]){ takeFee = false; } _tokenTransfer(sender,recipient,amount,takeFee); } 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 sendETHToMarketing(uint256 amount) private { _MarketingWalletAddress.transfer(amount); } function manualSwap() external { uint256 contractBalance = balanceOf(address(this)); swapTokensForEth(contractBalance); } function manualSend() external { uint256 contractETHBalance = address(this).balance; _MarketingWalletAddress.transfer(contractETHBalance); } function _tokenTransfer(address sender, address recipient, uint256 amount, bool takeFee) private { if(!takeFee) removeAllFee(); if (_isExcluded[sender] && !_isExcluded[recipient]) { _transferFromExcluded(sender, recipient, amount); } else if (!_isExcluded[sender] && _isExcluded[recipient]) { _transferToExcluded(sender, recipient, amount); } else if (!_isExcluded[sender] && !_isExcluded[recipient]) { _transferStandard(sender, recipient, amount); } else if (_isExcluded[sender] && _isExcluded[recipient]) { _transferBothExcluded(sender, recipient, amount); } else { _transferStandard(sender, recipient, amount); } if(!takeFee) restoreAllFee(); } function _transferStandard(address sender, address recipient, uint256 tAmount) private { (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tMarketing) = _getValues(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); _takeMarketing(tMarketing); _reflectFee(rFee, tFee); emit Transfer(sender, recipient, tTransferAmount); } function _transferToExcluded(address sender, address recipient, uint256 tAmount) private { (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tMarketing) = _getValues(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _tOwned[recipient] = _tOwned[recipient].add(tTransferAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); _takeMarketing(tMarketing); _reflectFee(rFee, tFee); emit Transfer(sender, recipient, tTransferAmount); } function _transferFromExcluded(address sender, address recipient, uint256 tAmount) private { (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tMarketing) = _getValues(tAmount); _tOwned[sender] = _tOwned[sender].sub(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); _takeMarketing(tMarketing); _reflectFee(rFee, tFee); emit Transfer(sender, recipient, tTransferAmount); } function _transferBothExcluded(address sender, address recipient, uint256 tAmount) private { (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tMarketing) = _getValues(tAmount); _tOwned[sender] = _tOwned[sender].sub(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _tOwned[recipient] = _tOwned[recipient].add(tTransferAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); _takeMarketing(tMarketing); _reflectFee(rFee, tFee); emit Transfer(sender, recipient, tTransferAmount); } function _takeMarketing(uint256 tMarketing) private { uint256 currentRate = _getRate(); uint256 rMarketing = tMarketing.mul(currentRate); _rOwned[address(this)] = _rOwned[address(this)].add(rMarketing); if(_isExcluded[address(this)]) _tOwned[address(this)] = _tOwned[address(this)].add(tMarketing); } function _reflectFee(uint256 rFee, uint256 tFee) private { _rTotal = _rTotal.sub(rFee); _tFeeTotal = _tFeeTotal.add(tFee); } receive() external payable {} function _getValues(uint256 tAmount) private view returns (uint256, uint256, uint256, uint256, uint256, uint256) { (uint256 tTransferAmount, uint256 tFee, uint256 tMarketing) = _getTValues(tAmount, _taxFee, _Denominator); uint256 currentRate = _getRate(); (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(tAmount, tFee, currentRate); return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tMarketing); } function _getTValues(uint256 tAmount, uint256 taxFee, uint256 MarketingFee) private pure returns (uint256, uint256, uint256) { uint256 tFee = tAmount.mul(taxFee).div(100); uint256 tMarketing = tAmount.mul(MarketingFee).div(100); uint256 tTransferAmount = tAmount.sub(tFee).sub(tMarketing); return (tTransferAmount, tFee, tMarketing); } function _getRValues(uint256 tAmount, uint256 tFee, uint256 currentRate) private pure returns (uint256, uint256, uint256) { uint256 rAmount = tAmount.mul(currentRate); uint256 rFee = tFee.mul(currentRate); uint256 rTransferAmount = rAmount.sub(rFee); return (rAmount, rTransferAmount, rFee); } function _getRate() private view returns(uint256) { (uint256 rSupply, uint256 tSupply) = _getCurrentSupply(); return rSupply.div(tSupply); } function _getCurrentSupply() private view returns(uint256, uint256) { uint256 rSupply = _rTotal; uint256 tSupply = _tTotal; for (uint256 i = 0; i < _excluded.length; i++) { if (_rOwned[_excluded[i]] > rSupply || _tOwned[_excluded[i]] > tSupply) return (_rTotal, _tTotal); rSupply = rSupply.sub(_rOwned[_excluded[i]]); tSupply = tSupply.sub(_tOwned[_excluded[i]]); } if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal); return (rSupply, tSupply); } function _getMaxTxAmount() public view returns(uint256) { return _maxTxAmount; } function _setMaxTxAmount(uint256 maxTxAmount) external onlyOwner() { _maxTxAmount = maxTxAmount; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address payable","name":"MarketingWalletAddress","type":"address"}],"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":"minTokensBeforeSwap","type":"uint256"}],"name":"MinTokensBeforeSwapUpdated","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":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"SwapEnabledUpdated","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":"_getMaxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_liquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTxAmount","type":"uint256"}],"name":"_setMaxTxAmount","outputs":[],"stateMutability":"nonpayable","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":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tAmount","type":"uint256"}],"name":"deliver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"excludeAccount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"geUnlockTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"includeAccount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"time","type":"uint256"}],"name":"lock","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tAmount","type":"uint256"},{"internalType":"bool","name":"deductTransferFee","type":"bool"}],"name":"reflectionFromToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"rAmount","type":"uint256"}],"name":"tokenFromReflection","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"unlock","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60c0604052683635c9adc5dea0000060098190556200002190600019620004c3565b6200002f90600019620004f0565b600a90815560408051808201909152818152694368696e796f20496e7560b01b60209091019081526200006691600c919062000407565b50604080518082019091526006808252654348494e594f60d01b60209092019182526200009691600d9162000407565b50600e805460ff191660099081179091556000600f81905560108190556011556012805461ffff60a01b1916600160a81b17905554606490620000db9060036200050a565b620000e791906200052c565b60135565048c2739500060145560116015556015546016553480156200010c57600080fd5b5060405162002948380380620029488339810160408190526200012f916200055c565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350601280546001600160a01b0319166001600160a01b038316179055600a54600360006200019a3390565b6001600160a01b03166001600160a01b03168152602001908152602001600020819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000216573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200023c91906200055c565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200028a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002b091906200055c565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002fe573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200032491906200055c565b6001600160a01b0390811660a0528116608052600160066000620003506000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526006909352818320805485166001908117909155601254909116835291208054909216179055620003af3390565b6001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600954604051620003f791815260200190565b60405180910390a35050620005c0565b828054620004159062000583565b90600052602060002090601f01602090048101928262000439576000855562000484565b82601f106200045457805160ff191683800117855562000484565b8280016001018555821562000484579182015b828111156200048457825182559160200191906001019062000467565b506200049292915062000496565b5090565b5b8082111562000492576000815560010162000497565b634e487b7160e01b600052601260045260246000fd5b600082620004d557620004d5620004ad565b500690565b634e487b7160e01b600052601160045260246000fd5b600082821015620005055762000505620004da565b500390565b6000816000190483118215151615620005275762000527620004da565b500290565b6000826200053e576200053e620004ad565b500490565b6001600160a01b03811681146200055957600080fd5b50565b6000602082840312156200056f57600080fd5b81516200057c8162000543565b9392505050565b600181811c908216806200059857607f821691505b60208210811415620005ba57634e487b7160e01b600052602260045260246000fd5b50919050565b60805160a05161234662000602600039600081816103a401526113ac015260008181610255015281816116540152818161170d015261174901526123466000f3fe6080604052600436106101dc5760003560e01c80636ddd171311610102578063b6c5232411610095578063f2fde38b11610064578063f2fde38b146105a3578063f4293890146105c3578063f7a91591146105d8578063f84354f1146105ed57600080fd5b8063b6c5232414610508578063dd4670641461051d578063dd62ed3e1461053d578063f2cc0c181461058357600080fd5b806395d89b41116100d157806395d89b411461049e578063a457c2d7146104b3578063a69df4b5146104d3578063a9059cbb146104e857600080fd5b80636ddd17131461042a57806370a082311461044b578063715018a61461046b5780638da5cb5b1461048057600080fd5b8063313ce5671161017a57806349bd5a5e1161014957806349bd5a5e1461039257806351bc3c85146103c65780635342acb4146103db5780636bc87c3a1461041457600080fd5b8063313ce5671461031057806339509351146103325780633bd5d173146103525780634549b0391461037257600080fd5b806318160ddd116101b657806318160ddd1461028f5780631bbae6e0146102ae57806323b872dd146102d05780632d838119146102f057600080fd5b806306fdde03146101e8578063095ea7b3146102135780631694505e1461024357600080fd5b366101e357005b600080fd5b3480156101f457600080fd5b506101fd61060d565b60405161020a9190611f68565b60405180910390f35b34801561021f57600080fd5b5061023361022e366004611fd2565b61069f565b604051901515815260200161020a565b34801561024f57600080fd5b506102777f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161020a565b34801561029b57600080fd5b506009545b60405190815260200161020a565b3480156102ba57600080fd5b506102ce6102c9366004611ffe565b6106b6565b005b3480156102dc57600080fd5b506102336102eb366004612017565b6106ee565b3480156102fc57600080fd5b506102a061030b366004611ffe565b610757565b34801561031c57600080fd5b50600e5460405160ff909116815260200161020a565b34801561033e57600080fd5b5061023361034d366004611fd2565b6107db565b34801561035e57600080fd5b506102ce61036d366004611ffe565b610811565b34801561037e57600080fd5b506102a061038d366004612058565b6108fb565b34801561039e57600080fd5b506102777f000000000000000000000000000000000000000000000000000000000000000081565b3480156103d257600080fd5b506102ce610988565b3480156103e757600080fd5b506102336103f636600461208d565b6001600160a01b031660009081526006602052604090205460ff1690565b34801561042057600080fd5b506102a0600f5481565b34801561043657600080fd5b5060125461023390600160a81b900460ff1681565b34801561045757600080fd5b506102a061046636600461208d565b6109a1565b34801561047757600080fd5b506102ce610a00565b34801561048c57600080fd5b506000546001600160a01b0316610277565b3480156104aa57600080fd5b506101fd610a62565b3480156104bf57600080fd5b506102336104ce366004611fd2565b610a71565b3480156104df57600080fd5b506102ce610ac0565b3480156104f457600080fd5b50610233610503366004611fd2565b610bc6565b34801561051457600080fd5b506002546102a0565b34801561052957600080fd5b506102ce610538366004611ffe565b610bd3565b34801561054957600080fd5b506102a06105583660046120aa565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b34801561058f57600080fd5b506102ce61059e36600461208d565b610c58565b3480156105af57600080fd5b506102ce6105be36600461208d565b610dab565b3480156105cf57600080fd5b506102ce610e83565b3480156105e457600080fd5b506013546102a0565b3480156105f957600080fd5b506102ce61060836600461208d565b610ec1565b6060600c805461061c906120d8565b80601f0160208091040260200160405190810160405280929190818152602001828054610648906120d8565b80156106955780601f1061066a57610100808354040283529160200191610695565b820191906000526020600020905b81548152906001019060200180831161067857829003601f168201915b5050505050905090565b60006106ac338484611074565b5060015b92915050565b6000546001600160a01b031633146106e95760405162461bcd60e51b81526004016106e090612113565b60405180910390fd5b601355565b60006106fb848484611198565b61074d8433610748856040518060600160405280602881526020016122a4602891396001600160a01b038a166000908152600560209081526040808320338452909152902054919061144e565b611074565b5060019392505050565b6000600a548211156107be5760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016106e0565b60006107c8611488565b90506107d483826114ab565b9392505050565b3360008181526005602090815260408083206001600160a01b038716845290915281205490916106ac91859061074890866114ed565b3360008181526007602052604090205460ff16156108865760405162461bcd60e51b815260206004820152602c60248201527f4578636c75646564206164647265737365732063616e6e6f742063616c6c207460448201526b3434b990333ab731ba34b7b760a11b60648201526084016106e0565b60006108918361154c565b505050506001600160a01b0384166000908152600360205260409020549192506108bd919050826115a8565b6001600160a01b038316600090815260036020526040902055600a546108e390826115a8565b600a55600b546108f390846114ed565b600b55505050565b600060095483111561094f5760405162461bcd60e51b815260206004820152601f60248201527f416d6f756e74206d757374206265206c657373207468616e20737570706c790060448201526064016106e0565b8161096e57600061095f8461154c565b509395506106b0945050505050565b60006109798461154c565b509295506106b0945050505050565b6000610993306109a1565b905061099e816115ea565b50565b6001600160a01b03811660009081526007602052604081205460ff16156109de57506001600160a01b031660009081526004602052604090205490565b6001600160a01b0382166000908152600360205260409020546106b090610757565b6000546001600160a01b03163314610a2a5760405162461bcd60e51b81526004016106e090612113565b600080546040516001600160a01b03909116906000805160206122cc833981519152908390a3600080546001600160a01b0319169055565b6060600d805461061c906120d8565b60006106ac3384610748856040518060600160405280602581526020016122ec602591393360009081526005602090815260408083206001600160a01b038d168452909152902054919061144e565b6001546001600160a01b03163314610b265760405162461bcd60e51b815260206004820152602360248201527f596f7520646f6e27742068617665207065726d697373696f6e20746f20756e6c6044820152626f636b60e81b60648201526084016106e0565b6002544211610b775760405162461bcd60e51b815260206004820152601f60248201527f436f6e7472616374206973206c6f636b656420756e74696c203720646179730060448201526064016106e0565b600154600080546040516001600160a01b0393841693909116916000805160206122cc83398151915291a3600154600080546001600160a01b0319166001600160a01b03909216919091179055565b60006106ac338484611198565b6000546001600160a01b03163314610bfd5760405162461bcd60e51b81526004016106e090612113565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610c2c814261215e565b600255600080546040516001600160a01b03909116906000805160206122cc833981519152908390a350565b6000546001600160a01b03163314610c825760405162461bcd60e51b81526004016106e090612113565b6001600160a01b03811660009081526007602052604090205460ff1615610ceb5760405162461bcd60e51b815260206004820152601b60248201527f4163636f756e7420697320616c7265616479206578636c75646564000000000060448201526064016106e0565b6001600160a01b03811660009081526003602052604090205415610d45576001600160a01b038116600090815260036020526040902054610d2b90610757565b6001600160a01b0382166000908152600460205260409020555b6001600160a01b03166000818152600760205260408120805460ff191660019081179091556008805491820181559091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30180546001600160a01b0319169091179055565b6000546001600160a01b03163314610dd55760405162461bcd60e51b81526004016106e090612113565b6001600160a01b038116610e3a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016106e0565b600080546040516001600160a01b03808516939216916000805160206122cc83398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b60125460405147916001600160a01b03169082156108fc029083906000818181858888f19350505050158015610ebd573d6000803e3d6000fd5b5050565b6000546001600160a01b03163314610eeb5760405162461bcd60e51b81526004016106e090612113565b6001600160a01b03811660009081526007602052604090205460ff16610f535760405162461bcd60e51b815260206004820152601b60248201527f4163636f756e7420697320616c7265616479206578636c75646564000000000060448201526064016106e0565b60005b600854811015610ebd57816001600160a01b031660088281548110610f7d57610f7d612176565b6000918252602090912001546001600160a01b031614156110625760088054610fa89060019061218c565b81548110610fb857610fb8612176565b600091825260209091200154600880546001600160a01b039092169183908110610fe457610fe4612176565b600091825260208083209190910180546001600160a01b0319166001600160a01b039485161790559184168152600482526040808220829055600790925220805460ff19169055600880548061103c5761103c6121a3565b600082815260209020810160001990810180546001600160a01b03191690550190555050565b8061106c816121b9565b915050610f56565b6001600160a01b0383166110d65760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106e0565b6001600160a01b0382166111375760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106e0565b6001600160a01b0383811660008181526005602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166111fc5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016106e0565b6001600160a01b03821661125e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016106e0565b600081116112c05760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016106e0565b6000546001600160a01b038481169116148015906112ec57506000546001600160a01b03838116911614155b15611354576013548111156113545760405162461bcd60e51b815260206004820152602860248201527f5472616e7366657220616d6f756e74206578636565647320746865206d6178546044820152673c20b6b7bab73a1760c11b60648201526084016106e0565b600061135f306109a1565b9050601354811061136f57506013545b6014546012549082101590600160a01b900460ff1615801561139a5750601254600160a81b900460ff165b80156113a35750805b80156113e157507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316856001600160a01b031614155b156113ef576113ef826115ea565b6001600160a01b03851660009081526006602052604090205460019060ff168061143157506001600160a01b03851660009081526006602052604090205460ff165b1561143a575060005b611446868686846117ca565b505050505050565b600081848411156114725760405162461bcd60e51b81526004016106e09190611f68565b50600061147f848661218c565b95945050505050565b6000806000611495611947565b90925090506114a482826114ab565b9250505090565b60006107d483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611ac9565b6000806114fa838561215e565b9050838110156107d45760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016106e0565b60008060008060008060008060006115698a601054601554611af7565b9250925092506000611579611488565b9050600080600061158b8e8786611b4c565b919e509c509a509598509396509194505050505091939550919395565b60006107d483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061144e565b6012805460ff60a01b1916600160a01b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061163257611632612176565b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116d491906121d4565b816001815181106116e7576116e7612176565b60200260200101906001600160a01b031690816001600160a01b031681525050611732307f000000000000000000000000000000000000000000000000000000000000000084611074565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063791ac947906117879085906000908690309042906004016121f1565b600060405180830381600087803b1580156117a157600080fd5b505af11580156117b5573d6000803e3d6000fd5b50506012805460ff60a01b1916905550505050565b806117d7576117d7611b88565b6001600160a01b03841660009081526007602052604090205460ff16801561181857506001600160a01b03831660009081526007602052604090205460ff16155b1561182d57611828848484611bb6565b61192b565b6001600160a01b03841660009081526007602052604090205460ff1615801561186e57506001600160a01b03831660009081526007602052604090205460ff165b1561187e57611828848484611cdc565b6001600160a01b03841660009081526007602052604090205460ff161580156118c057506001600160a01b03831660009081526007602052604090205460ff16155b156118d057611828848484611d85565b6001600160a01b03841660009081526007602052604090205460ff16801561191057506001600160a01b03831660009081526007602052604090205460ff165b1561192057611828848484611dc9565b61192b848484611d85565b8061194157611941601154601055601654601555565b50505050565b600a546009546000918291825b600854811015611a995782600360006008848154811061197657611976612176565b60009182526020808320909101546001600160a01b0316835282019290925260400190205411806119e157508160046000600884815481106119ba576119ba612176565b60009182526020808320909101546001600160a01b03168352820192909252604001902054115b156119f757600a54600954945094505050509091565b611a3d6003600060088481548110611a1157611a11612176565b60009182526020808320909101546001600160a01b0316835282019290925260400190205484906115a8565b9250611a856004600060088481548110611a5957611a59612176565b60009182526020808320909101546001600160a01b0316835282019290925260400190205483906115a8565b915080611a91816121b9565b915050611954565b50600954600a54611aa9916114ab565b821015611ac057600a546009549350935050509091565b90939092509050565b60008183611aea5760405162461bcd60e51b81526004016106e09190611f68565b50600061147f8486612262565b6000808080611b116064611b0b8989611e3c565b906114ab565b90506000611b246064611b0b8a89611e3c565b90506000611b3c82611b368b866115a8565b906115a8565b9992985090965090945050505050565b6000808080611b5b8786611e3c565b90506000611b698787611e3c565b90506000611b7783836115a8565b929992985090965090945050505050565b601054158015611b985750601554155b15611b9f57565b601080546011556015805460165560009182905555565b600080600080600080611bc88761154c565b6001600160a01b038f16600090815260046020526040902054959b50939950919750955093509150611bfa90886115a8565b6001600160a01b038a16600090815260046020908152604080832093909355600390522054611c2990876115a8565b6001600160a01b03808b1660009081526003602052604080822093909355908a1681522054611c5890866114ed565b6001600160a01b038916600090815260036020526040902055611c7a81611ebb565b611c848483611f44565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611cc991815260200190565b60405180910390a3505050505050505050565b600080600080600080611cee8761154c565b6001600160a01b038f16600090815260036020526040902054959b50939950919750955093509150611d2090876115a8565b6001600160a01b03808b16600090815260036020908152604080832094909455918b16815260049091522054611d5690846114ed565b6001600160a01b038916600090815260046020908152604080832093909355600390522054611c5890866114ed565b600080600080600080611d978761154c565b6001600160a01b038f16600090815260036020526040902054959b50939950919750955093509150611c2990876115a8565b600080600080600080611ddb8761154c565b6001600160a01b038f16600090815260046020526040902054959b50939950919750955093509150611e0d90886115a8565b6001600160a01b038a16600090815260046020908152604080832093909355600390522054611d2090876115a8565b600082611e4b575060006106b0565b6000611e578385612284565b905082611e648583612262565b146107d45760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016106e0565b6000611ec5611488565b90506000611ed38383611e3c565b30600090815260036020526040902054909150611ef090826114ed565b3060009081526003602090815260408083209390935560079052205460ff1615611f3f5730600090815260046020526040902054611f2e90846114ed565b306000908152600460205260409020555b505050565b600a54611f5190836115a8565b600a55600b54611f6190826114ed565b600b555050565b600060208083528351808285015260005b81811015611f9557858101830151858201604001528201611f79565b81811115611fa7576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461099e57600080fd5b60008060408385031215611fe557600080fd5b8235611ff081611fbd565b946020939093013593505050565b60006020828403121561201057600080fd5b5035919050565b60008060006060848603121561202c57600080fd5b833561203781611fbd565b9250602084013561204781611fbd565b929592945050506040919091013590565b6000806040838503121561206b57600080fd5b823591506020830135801515811461208257600080fd5b809150509250929050565b60006020828403121561209f57600080fd5b81356107d481611fbd565b600080604083850312156120bd57600080fd5b82356120c881611fbd565b9150602083013561208281611fbd565b600181811c908216806120ec57607f821691505b6020821081141561210d57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b6000821982111561217157612171612148565b500190565b634e487b7160e01b600052603260045260246000fd5b60008282101561219e5761219e612148565b500390565b634e487b7160e01b600052603160045260246000fd5b60006000198214156121cd576121cd612148565b5060010190565b6000602082840312156121e657600080fd5b81516107d481611fbd565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156122415784516001600160a01b03168352938301939183019160010161221c565b50506001600160a01b03969096166060850152505050608001529392505050565b60008261227f57634e487b7160e01b600052601260045260246000fd5b500490565b600081600019048311821515161561229e5761229e612148565b50029056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63658be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e045524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212206c54874823c92a016061da48d1187925db431286d43c48918c7e8c4101e27e3b64736f6c634300080c0033000000000000000000000000999730e4a17a4512d5c58533685b2ceb2f1622e5
Deployed Bytecode
0x6080604052600436106101dc5760003560e01c80636ddd171311610102578063b6c5232411610095578063f2fde38b11610064578063f2fde38b146105a3578063f4293890146105c3578063f7a91591146105d8578063f84354f1146105ed57600080fd5b8063b6c5232414610508578063dd4670641461051d578063dd62ed3e1461053d578063f2cc0c181461058357600080fd5b806395d89b41116100d157806395d89b411461049e578063a457c2d7146104b3578063a69df4b5146104d3578063a9059cbb146104e857600080fd5b80636ddd17131461042a57806370a082311461044b578063715018a61461046b5780638da5cb5b1461048057600080fd5b8063313ce5671161017a57806349bd5a5e1161014957806349bd5a5e1461039257806351bc3c85146103c65780635342acb4146103db5780636bc87c3a1461041457600080fd5b8063313ce5671461031057806339509351146103325780633bd5d173146103525780634549b0391461037257600080fd5b806318160ddd116101b657806318160ddd1461028f5780631bbae6e0146102ae57806323b872dd146102d05780632d838119146102f057600080fd5b806306fdde03146101e8578063095ea7b3146102135780631694505e1461024357600080fd5b366101e357005b600080fd5b3480156101f457600080fd5b506101fd61060d565b60405161020a9190611f68565b60405180910390f35b34801561021f57600080fd5b5061023361022e366004611fd2565b61069f565b604051901515815260200161020a565b34801561024f57600080fd5b506102777f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b6040516001600160a01b03909116815260200161020a565b34801561029b57600080fd5b506009545b60405190815260200161020a565b3480156102ba57600080fd5b506102ce6102c9366004611ffe565b6106b6565b005b3480156102dc57600080fd5b506102336102eb366004612017565b6106ee565b3480156102fc57600080fd5b506102a061030b366004611ffe565b610757565b34801561031c57600080fd5b50600e5460405160ff909116815260200161020a565b34801561033e57600080fd5b5061023361034d366004611fd2565b6107db565b34801561035e57600080fd5b506102ce61036d366004611ffe565b610811565b34801561037e57600080fd5b506102a061038d366004612058565b6108fb565b34801561039e57600080fd5b506102777f000000000000000000000000734c15e882a7a72106ebee627f5816d0deddb7ad81565b3480156103d257600080fd5b506102ce610988565b3480156103e757600080fd5b506102336103f636600461208d565b6001600160a01b031660009081526006602052604090205460ff1690565b34801561042057600080fd5b506102a0600f5481565b34801561043657600080fd5b5060125461023390600160a81b900460ff1681565b34801561045757600080fd5b506102a061046636600461208d565b6109a1565b34801561047757600080fd5b506102ce610a00565b34801561048c57600080fd5b506000546001600160a01b0316610277565b3480156104aa57600080fd5b506101fd610a62565b3480156104bf57600080fd5b506102336104ce366004611fd2565b610a71565b3480156104df57600080fd5b506102ce610ac0565b3480156104f457600080fd5b50610233610503366004611fd2565b610bc6565b34801561051457600080fd5b506002546102a0565b34801561052957600080fd5b506102ce610538366004611ffe565b610bd3565b34801561054957600080fd5b506102a06105583660046120aa565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b34801561058f57600080fd5b506102ce61059e36600461208d565b610c58565b3480156105af57600080fd5b506102ce6105be36600461208d565b610dab565b3480156105cf57600080fd5b506102ce610e83565b3480156105e457600080fd5b506013546102a0565b3480156105f957600080fd5b506102ce61060836600461208d565b610ec1565b6060600c805461061c906120d8565b80601f0160208091040260200160405190810160405280929190818152602001828054610648906120d8565b80156106955780601f1061066a57610100808354040283529160200191610695565b820191906000526020600020905b81548152906001019060200180831161067857829003601f168201915b5050505050905090565b60006106ac338484611074565b5060015b92915050565b6000546001600160a01b031633146106e95760405162461bcd60e51b81526004016106e090612113565b60405180910390fd5b601355565b60006106fb848484611198565b61074d8433610748856040518060600160405280602881526020016122a4602891396001600160a01b038a166000908152600560209081526040808320338452909152902054919061144e565b611074565b5060019392505050565b6000600a548211156107be5760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016106e0565b60006107c8611488565b90506107d483826114ab565b9392505050565b3360008181526005602090815260408083206001600160a01b038716845290915281205490916106ac91859061074890866114ed565b3360008181526007602052604090205460ff16156108865760405162461bcd60e51b815260206004820152602c60248201527f4578636c75646564206164647265737365732063616e6e6f742063616c6c207460448201526b3434b990333ab731ba34b7b760a11b60648201526084016106e0565b60006108918361154c565b505050506001600160a01b0384166000908152600360205260409020549192506108bd919050826115a8565b6001600160a01b038316600090815260036020526040902055600a546108e390826115a8565b600a55600b546108f390846114ed565b600b55505050565b600060095483111561094f5760405162461bcd60e51b815260206004820152601f60248201527f416d6f756e74206d757374206265206c657373207468616e20737570706c790060448201526064016106e0565b8161096e57600061095f8461154c565b509395506106b0945050505050565b60006109798461154c565b509295506106b0945050505050565b6000610993306109a1565b905061099e816115ea565b50565b6001600160a01b03811660009081526007602052604081205460ff16156109de57506001600160a01b031660009081526004602052604090205490565b6001600160a01b0382166000908152600360205260409020546106b090610757565b6000546001600160a01b03163314610a2a5760405162461bcd60e51b81526004016106e090612113565b600080546040516001600160a01b03909116906000805160206122cc833981519152908390a3600080546001600160a01b0319169055565b6060600d805461061c906120d8565b60006106ac3384610748856040518060600160405280602581526020016122ec602591393360009081526005602090815260408083206001600160a01b038d168452909152902054919061144e565b6001546001600160a01b03163314610b265760405162461bcd60e51b815260206004820152602360248201527f596f7520646f6e27742068617665207065726d697373696f6e20746f20756e6c6044820152626f636b60e81b60648201526084016106e0565b6002544211610b775760405162461bcd60e51b815260206004820152601f60248201527f436f6e7472616374206973206c6f636b656420756e74696c203720646179730060448201526064016106e0565b600154600080546040516001600160a01b0393841693909116916000805160206122cc83398151915291a3600154600080546001600160a01b0319166001600160a01b03909216919091179055565b60006106ac338484611198565b6000546001600160a01b03163314610bfd5760405162461bcd60e51b81526004016106e090612113565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610c2c814261215e565b600255600080546040516001600160a01b03909116906000805160206122cc833981519152908390a350565b6000546001600160a01b03163314610c825760405162461bcd60e51b81526004016106e090612113565b6001600160a01b03811660009081526007602052604090205460ff1615610ceb5760405162461bcd60e51b815260206004820152601b60248201527f4163636f756e7420697320616c7265616479206578636c75646564000000000060448201526064016106e0565b6001600160a01b03811660009081526003602052604090205415610d45576001600160a01b038116600090815260036020526040902054610d2b90610757565b6001600160a01b0382166000908152600460205260409020555b6001600160a01b03166000818152600760205260408120805460ff191660019081179091556008805491820181559091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30180546001600160a01b0319169091179055565b6000546001600160a01b03163314610dd55760405162461bcd60e51b81526004016106e090612113565b6001600160a01b038116610e3a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016106e0565b600080546040516001600160a01b03808516939216916000805160206122cc83398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b60125460405147916001600160a01b03169082156108fc029083906000818181858888f19350505050158015610ebd573d6000803e3d6000fd5b5050565b6000546001600160a01b03163314610eeb5760405162461bcd60e51b81526004016106e090612113565b6001600160a01b03811660009081526007602052604090205460ff16610f535760405162461bcd60e51b815260206004820152601b60248201527f4163636f756e7420697320616c7265616479206578636c75646564000000000060448201526064016106e0565b60005b600854811015610ebd57816001600160a01b031660088281548110610f7d57610f7d612176565b6000918252602090912001546001600160a01b031614156110625760088054610fa89060019061218c565b81548110610fb857610fb8612176565b600091825260209091200154600880546001600160a01b039092169183908110610fe457610fe4612176565b600091825260208083209190910180546001600160a01b0319166001600160a01b039485161790559184168152600482526040808220829055600790925220805460ff19169055600880548061103c5761103c6121a3565b600082815260209020810160001990810180546001600160a01b03191690550190555050565b8061106c816121b9565b915050610f56565b6001600160a01b0383166110d65760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106e0565b6001600160a01b0382166111375760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106e0565b6001600160a01b0383811660008181526005602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166111fc5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016106e0565b6001600160a01b03821661125e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016106e0565b600081116112c05760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016106e0565b6000546001600160a01b038481169116148015906112ec57506000546001600160a01b03838116911614155b15611354576013548111156113545760405162461bcd60e51b815260206004820152602860248201527f5472616e7366657220616d6f756e74206578636565647320746865206d6178546044820152673c20b6b7bab73a1760c11b60648201526084016106e0565b600061135f306109a1565b9050601354811061136f57506013545b6014546012549082101590600160a01b900460ff1615801561139a5750601254600160a81b900460ff165b80156113a35750805b80156113e157507f000000000000000000000000734c15e882a7a72106ebee627f5816d0deddb7ad6001600160a01b0316856001600160a01b031614155b156113ef576113ef826115ea565b6001600160a01b03851660009081526006602052604090205460019060ff168061143157506001600160a01b03851660009081526006602052604090205460ff165b1561143a575060005b611446868686846117ca565b505050505050565b600081848411156114725760405162461bcd60e51b81526004016106e09190611f68565b50600061147f848661218c565b95945050505050565b6000806000611495611947565b90925090506114a482826114ab565b9250505090565b60006107d483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611ac9565b6000806114fa838561215e565b9050838110156107d45760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016106e0565b60008060008060008060008060006115698a601054601554611af7565b9250925092506000611579611488565b9050600080600061158b8e8786611b4c565b919e509c509a509598509396509194505050505091939550919395565b60006107d483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061144e565b6012805460ff60a01b1916600160a01b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061163257611632612176565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116d491906121d4565b816001815181106116e7576116e7612176565b60200260200101906001600160a01b031690816001600160a01b031681525050611732307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d84611074565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d169063791ac947906117879085906000908690309042906004016121f1565b600060405180830381600087803b1580156117a157600080fd5b505af11580156117b5573d6000803e3d6000fd5b50506012805460ff60a01b1916905550505050565b806117d7576117d7611b88565b6001600160a01b03841660009081526007602052604090205460ff16801561181857506001600160a01b03831660009081526007602052604090205460ff16155b1561182d57611828848484611bb6565b61192b565b6001600160a01b03841660009081526007602052604090205460ff1615801561186e57506001600160a01b03831660009081526007602052604090205460ff165b1561187e57611828848484611cdc565b6001600160a01b03841660009081526007602052604090205460ff161580156118c057506001600160a01b03831660009081526007602052604090205460ff16155b156118d057611828848484611d85565b6001600160a01b03841660009081526007602052604090205460ff16801561191057506001600160a01b03831660009081526007602052604090205460ff165b1561192057611828848484611dc9565b61192b848484611d85565b8061194157611941601154601055601654601555565b50505050565b600a546009546000918291825b600854811015611a995782600360006008848154811061197657611976612176565b60009182526020808320909101546001600160a01b0316835282019290925260400190205411806119e157508160046000600884815481106119ba576119ba612176565b60009182526020808320909101546001600160a01b03168352820192909252604001902054115b156119f757600a54600954945094505050509091565b611a3d6003600060088481548110611a1157611a11612176565b60009182526020808320909101546001600160a01b0316835282019290925260400190205484906115a8565b9250611a856004600060088481548110611a5957611a59612176565b60009182526020808320909101546001600160a01b0316835282019290925260400190205483906115a8565b915080611a91816121b9565b915050611954565b50600954600a54611aa9916114ab565b821015611ac057600a546009549350935050509091565b90939092509050565b60008183611aea5760405162461bcd60e51b81526004016106e09190611f68565b50600061147f8486612262565b6000808080611b116064611b0b8989611e3c565b906114ab565b90506000611b246064611b0b8a89611e3c565b90506000611b3c82611b368b866115a8565b906115a8565b9992985090965090945050505050565b6000808080611b5b8786611e3c565b90506000611b698787611e3c565b90506000611b7783836115a8565b929992985090965090945050505050565b601054158015611b985750601554155b15611b9f57565b601080546011556015805460165560009182905555565b600080600080600080611bc88761154c565b6001600160a01b038f16600090815260046020526040902054959b50939950919750955093509150611bfa90886115a8565b6001600160a01b038a16600090815260046020908152604080832093909355600390522054611c2990876115a8565b6001600160a01b03808b1660009081526003602052604080822093909355908a1681522054611c5890866114ed565b6001600160a01b038916600090815260036020526040902055611c7a81611ebb565b611c848483611f44565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611cc991815260200190565b60405180910390a3505050505050505050565b600080600080600080611cee8761154c565b6001600160a01b038f16600090815260036020526040902054959b50939950919750955093509150611d2090876115a8565b6001600160a01b03808b16600090815260036020908152604080832094909455918b16815260049091522054611d5690846114ed565b6001600160a01b038916600090815260046020908152604080832093909355600390522054611c5890866114ed565b600080600080600080611d978761154c565b6001600160a01b038f16600090815260036020526040902054959b50939950919750955093509150611c2990876115a8565b600080600080600080611ddb8761154c565b6001600160a01b038f16600090815260046020526040902054959b50939950919750955093509150611e0d90886115a8565b6001600160a01b038a16600090815260046020908152604080832093909355600390522054611d2090876115a8565b600082611e4b575060006106b0565b6000611e578385612284565b905082611e648583612262565b146107d45760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016106e0565b6000611ec5611488565b90506000611ed38383611e3c565b30600090815260036020526040902054909150611ef090826114ed565b3060009081526003602090815260408083209390935560079052205460ff1615611f3f5730600090815260046020526040902054611f2e90846114ed565b306000908152600460205260409020555b505050565b600a54611f5190836115a8565b600a55600b54611f6190826114ed565b600b555050565b600060208083528351808285015260005b81811015611f9557858101830151858201604001528201611f79565b81811115611fa7576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461099e57600080fd5b60008060408385031215611fe557600080fd5b8235611ff081611fbd565b946020939093013593505050565b60006020828403121561201057600080fd5b5035919050565b60008060006060848603121561202c57600080fd5b833561203781611fbd565b9250602084013561204781611fbd565b929592945050506040919091013590565b6000806040838503121561206b57600080fd5b823591506020830135801515811461208257600080fd5b809150509250929050565b60006020828403121561209f57600080fd5b81356107d481611fbd565b600080604083850312156120bd57600080fd5b82356120c881611fbd565b9150602083013561208281611fbd565b600181811c908216806120ec57607f821691505b6020821081141561210d57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b6000821982111561217157612171612148565b500190565b634e487b7160e01b600052603260045260246000fd5b60008282101561219e5761219e612148565b500390565b634e487b7160e01b600052603160045260246000fd5b60006000198214156121cd576121cd612148565b5060010190565b6000602082840312156121e657600080fd5b81516107d481611fbd565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156122415784516001600160a01b03168352938301939183019160010161221c565b50506001600160a01b03969096166060850152505050608001529392505050565b60008261227f57634e487b7160e01b600052601260045260246000fd5b500490565b600081600019048311821515161561229e5761229e612148565b50029056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63658be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e045524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212206c54874823c92a016061da48d1187925db431286d43c48918c7e8c4101e27e3b64736f6c634300080c0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000999730e4a17a4512d5c58533685b2ceb2f1622e5
-----Decoded View---------------
Arg [0] : MarketingWalletAddress (address): 0x999730E4A17A4512D5C58533685b2CeB2F1622E5
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000999730e4a17a4512d5c58533685b2ceb2f1622e5
Deployed Bytecode Sourcemap
17105:16333:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19576:91;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20572:173;;;;;;;;;;-1:-1:-1;20572:173:0;;;;;:::i;:::-;;:::i;:::-;;;1237:14:1;;1230:22;1212:41;;1200:2;1185:18;20572:173:0;1072:187:1;18149:51:0;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1455:32:1;;;1437:51;;1425:2;1410:18;18149:51:0;1264:230:1;19889:103:0;;;;;;;;;;-1:-1:-1;19973:7:0;;19889:103;;;1645:25:1;;;1633:2;1618:18;19889:103:0;1499:177:1;33306:120:0;;;;;;;;;;-1:-1:-1;33306:120:0;;;;;:::i;:::-;;:::i;:::-;;20757:329;;;;;;;;;;-1:-1:-1;20757:329:0;;;;;:::i;:::-;;:::i;22534:269::-;;;;;;;;;;-1:-1:-1;22534:269:0;;;;;:::i;:::-;;:::i;19786:91::-;;;;;;;;;;-1:-1:-1;19856:9:0;;19786:91;;19856:9;;;;2469:36:1;;2457:2;2442:18;19786:91:0;2327:184:1;21098:230:0;;;;;;;;;;-1:-1:-1;21098:230:0;;;;;:::i;:::-;;:::i;21633:405::-;;;;;;;;;;-1:-1:-1;21633:405:0;;;;;:::i;:::-;;:::i;22050:472::-;;;;;;;;;;-1:-1:-1;22050:472:0;;;;;:::i;:::-;;:::i;18211:38::-;;;;;;;;;;;;;;;26751:156;;;;;;;;;;;;;:::i;24166:131::-;;;;;;;;;;-1:-1:-1;24166:131:0;;;;;:::i;:::-;-1:-1:-1;;;;;24258:27:0;24230:4;24258:27;;;:18;:27;;;;;;;;;24166:131;17942:32;;;;;;;;;;;;;;;;18292:30;;;;;;;;;;-1:-1:-1;18292:30:0;;;;-1:-1:-1;;;18292:30:0;;;;;;20004:210;;;;;;;;;;-1:-1:-1;20004:210:0;;;;;:::i;:::-;;:::i;7076:160::-;;;;;;;;;;;;;:::i;6834:87::-;;;;;;;;;;-1:-1:-1;6872:7:0;6903:6;-1:-1:-1;;;;;6903:6:0;6834:87;;19679:95;;;;;;;;;;;;;:::i;21340:281::-;;;;;;;;;;-1:-1:-1;21340:281:0;;;;;:::i;:::-;;:::i;8035:325::-;;;;;;;;;;;;;:::i;20226:171::-;;;;;;;;;;-1:-1:-1;20226:171:0;;;;;:::i;:::-;;:::i;7520:97::-;;;;;;;;;;-1:-1:-1;7596:9:0;;7520:97;;7701:246;;;;;;;;;;-1:-1:-1;7701:246:0;;;;;:::i;:::-;;:::i;20409:151::-;;;;;;;;;;-1:-1:-1;20409:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;20521:18:0;;;20490:7;20521:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;20409:151;22815:360;;;;;;;;;;-1:-1:-1;22815:360:0;;;;;:::i;:::-;;:::i;7248:260::-;;;;;;;;;;-1:-1:-1;7248:260:0;;;;;:::i;:::-;;:::i;26927:175::-;;;;;;;;;;;;;:::i;33184:102::-;;;;;;;;;;-1:-1:-1;33262:12:0;;33184:102;;23187:522;;;;;;;;;;-1:-1:-1;23187:522:0;;;;;:::i;:::-;;:::i;19576:91::-;19613:13;19650:5;19643:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19576:91;:::o;20572:173::-;20647:4;20668:39;276:10;20691:7;20700:6;20668:8;:39::i;:::-;-1:-1:-1;20729:4:0;20572:173;;;;;:::o;33306:120::-;6977:6;;-1:-1:-1;;;;;6977:6:0;276:10;6977:22;6969:67;;;;-1:-1:-1;;;6969:67:0;;;;;;;:::i;:::-;;;;;;;;;33388:12:::1;:26:::0;33306:120::o;20757:329::-;20855:4;20876:36;20886:6;20894:9;20905:6;20876:9;:36::i;:::-;20927:121;20936:6;276:10;20958:89;20996:6;20958:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;20958:19:0;;;;;;:11;:19;;;;;;;;276:10;20958:33;;;;;;;;;;:37;:89::i;:::-;20927:8;:121::i;:::-;-1:-1:-1;21070:4:0;20757:329;;;;;:::o;22534:269::-;22600:7;22643;;22632;:18;;22624:73;;;;-1:-1:-1;;;22624:73:0;;4663:2:1;22624:73:0;;;4645:21:1;4702:2;4682:18;;;4675:30;4741:34;4721:18;;;4714:62;-1:-1:-1;;;4792:18:1;;;4785:40;4842:19;;22624:73:0;4461:406:1;22624:73:0;22712:19;22735:10;:8;:10::i;:::-;22712:33;-1:-1:-1;22767:24:0;:7;22712:33;22767:11;:24::i;:::-;22760:31;22534:269;-1:-1:-1;;;22534:269:0:o;21098:230::-;276:10;21186:4;21239:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;21239:34:0;;;;;;;;;;21186:4;;21207:83;;21230:7;;21239:50;;21278:10;21239:38;:50::i;21633:405::-;276:10;21689:14;21742:19;;;:11;:19;;;;;;;;21741:20;21733:77;;;;-1:-1:-1;;;21733:77:0;;5074:2:1;21733:77:0;;;5056:21:1;5113:2;5093:18;;;5086:30;5152:34;5132:18;;;5125:62;-1:-1:-1;;;5203:18:1;;;5196:42;5255:19;;21733:77:0;4872:408:1;21733:77:0;21826:15;21850:19;21861:7;21850:10;:19::i;:::-;-1:-1:-1;;;;;;;;;21902:15:0;;;;;;:7;:15;;;;;;21825:44;;-1:-1:-1;21902:28:0;;:15;-1:-1:-1;21825:44:0;21902:19;:28::i;:::-;-1:-1:-1;;;;;21884:15:0;;;;;;:7;:15;;;;;:46;21955:7;;:20;;21967:7;21955:11;:20::i;:::-;21945:7;:30;22003:10;;:23;;22018:7;22003:14;:23::i;:::-;21990:10;:36;-1:-1:-1;;;21633:405:0:o;22050:472::-;22140:7;22183;;22172;:18;;22164:62;;;;-1:-1:-1;;;22164:62:0;;5487:2:1;22164:62:0;;;5469:21:1;5526:2;5506:18;;;5499:30;5565:33;5545:18;;;5538:61;5616:18;;22164:62:0;5285:355:1;22164:62:0;22246:17;22241:270;;22285:15;22309:19;22320:7;22309:10;:19::i;:::-;-1:-1:-1;22284:44:0;;-1:-1:-1;22347:14:0;;-1:-1:-1;;;;;22347:14:0;22241:270;22404:23;22435:19;22446:7;22435:10;:19::i;:::-;-1:-1:-1;22402:52:0;;-1:-1:-1;22473:22:0;;-1:-1:-1;;;;;22473:22:0;26751:156;26797:23;26823:24;26841:4;26823:9;:24::i;:::-;26797:50;;26862:33;26879:15;26862:16;:33::i;:::-;26782:125;26751:156::o;20004:210::-;-1:-1:-1;;;;;20098:20:0;;20070:7;20098:20;;;:11;:20;;;;;;;;20094:49;;;-1:-1:-1;;;;;;20127:16:0;;;;;:7;:16;;;;;;;20004:210::o;20094:49::-;-1:-1:-1;;;;;20185:16:0;;;;;;:7;:16;;;;;;20165:37;;:19;:37::i;7076:160::-;6977:6;;-1:-1:-1;;;;;6977:6:0;276:10;6977:22;6969:67;;;;-1:-1:-1;;;6969:67:0;;;;;;;:::i;:::-;7187:1:::1;7171:6:::0;;7150:40:::1;::::0;-1:-1:-1;;;;;7171:6:0;;::::1;::::0;-1:-1:-1;;;;;;;;;;;7150:40:0;7187:1;;7150:40:::1;7222:1;7205:19:::0;;-1:-1:-1;;;;;;7205:19:0::1;::::0;;7076:160::o;19679:95::-;19718:13;19755:7;19748:14;;;;;:::i;21340:281::-;21433:4;21454:129;276:10;21477:7;21486:96;21525:15;21486:96;;;;;;;;;;;;;;;;;276:10;21486:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;21486:34:0;;;;;;;;;;;;:38;:96::i;8035:325::-;8091:14;;-1:-1:-1;;;;;8091:14:0;8109:10;8091:28;8083:76;;;;-1:-1:-1;;;8083:76:0;;5847:2:1;8083:76:0;;;5829:21:1;5886:2;5866:18;;;5859:30;5925:34;5905:18;;;5898:62;-1:-1:-1;;;5976:18:1;;;5969:33;6019:19;;8083:76:0;5645:399:1;8083:76:0;8200:9;;8182:15;:27;8174:72;;;;-1:-1:-1;;;8174:72:0;;6251:2:1;8174:72:0;;;6233:21:1;6290:2;6270:18;;;6263:30;6329:33;6309:18;;;6302:61;6380:18;;8174:72:0;6049:355:1;8174:72:0;8295:14;;;8287:6;;8266:44;;-1:-1:-1;;;;;8295:14:0;;;;8287:6;;;;-1:-1:-1;;;;;;;;;;;8266:44:0;;8334:14;;;8325:23;;-1:-1:-1;;;;;;8325:23:0;-1:-1:-1;;;;;8334:14:0;;;8325:23;;;;;;8035:325::o;20226:171::-;20304:4;20321:42;276:10;20345:9;20356:6;20321:9;:42::i;7701:246::-;6977:6;;-1:-1:-1;;;;;6977:6:0;276:10;6977:22;6969:67;;;;-1:-1:-1;;;6969:67:0;;;;;;;:::i;:::-;7786:6:::1;::::0;;;7769:23;;-1:-1:-1;;;;;;7769:23:0;;::::1;-1:-1:-1::0;;;;;7786:6:0;::::1;7769:23;::::0;;;7807:19:::1;::::0;;7853:22:::1;7871:4:::0;7853:15:::1;:22;:::i;:::-;7841:9;:34:::0;7932:1:::1;7916:6:::0;;7895:40:::1;::::0;-1:-1:-1;;;;;7916:6:0;;::::1;::::0;-1:-1:-1;;;;;;;;;;;7895:40:0;7932:1;;7895:40:::1;7701:246:::0;:::o;22815:360::-;6977:6;;-1:-1:-1;;;;;6977:6:0;276:10;6977:22;6969:67;;;;-1:-1:-1;;;6969:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;22901:20:0;::::1;;::::0;;;:11:::1;:20;::::0;;;;;::::1;;22900:21;22892:61;;;::::0;-1:-1:-1;;;22892:61:0;;6876:2:1;22892:61:0::1;::::0;::::1;6858:21:1::0;6915:2;6895:18;;;6888:30;6954:29;6934:18;;;6927:57;7001:18;;22892:61:0::1;6674:351:1::0;22892:61:0::1;-1:-1:-1::0;;;;;22971:16:0;::::1;22990:1;22971:16:::0;;;:7:::1;:16;::::0;;;;;:20;22968:116:::1;;-1:-1:-1::0;;;;;23051:16:0;::::1;;::::0;;;:7:::1;:16;::::0;;;;;23031:37:::1;::::0;:19:::1;:37::i;:::-;-1:-1:-1::0;;;;;23012:16:0;::::1;;::::0;;;:7:::1;:16;::::0;;;;:56;22968:116:::1;-1:-1:-1::0;;;;;23098:20:0::1;;::::0;;;:11:::1;:20;::::0;;;;:27;;-1:-1:-1;;23098:27:0::1;23121:4;23098:27:::0;;::::1;::::0;;;23140:9:::1;:23:::0;;;;::::1;::::0;;;;;;::::1;::::0;;-1:-1:-1;;;;;;23140:23:0::1;::::0;;::::1;::::0;;22815:360::o;7248:260::-;6977:6;;-1:-1:-1;;;;;6977:6:0;276:10;6977:22;6969:67;;;;-1:-1:-1;;;6969:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7341:22:0;::::1;7333:73;;;::::0;-1:-1:-1;;;7333:73:0;;7232:2:1;7333:73:0::1;::::0;::::1;7214:21:1::0;7271:2;7251:18;;;7244:30;7310:34;7290:18;;;7283:62;-1:-1:-1;;;7361:18:1;;;7354:36;7407:19;;7333:73:0::1;7030:402:1::0;7333:73:0::1;7447:6;::::0;;7426:38:::1;::::0;-1:-1:-1;;;;;7426:38:0;;::::1;::::0;7447:6;::::1;::::0;-1:-1:-1;;;;;;;;;;;7426:38:0;::::1;7479:6;:17:::0;;-1:-1:-1;;;;;;7479:17:0::1;-1:-1:-1::0;;;;;7479:17:0;;;::::1;::::0;;;::::1;::::0;;7248:260::o;26927:175::-;27038:23;;:52;;27002:21;;-1:-1:-1;;;;;27038:23:0;;:52;;;;;27002:21;;26973:26;27038:52;26973:26;27038:52;27002:21;27038:23;:52;;;;;;;;;;;;;;;;;;;;;26958:144;26927:175::o;23187:522::-;6977:6;;-1:-1:-1;;;;;6977:6:0;276:10;6977:22;6969:67;;;;-1:-1:-1;;;6969:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;23272:20:0;::::1;;::::0;;;:11:::1;:20;::::0;;;;;::::1;;23264:60;;;::::0;-1:-1:-1;;;23264:60:0;;6876:2:1;23264:60:0::1;::::0;::::1;6858:21:1::0;6915:2;6895:18;;;6888:30;6954:29;6934:18;;;6927:57;7001:18;;23264:60:0::1;6674:351:1::0;23264:60:0::1;23344:9;23339:359;23363:9;:16:::0;23359:20;::::1;23339:359;;;23425:7;-1:-1:-1::0;;;;;23409:23:0::1;:9;23419:1;23409:12;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;23409:12:0::1;:23;23405:278;;;23472:9;23482:16:::0;;:20:::1;::::0;23501:1:::1;::::0;23482:20:::1;:::i;:::-;23472:31;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;23457:9:::1;:12:::0;;-1:-1:-1;;;;;23472:31:0;;::::1;::::0;23467:1;;23457:12;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;;::::1;:46:::0;;-1:-1:-1;;;;;;23457:46:0::1;-1:-1:-1::0;;;;;23457:46:0;;::::1;;::::0;;23526:16;;::::1;::::0;;:7:::1;:16:::0;;;;;;:20;;;23569:11:::1;:20:::0;;;;:28;;-1:-1:-1;;23569:28:0::1;::::0;;23620:9:::1;:15:::0;;;::::1;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;-1:-1:-1;;23620:15:0;;;;;-1:-1:-1;;;;;;23620:15:0::1;::::0;;;;;27038:52;26958:144;26927:175::o;23405:278::-:1;23381:3:::0;::::1;::::0;::::1;:::i;:::-;;;;23339:359;;24309:357:::0;-1:-1:-1;;;;;24406:19:0;;24398:68;;;;-1:-1:-1;;;24398:68:0;;8173:2:1;24398:68:0;;;8155:21:1;8212:2;8192:18;;;8185:30;8251:34;8231:18;;;8224:62;-1:-1:-1;;;8302:18:1;;;8295:34;8346:19;;24398:68:0;7971:400:1;24398:68:0;-1:-1:-1;;;;;24489:21:0;;24481:68;;;;-1:-1:-1;;;24481:68:0;;8578:2:1;24481:68:0;;;8560:21:1;8617:2;8597:18;;;8590:30;8656:34;8636:18;;;8629:62;-1:-1:-1;;;8707:18:1;;;8700:32;8749:19;;24481:68:0;8376:398:1;24481:68:0;-1:-1:-1;;;;;24566:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;24622:32;;1645:25:1;;;24622:32:0;;1618:18:1;24622:32:0;;;;;;;24309:357;;;:::o;24678:1333::-;-1:-1:-1;;;;;24779:20:0;;24771:70;;;;-1:-1:-1;;;24771:70:0;;8981:2:1;24771:70:0;;;8963:21:1;9020:2;9000:18;;;8993:30;9059:34;9039:18;;;9032:62;-1:-1:-1;;;9110:18:1;;;9103:35;9155:19;;24771:70:0;8779:401:1;24771:70:0;-1:-1:-1;;;;;24864:23:0;;24856:71;;;;-1:-1:-1;;;24856:71:0;;9387:2:1;24856:71:0;;;9369:21:1;9426:2;9406:18;;;9399:30;9465:34;9445:18;;;9438:62;-1:-1:-1;;;9516:18:1;;;9509:33;9559:19;;24856:71:0;9185:399:1;24856:71:0;24959:1;24950:6;:10;24942:64;;;;-1:-1:-1;;;24942:64:0;;9791:2:1;24942:64:0;;;9773:21:1;9830:2;9810:18;;;9803:30;9869:34;9849:18;;;9842:62;-1:-1:-1;;;9920:18:1;;;9913:39;9969:19;;24942:64:0;9589:405:1;24942:64:0;6872:7;6903:6;-1:-1:-1;;;;;25038:17:0;;;6903:6;;25038:17;;;;:41;;-1:-1:-1;6872:7:0;6903:6;-1:-1:-1;;;;;25059:20:0;;;6903:6;;25059:20;;25038:41;25035:138;;;25116:12;;25106:6;:22;;25098:75;;;;-1:-1:-1;;;25098:75:0;;10201:2:1;25098:75:0;;;10183:21:1;10240:2;10220:18;;;10213:30;10279:34;10259:18;;;10252:62;-1:-1:-1;;;10330:18:1;;;10323:38;10378:19;;25098:75:0;9999:404:1;25098:75:0;25203:28;25234:24;25252:4;25234:9;:24::i;:::-;25203:55;;25314:12;;25290:20;:36;25287:124;;-1:-1:-1;25383:12:0;;25287:124;25490:34;;25544:6;;25466:58;;;;;-1:-1:-1;;;25544:6:0;;;;25543:7;:22;;;;-1:-1:-1;25554:11:0;;-1:-1:-1;;;25554:11:0;;;;25543:22;:45;;;;;25569:19;25543:45;:72;;;;;25602:13;-1:-1:-1;;;;;25592:23:0;:6;-1:-1:-1;;;;;25592:23:0;;;25543:72;25539:170;;;25653:38;25670:20;25653:16;:38::i;:::-;-1:-1:-1;;;;;25806:26:0;;25747:12;25806:26;;;:18;:26;;;;;;25762:4;;25806:26;;;:59;;-1:-1:-1;;;;;;25836:29:0;;;;;;:18;:29;;;;;;;;25806:59;25803:113;;;-1:-1:-1;25895:5:0;25803:113;25952:47;25967:6;25974:9;25984:6;25991:7;25952:14;:47::i;:::-;24756:1255;;;24678:1333;;;:::o;1679:208::-;1765:7;1805:12;1797:6;;;;1789:29;;;;-1:-1:-1;;;1789:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1833:9:0;1845:5;1849:1;1845;:5;:::i;:::-;1833:17;1679:208;-1:-1:-1;;;;;1679:208:0:o;32384:175::-;32425:7;32450:15;32467;32486:19;:17;:19::i;:::-;32449:56;;-1:-1:-1;32449:56:0;-1:-1:-1;32527:20:0;32449:56;;32527:11;:20::i;:::-;32520:27;;;;32384:175;:::o;2418:140::-;2476:7;2507:39;2511:1;2514;2507:39;;;;;;;;;;;;;;;;;:3;:39::i;1318:197::-;1376:7;;1412:5;1416:1;1412;:5;:::i;:::-;1400:17;;1445:1;1440;:6;;1432:46;;;;-1:-1:-1;;;1432:46:0;;10610:2:1;1432:46:0;;;10592:21:1;10649:2;10629:18;;;10622:30;10688:29;10668:18;;;10661:57;10735:18;;1432:46:0;10408:351:1;31103:495:0;31162:7;31171;31180;31189;31198;31207;31232:23;31257:12;31271:18;31293:43;31305:7;31314;;31323:12;;31293:11;:43::i;:::-;31231:105;;;;;;31351:19;31374:10;:8;:10::i;:::-;31351:33;;31400:15;31417:23;31442:12;31458:39;31470:7;31479:4;31485:11;31458;:39::i;:::-;31399:98;;-1:-1:-1;31399:98:0;-1:-1:-1;31399:98:0;-1:-1:-1;31552:15:0;;-1:-1:-1;31569:4:0;;-1:-1:-1;31575:10:0;;-1:-1:-1;;;;;31103:495:0;;;;;;;:::o;1525:144::-;1583:7;1614:43;1618:1;1621;1614:43;;;;;;;;;;;;;;;;;:3;:43::i;26023:557::-;18743:6;:13;;-1:-1:-1;;;;18743:13:0;-1:-1:-1;;;18743:13:0;;;26139:16:::1;::::0;;26153:1:::1;26139:16:::0;;;;;::::1;::::0;;-1:-1:-1;;26139:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;26139:16:0::1;26115:40;;26188:4;26170;26175:1;26170:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1::0;;;;;26170:23:0::1;;;-1:-1:-1::0;;;;;26170:23:0::1;;;::::0;::::1;26218:15;-1:-1:-1::0;;;;;26218:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;26208:4;26213:1;26208:7;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1::0;;;;;26208:32:0::1;;;-1:-1:-1::0;;;;;26208:32:0::1;;;::::0;::::1;26257:62;26274:4;26289:15;26307:11;26257:8;:62::i;:::-;26347:221;::::0;-1:-1:-1;;;26347:221:0;;-1:-1:-1;;;;;26347:15:0::1;:66;::::0;::::1;::::0;:221:::1;::::0;26432:11;;26462:1:::1;::::0;26483:4;;26514::::1;::::0;26538:15:::1;::::0;26347:221:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;18787:6:0;:14;;-1:-1:-1;;;;18787:14:0;;;-1:-1:-1;;;;26023:557:0:o;27122:883::-;27238:7;27234:44;;27264:14;:12;:14::i;:::-;-1:-1:-1;;;;;27299:19:0;;;;;;:11;:19;;;;;;;;:46;;;;-1:-1:-1;;;;;;27323:22:0;;;;;;:11;:22;;;;;;;;27322:23;27299:46;27295:637;;;27366:48;27388:6;27396:9;27407:6;27366:21;:48::i;:::-;27295:637;;;-1:-1:-1;;;;;27441:19:0;;;;;;:11;:19;;;;;;;;27440:20;:46;;;;-1:-1:-1;;;;;;27464:22:0;;;;;;:11;:22;;;;;;;;27440:46;27436:496;;;27507:46;27527:6;27535:9;27546:6;27507:19;:46::i;27436:496::-;-1:-1:-1;;;;;27580:19:0;;;;;;:11;:19;;;;;;;;27579:20;:47;;;;-1:-1:-1;;;;;;27604:22:0;;;;;;:11;:22;;;;;;;;27603:23;27579:47;27575:357;;;27647:44;27665:6;27673:9;27684:6;27647:17;:44::i;27575:357::-;-1:-1:-1;;;;;27717:19:0;;;;;;:11;:19;;;;;;;;:45;;;;-1:-1:-1;;;;;;27740:22:0;;;;;;:11;:22;;;;;;;;27717:45;27713:219;;;27783:48;27805:6;27813:9;27824:6;27783:21;:48::i;27713:219::-;27872:44;27890:6;27898:9;27909:6;27872:17;:44::i;:::-;27952:7;27948:45;;27978:15;24073;;24063:7;:25;24118:20;;24103:12;:35;24015:135;27978:15;27122:883;;;;:::o;32571:601::-;32672:7;;32712;;32621;;;;;32740:305;32764:9;:16;32760:20;;32740:305;;;32834:7;32810;:21;32818:9;32828:1;32818:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;32818:12:0;32810:21;;;;;;;;;;;;;:31;;:66;;;32869:7;32845;:21;32853:9;32863:1;32853:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;32853:12:0;32845:21;;;;;;;;;;;;;:31;32810:66;32806:97;;;32886:7;;32895;;32878:25;;;;;;;32571:601;;:::o;32806:97::-;32932:34;32944:7;:21;32952:9;32962:1;32952:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;32952:12:0;32944:21;;;;;;;;;;;;;32932:7;;:11;:34::i;:::-;32922:44;;32995:34;33007:7;:21;33015:9;33025:1;33015:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;33015:12:0;33007:21;;;;;;;;;;;;;32995:7;;:11;:34::i;:::-;32985:44;-1:-1:-1;32782:3:0;;;;:::i;:::-;;;;32740:305;;;-1:-1:-1;33085:7:0;;33073;;:20;;:11;:20::i;:::-;33063:7;:30;33059:61;;;33103:7;;33112;;33095:25;;;;;;32571:601;;:::o;33059:61::-;33143:7;;33152;;-1:-1:-1;32571:601:0;-1:-1:-1;32571:601:0:o;2568:298::-;2654:7;2693:12;2686:5;2678:28;;;;-1:-1:-1;;;2678:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2721:9:0;2733:5;2737:1;2733;:5;:::i;31610:396::-;31708:7;;;;31765:28;31789:3;31765:19;:7;31777:6;31765:11;:19::i;:::-;:23;;:28::i;:::-;31750:43;-1:-1:-1;31808:18:0;31829:34;31859:3;31829:25;:7;31841:12;31829:11;:25::i;:34::-;31808:55;-1:-1:-1;31878:23:0;31904:33;31808:55;31904:17;:7;31916:4;31904:11;:17::i;:::-;:21;;:33::i;:::-;31878:59;31977:4;;-1:-1:-1;31983:10:0;;-1:-1:-1;31610:396:0;;-1:-1:-1;;;;;31610:396:0:o;32018:354::-;32113:7;;;;32173:24;:7;32185:11;32173;:24::i;:::-;32155:42;-1:-1:-1;32212:12:0;32227:21;:4;32236:11;32227:8;:21::i;:::-;32212:36;-1:-1:-1;32263:23:0;32289:17;:7;32212:36;32289:11;:17::i;:::-;32329:7;;;;-1:-1:-1;32355:4:0;;-1:-1:-1;32018:354:0;;-1:-1:-1;;;;;32018:354:0:o;23721:278::-;23771:7;;:12;:33;;;;-1:-1:-1;23787:12:0;;:17;23771:33;23768:45;;;23721:278::o;23768:45::-;23859:7;;;23841:15;:25;23904:12;;;23881:20;:35;-1:-1:-1;23945:11:0;;;;23971:16;23721:278::o;29195:599::-;29302:15;29319:23;29344:12;29358:23;29383:12;29397:18;29419:19;29430:7;29419:10;:19::i;:::-;-1:-1:-1;;;;;29471:15:0;;;;;;:7;:15;;;;;;29301:137;;-1:-1:-1;29301:137:0;;-1:-1:-1;29301:137:0;;-1:-1:-1;29301:137:0;-1:-1:-1;29301:137:0;-1:-1:-1;29301:137:0;-1:-1:-1;29471:28:0;;29491:7;29471:19;:28::i;:::-;-1:-1:-1;;;;;29453:15:0;;;;;;:7;:15;;;;;;;;:46;;;;29532:7;:15;;;;:28;;29552:7;29532:19;:28::i;:::-;-1:-1:-1;;;;;29514:15:0;;;;;;;:7;:15;;;;;;:46;;;;29596:18;;;;;;;:39;;29619:15;29596:22;:39::i;:::-;-1:-1:-1;;;;;29575:18:0;;;;;;:7;:18;;;;;:60;29651:26;29666:10;29651:14;:26::i;:::-;29695:23;29707:4;29713;29695:11;:23::i;:::-;29755:9;-1:-1:-1;;;;;29738:44:0;29747:6;-1:-1:-1;;;;;29738:44:0;;29766:15;29738:44;;;;1645:25:1;;1633:2;1618:18;;1499:177;29738:44:0;;;;;;;;29286:508;;;;;;29195:599;;;:::o;28561:622::-;28666:15;28683:23;28708:12;28722:23;28747:12;28761:18;28783:19;28794:7;28783:10;:19::i;:::-;-1:-1:-1;;;;;28835:15:0;;;;;;:7;:15;;;;;;28665:137;;-1:-1:-1;28665:137:0;;-1:-1:-1;28665:137:0;;-1:-1:-1;28665:137:0;-1:-1:-1;28665:137:0;-1:-1:-1;28665:137:0;-1:-1:-1;28835:28:0;;28665:137;28835:19;:28::i;:::-;-1:-1:-1;;;;;28817:15:0;;;;;;;:7;:15;;;;;;;;:46;;;;28899:18;;;;;:7;:18;;;;;:39;;28922:15;28899:22;:39::i;:::-;-1:-1:-1;;;;;28878:18:0;;;;;;:7;:18;;;;;;;;:60;;;;28974:7;:18;;;;:39;;28997:15;28974:22;:39::i;28017:532::-;28120:15;28137:23;28162:12;28176:23;28201:12;28215:18;28237:19;28248:7;28237:10;:19::i;:::-;-1:-1:-1;;;;;28289:15:0;;;;;;:7;:15;;;;;;28119:137;;-1:-1:-1;28119:137:0;;-1:-1:-1;28119:137:0;;-1:-1:-1;28119:137:0;-1:-1:-1;28119:137:0;-1:-1:-1;28119:137:0;-1:-1:-1;28289:28:0;;28119:137;28289:19;:28::i;29806:682::-;29913:15;29930:23;29955:12;29969:23;29994:12;30008:18;30030:19;30041:7;30030:10;:19::i;:::-;-1:-1:-1;;;;;30082:15:0;;;;;;:7;:15;;;;;;29912:137;;-1:-1:-1;29912:137:0;;-1:-1:-1;29912:137:0;;-1:-1:-1;29912:137:0;-1:-1:-1;29912:137:0;-1:-1:-1;29912:137:0;-1:-1:-1;30082:28:0;;30102:7;30082:19;:28::i;:::-;-1:-1:-1;;;;;30064:15:0;;;;;;:7;:15;;;;;;;;:46;;;;30143:7;:15;;;;:28;;30163:7;30143:19;:28::i;1897:511::-;1955:7;2216:6;2212:55;;-1:-1:-1;2250:1:0;2243:8;;2212:55;2283:9;2295:5;2299:1;2295;:5;:::i;:::-;2283:17;-1:-1:-1;2332:1:0;2323:5;2327:1;2283:17;2323:5;:::i;:::-;:10;2315:56;;;;-1:-1:-1;;;2315:56:0;;12734:2:1;2315:56:0;;;12716:21:1;12773:2;12753:18;;;12746:30;12812:34;12792:18;;;12785:62;-1:-1:-1;;;12863:18:1;;;12856:31;12904:19;;2315:56:0;12532:397:1;30500:379:0;30567:19;30590:10;:8;:10::i;:::-;30567:33;-1:-1:-1;30615:18:0;30636:27;:10;30567:33;30636:14;:27::i;:::-;30719:4;30703:22;;;;:7;:22;;;;;;30615:48;;-1:-1:-1;30703:38:0;;30615:48;30703:26;:38::i;:::-;30694:4;30678:22;;;;:7;:22;;;;;;;;:63;;;;30759:11;:26;;;;;;30756:111;;;30845:4;30829:22;;;;:7;:22;;;;;;:38;;30856:10;30829:26;:38::i;:::-;30820:4;30804:22;;;;:7;:22;;;;;:63;30756:111;30552:327;;30500:379;:::o;30891:159::-;30973:7;;:17;;30985:4;30973:11;:17::i;:::-;30963:7;:27;31018:10;;:20;;31033:4;31018:14;:20::i;:::-;31005:10;:33;-1:-1:-1;;30891:159:0:o;14:597:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:131::-;-1:-1:-1;;;;;691:31:1;;681:42;;671:70;;737:1;734;727:12;752:315;820:6;828;881:2;869:9;860:7;856:23;852:32;849:52;;;897:1;894;887:12;849:52;936:9;923:23;955:31;980:5;955:31;:::i;:::-;1005:5;1057:2;1042:18;;;;1029:32;;-1:-1:-1;;;752:315:1:o;1681:180::-;1740:6;1793:2;1781:9;1772:7;1768:23;1764:32;1761:52;;;1809:1;1806;1799:12;1761:52;-1:-1:-1;1832:23:1;;1681:180;-1:-1:-1;1681:180:1:o;1866:456::-;1943:6;1951;1959;2012:2;2000:9;1991:7;1987:23;1983:32;1980:52;;;2028:1;2025;2018:12;1980:52;2067:9;2054:23;2086:31;2111:5;2086:31;:::i;:::-;2136:5;-1:-1:-1;2193:2:1;2178:18;;2165:32;2206:33;2165:32;2206:33;:::i;:::-;1866:456;;2258:7;;-1:-1:-1;;;2312:2:1;2297:18;;;;2284:32;;1866:456::o;2516:341::-;2581:6;2589;2642:2;2630:9;2621:7;2617:23;2613:32;2610:52;;;2658:1;2655;2648:12;2610:52;2694:9;2681:23;2671:33;;2754:2;2743:9;2739:18;2726:32;2801:5;2794:13;2787:21;2780:5;2777:32;2767:60;;2823:1;2820;2813:12;2767:60;2846:5;2836:15;;;2516:341;;;;;:::o;3070:247::-;3129:6;3182:2;3170:9;3161:7;3157:23;3153:32;3150:52;;;3198:1;3195;3188:12;3150:52;3237:9;3224:23;3256:31;3281:5;3256:31;:::i;3322:388::-;3390:6;3398;3451:2;3439:9;3430:7;3426:23;3422:32;3419:52;;;3467:1;3464;3457:12;3419:52;3506:9;3493:23;3525:31;3550:5;3525:31;:::i;:::-;3575:5;-1:-1:-1;3632:2:1;3617:18;;3604:32;3645:33;3604:32;3645:33;:::i;3715:380::-;3794:1;3790:12;;;;3837;;;3858:61;;3912:4;3904:6;3900:17;3890:27;;3858:61;3965:2;3957:6;3954:14;3934:18;3931:38;3928:161;;;4011:10;4006:3;4002:20;3999:1;3992:31;4046:4;4043:1;4036:15;4074:4;4071:1;4064:15;3928:161;;3715:380;;;:::o;4100:356::-;4302:2;4284:21;;;4321:18;;;4314:30;4380:34;4375:2;4360:18;;4353:62;4447:2;4432:18;;4100:356::o;6409:127::-;6470:10;6465:3;6461:20;6458:1;6451:31;6501:4;6498:1;6491:15;6525:4;6522:1;6515:15;6541:128;6581:3;6612:1;6608:6;6605:1;6602:13;6599:39;;;6618:18;;:::i;:::-;-1:-1:-1;6654:9:1;;6541:128::o;7437:127::-;7498:10;7493:3;7489:20;7486:1;7479:31;7529:4;7526:1;7519:15;7553:4;7550:1;7543:15;7569:125;7609:4;7637:1;7634;7631:8;7628:34;;;7642:18;;:::i;:::-;-1:-1:-1;7679:9:1;;7569:125::o;7699:127::-;7760:10;7755:3;7751:20;7748:1;7741:31;7791:4;7788:1;7781:15;7815:4;7812:1;7805:15;7831:135;7870:3;-1:-1:-1;;7891:17:1;;7888:43;;;7911:18;;:::i;:::-;-1:-1:-1;7958:1:1;7947:13;;7831:135::o;10896:251::-;10966:6;11019:2;11007:9;10998:7;10994:23;10990:32;10987:52;;;11035:1;11032;11025:12;10987:52;11067:9;11061:16;11086:31;11111:5;11086:31;:::i;11152:980::-;11414:4;11462:3;11451:9;11447:19;11493:6;11482:9;11475:25;11519:2;11557:6;11552:2;11541:9;11537:18;11530:34;11600:3;11595:2;11584:9;11580:18;11573:31;11624:6;11659;11653:13;11690:6;11682;11675:22;11728:3;11717:9;11713:19;11706:26;;11767:2;11759:6;11755:15;11741:29;;11788:1;11798:195;11812:6;11809:1;11806:13;11798:195;;;11877:13;;-1:-1:-1;;;;;11873:39:1;11861:52;;11968:15;;;;11933:12;;;;11909:1;11827:9;11798:195;;;-1:-1:-1;;;;;;;12049:32:1;;;;12044:2;12029:18;;12022:60;-1:-1:-1;;;12113:3:1;12098:19;12091:35;12010:3;11152:980;-1:-1:-1;;;11152:980:1:o;12137:217::-;12177:1;12203;12193:132;;12247:10;12242:3;12238:20;12235:1;12228:31;12282:4;12279:1;12272:15;12310:4;12307:1;12300:15;12193:132;-1:-1:-1;12339:9:1;;12137:217::o;12359:168::-;12399:7;12465:1;12461;12457:6;12453:14;12450:1;12447:21;12442:1;12435:9;12428:17;12424:45;12421:71;;;12472:18;;:::i;:::-;-1:-1:-1;12512:9:1;;12359:168::o
Swarm Source
ipfs://6c54874823c92a016061da48d1187925db431286d43c48918c7e8c4101e27e3b
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.