More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 119 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Approve | 18401062 | 498 days ago | IN | 0 ETH | 0.00040756 | ||||
Approve | 18100873 | 540 days ago | IN | 0 ETH | 0.0004685 | ||||
Approve | 18072443 | 544 days ago | IN | 0 ETH | 0.00073117 | ||||
Approve | 18046967 | 547 days ago | IN | 0 ETH | 0.00049316 | ||||
Approve | 18039480 | 548 days ago | IN | 0 ETH | 0.0008094 | ||||
Approve | 18027944 | 550 days ago | IN | 0 ETH | 0.00134807 | ||||
Approve | 18027174 | 550 days ago | IN | 0 ETH | 0.00112709 | ||||
Approve | 18014115 | 552 days ago | IN | 0 ETH | 0.00166851 | ||||
Approve | 18008953 | 552 days ago | IN | 0 ETH | 0.00055534 | ||||
Approve | 17998184 | 554 days ago | IN | 0 ETH | 0.00056295 | ||||
Approve | 17995841 | 554 days ago | IN | 0 ETH | 0.00056927 | ||||
Approve | 17995826 | 554 days ago | IN | 0 ETH | 0.00030837 | ||||
Approve | 17995821 | 554 days ago | IN | 0 ETH | 0.00031204 | ||||
Approve | 17995810 | 554 days ago | IN | 0 ETH | 0.0005668 | ||||
Approve | 17995773 | 554 days ago | IN | 0 ETH | 0.00034994 | ||||
Approve | 17995757 | 554 days ago | IN | 0 ETH | 0.00036037 | ||||
Approve | 17995754 | 554 days ago | IN | 0 ETH | 0.00056705 | ||||
Approve | 17995229 | 554 days ago | IN | 0 ETH | 0.00078472 | ||||
Approve | 17994949 | 554 days ago | IN | 0 ETH | 0.00063533 | ||||
Approve | 17994902 | 554 days ago | IN | 0 ETH | 0.00061955 | ||||
Approve | 17994636 | 554 days ago | IN | 0 ETH | 0.00073264 | ||||
Approve | 17994500 | 555 days ago | IN | 0 ETH | 0.00077211 | ||||
Approve | 17994354 | 555 days ago | IN | 0 ETH | 0.00082331 | ||||
Approve | 17994071 | 555 days ago | IN | 0 ETH | 0.00111423 | ||||
Approve | 17994007 | 555 days ago | IN | 0 ETH | 0.00148467 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
18046976 | 547 days ago | 0.00215995 ETH | ||||
18046976 | 547 days ago | 0.00215995 ETH | ||||
18039494 | 548 days ago | 0.00079412 ETH | ||||
18039494 | 548 days ago | 0.00079412 ETH | ||||
18034265 | 549 days ago | 0.00127351 ETH | ||||
18034265 | 549 days ago | 0.00127351 ETH | ||||
18027196 | 550 days ago | 0.01270882 ETH | ||||
18027196 | 550 days ago | 0.01270882 ETH | ||||
18027154 | 550 days ago | 0.03973748 ETH | ||||
18027154 | 550 days ago | 0.03973748 ETH | ||||
18014129 | 552 days ago | 0.00182247 ETH | ||||
18014129 | 552 days ago | 0.00182247 ETH | ||||
17998186 | 554 days ago | 0.00123822 ETH | ||||
17998186 | 554 days ago | 0.00123822 ETH | ||||
17995231 | 554 days ago | 0.00097394 ETH | ||||
17995231 | 554 days ago | 0.00097394 ETH | ||||
17994638 | 554 days ago | 0.00118572 ETH | ||||
17994638 | 554 days ago | 0.00118572 ETH | ||||
17994285 | 555 days ago | 0.0010066 ETH | ||||
17994285 | 555 days ago | 0.0010066 ETH | ||||
17993547 | 555 days ago | 0.00255396 ETH | ||||
17993547 | 555 days ago | 0.00255396 ETH | ||||
17993158 | 555 days ago | 0.00368009 ETH | ||||
17993158 | 555 days ago | 0.00368009 ETH | ||||
17993004 | 555 days ago | 0.00317779 ETH |
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
MC
Compiler Version
v0.8.17+commit.8df45f5f
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-08-04 */ // SPDX-License-Identifier: MIT pragma solidity 0.8.17; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } } abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor() { _transferOwnership(_msgSender()); } function owner() public view virtual returns (address) { return _owner; } modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { _transferOwnership(address(0)); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _transferOwnership(newOwner); } function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; // 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 SafeMathInt { int256 private constant MIN_INT256 = int256(1) << 255; int256 private constant MAX_INT256 = ~(int256(1) << 255); function mul(int256 a, int256 b) internal pure returns (int256) { int256 c = a * b; // Detect overflow when multiplying MIN_INT256 with -1 require(c != MIN_INT256 || (a & MIN_INT256) != (b & MIN_INT256)); require((b == 0) || (c / b == a)); return c; } function div(int256 a, int256 b) internal pure returns (int256) { // Prevent overflow when dividing MIN_INT256 by -1 require(b != -1 || a != MIN_INT256); // Solidity already throws when dividing by 0. return a / b; } function sub(int256 a, int256 b) internal pure returns (int256) { int256 c = a - b; require((b >= 0 && c <= a) || (b < 0 && c > a)); return c; } function add(int256 a, int256 b) internal pure returns (int256) { int256 c = a + b; require((b >= 0 && c >= a) || (b < 0 && c < a)); return c; } function abs(int256 a) internal pure returns (int256) { require(a != MIN_INT256); return a < 0 ? -a : a; } function toUint256Safe(int256 a) internal pure returns (uint256) { require(a >= 0); return uint256(a); } } library SafeMathUint { function toInt256Safe(uint256 a) internal pure returns (int256) { int256 b = int256(a); require(b >= 0); return b; } } 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; } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address who) external view returns (uint256); function allowance(address owner, address spender) external view returns (uint256); function transfer(address to, uint256 value) external returns (bool); function approve(address spender, uint256 value) external returns (bool); function transferFrom(address from, address to, uint256 value) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } interface IERC20Metadata is IERC20 { function name() external view returns (string memory); function symbol() external view returns (string memory); function decimals() external view returns (uint8); } contract ERC20 is Context, IERC20, IERC20Metadata { using SafeMath for uint256; mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; uint256 private _totalSupply; string private _name; string private _symbol; constructor(string memory name_, string memory symbol_) { _name = name_; _symbol = symbol_; } function name() public view virtual override returns (string memory) { return _name; } function symbol() public view virtual override returns (string memory) { return _symbol; } function decimals() public view virtual override returns (uint8) { return 9; } function totalSupply() public view virtual override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view virtual override returns (uint256) { return _balances[account]; } function transfer(address recipient, uint256 amount) public virtual override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public virtual override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom( address sender, address recipient, uint256 amount ) public virtual 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 _transfer( address sender, address recipient, uint256 amount ) internal virtual { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); _beforeTokenTransfer(sender, recipient, amount); _balances[sender] = _balances[sender].sub(amount, "ERC20: transfer amount exceeds balance"); _balances[recipient] = _balances[recipient].add(amount); emit Transfer(sender, recipient, amount); } function _mint(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: mint to the zero address"); _beforeTokenTransfer(address(0), account, amount); _totalSupply = _totalSupply.add(amount); _balances[account] = _balances[account].add(amount); emit Transfer(address(0), account, amount); } function _burn(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: burn from the zero address"); _beforeTokenTransfer(account, address(0), amount); _balances[account] = _balances[account].sub(amount, "ERC20: burn amount exceeds balance"); _totalSupply = _totalSupply.sub(amount); emit Transfer(account, address(0), amount); } function _approve( address owner, address spender, uint256 amount ) internal virtual { 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 _beforeTokenTransfer( address from, address to, uint256 amount ) internal virtual {} } contract MC is ERC20, Ownable { uint256 public marketingFeeOnBuy; uint256 public marketingFeeOnSell; address public marketingWallet; IUniswapV2Router02 public uniswapV2Router; address public uniswapV2Pair; address private constant DEAD = 0x000000000000000000000000000000000000dEaD; bool private swapping; uint256 public swapTokensAtAmount; mapping (address => bool) private _isExcludedFromFees; mapping (address => bool) public automatedMarketMakerPairs; event ExcludeFromFees(address indexed account, bool isExcluded); event SetAutomatedMarketMakerPair(address indexed pair, bool indexed value); event SendMarketing(uint256 bnbSend); event SetMarketingFee(uint256 buyFee, uint256 sellFee); event UpdateUniswapV2Router(address indexed newAddress, address indexed oldAddress); constructor() payable ERC20("Saitama 2.0", "SAITAMA") { marketingFeeOnBuy = 1; marketingFeeOnSell = 1; marketingWallet = 0x051636aFAE9C27feb904c83938a6326078F5535D; IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); address _uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()) .createPair(address(this), _uniswapV2Router.WETH()); uniswapV2Router = _uniswapV2Router; uniswapV2Pair = _uniswapV2Pair; _approve(address(this), address(uniswapV2Router), type(uint256).max); _setAutomatedMarketMakerPair(_uniswapV2Pair, true); _isExcludedFromFees[owner()] = true; _isExcludedFromFees[DEAD] = true; _isExcludedFromFees[address(this)] = true; _isExcludedFromFees[marketingWallet] = true; //Remove this line if your deploying from the owner wallet _transferOwnership(0x6fEFc03922736Bf485BA9A8e4632058c1Ee7A448); _mint(owner(), 100000000000 * (10**9)); swapTokensAtAmount = totalSupply() / 5000; } receive() external payable { } function setMarketingFees(uint256 buyFee, uint256 sellFee) external onlyOwner { require(buyFee <= 15, "buyFee cannot be more than 15"); require(sellFee <= 15, "sellFee cannot be more than 15"); marketingFeeOnBuy = buyFee; marketingFeeOnSell = sellFee; emit SetMarketingFee(buyFee, sellFee); } function claimStuckTokens(address token) external onlyOwner { require(token != address(this), "Owner cannot claim native tokens"); if (token == address(0x0)) { payable(msg.sender).transfer(address(this).balance); return; } IERC20 ERC20token = IERC20(token); uint256 balance = ERC20token.balanceOf(address(this)); ERC20token.transfer(msg.sender, balance); } function isContract(address account) internal view returns (bool) { return account.code.length > 0; } function sendBNB(address payable recipient, uint256 amount) internal { require(address(this).balance >= amount, "Address: insufficient balance"); (bool success, ) = recipient.call{value: amount}(""); require(success, "Address: unable to send value, recipient may have reverted"); } function updateUniswapV2Router(address newAddress) public onlyOwner { require(newAddress != address(uniswapV2Router), "Address: The router already has that address"); emit UpdateUniswapV2Router(newAddress, address(uniswapV2Router)); uniswapV2Router = IUniswapV2Router02(newAddress); address _uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()) .createPair(address(this), uniswapV2Router.WETH()); uniswapV2Pair = _uniswapV2Pair; } function setAutomatedMarketMakerPair(address pair, bool value) public onlyOwner { _setAutomatedMarketMakerPair(pair, value); } function _setAutomatedMarketMakerPair(address pair, bool value) private { require(automatedMarketMakerPairs[pair] != value, "Automated market maker pair is already set to that value"); automatedMarketMakerPairs[pair] = value; emit SetAutomatedMarketMakerPair(pair, value); } function updateMarketingWallet(address newWallet) external onlyOwner { require(newWallet != address(0), "Fee Address cannot be zero address"); marketingWallet = newWallet; } function excludeFromFees(address account, bool excluded) external onlyOwner { require(_isExcludedFromFees[account] != excluded, "Account is already set to that state"); _isExcludedFromFees[account] = excluded; emit ExcludeFromFees(account, excluded); } function isExcludedFromFees(address account) public view returns(bool) { return _isExcludedFromFees[account]; } function _transfer( address from, address to, uint256 amount ) internal override { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); if(amount == 0) { super._transfer(from, to, 0); return; } uint256 contractTokenBalance = balanceOf(address(this)); bool canSwap = contractTokenBalance >= swapTokensAtAmount; if( canSwap && !swapping && automatedMarketMakerPairs[to] && marketingFeeOnBuy + marketingFeeOnSell > 0 ) { swapping = true; uint256 bnbShare = (marketingFeeOnBuy + marketingFeeOnSell); if(contractTokenBalance > 0 && bnbShare > 0) { uint256 initialBalance = address(this).balance; address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( contractTokenBalance, 0, path, address(this), block.timestamp); uint256 newBalance = address(this).balance - initialBalance; if((marketingFeeOnBuy + marketingFeeOnSell) > 0) { uint256 marketingBNB = newBalance * (marketingFeeOnBuy + marketingFeeOnSell) / bnbShare; sendBNB(payable(marketingWallet), marketingBNB); emit SendMarketing(marketingBNB); } } swapping = false; } bool takeFee = !swapping; if(_isExcludedFromFees[from] || _isExcludedFromFees[to]) { takeFee = false; } // w2w & not excluded from fees if(from != uniswapV2Pair && to != uniswapV2Pair && takeFee) { takeFee = false; } if(takeFee) { uint256 _totalFees; if(from == uniswapV2Pair) { _totalFees = marketingFeeOnBuy; } else { _totalFees = marketingFeeOnSell; } uint256 fees = amount * _totalFees / 100; amount = amount - fees; super._transfer(from, address(this), fees); } super._transfer(from, to, amount); } function setSwapTokensAtAmount(uint256 newAmount) external onlyOwner{ require(newAmount > totalSupply() / 100_000, "SwapTokensAtAmount must be greater than 0.001% of total supply"); swapTokensAtAmount = newAmount; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"payable","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":true,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"isExcluded","type":"bool"}],"name":"ExcludeFromFees","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":"uint256","name":"bnbSend","type":"uint256"}],"name":"SendMarketing","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"pair","type":"address"},{"indexed":true,"internalType":"bool","name":"value","type":"bool"}],"name":"SetAutomatedMarketMakerPair","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"buyFee","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"sellFee","type":"uint256"}],"name":"SetMarketingFee","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"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newAddress","type":"address"},{"indexed":true,"internalType":"address","name":"oldAddress","type":"address"}],"name":"UpdateUniswapV2Router","type":"event"},{"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":"","type":"address"}],"name":"automatedMarketMakerPairs","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"claimStuckTokens","outputs":[],"stateMutability":"nonpayable","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":"address","name":"account","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeFromFees","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":"isExcludedFromFees","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingFeeOnBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingFeeOnSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","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":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"pair","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setAutomatedMarketMakerPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"buyFee","type":"uint256"},{"internalType":"uint256","name":"sellFee","type":"uint256"}],"name":"setMarketingFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newAmount","type":"uint256"}],"name":"setSwapTokensAtAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"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":[{"internalType":"address","name":"newWallet","type":"address"}],"name":"updateMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"updateUniswapV2Router","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
600b60809081526a053616974616d6120322e360ac1b60a052610100604052600760c09081526653414954414d4160c81b60e0526003620000418382620007d2565b506004620000508282620007d2565b5050506200006d620000676200035360201b60201c565b62000357565b60016006819055600755600880546001600160a01b03191673051636afae9c27feb904c83938a6326078f5535d1790556040805163c45a015560e01b81529051737a250d5630b4cf539739df2c5dacb4c659f2488d91600091839163c45a01559160048083019260209291908290030181865afa158015620000f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200011991906200089e565b6001600160a01b031663c9c6539630846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000167573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200018d91906200089e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620001db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200020191906200089e565b600980546001600160a01b038086166001600160a01b03199283168117909355600a80549185169190921617905590915062000242903090600019620003a9565b6200024f816001620004d5565b6001600c6000620002686005546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff19968716179055600c9093527f45117a726ea4f344045dc210793664a28d2d320b7e03f6bffdae553d24c3586c805485166001908117909155308452828420805486168217905560085490911683529120805490921617905562000307736fefc03922736bf485ba9a8e4632058c1ee7a44862000357565b6200032e6200031e6005546001600160a01b031690565b68056bc75e2d63100000620005c1565b6113886200033b60025490565b620003479190620008c9565b600b55506200090e9050565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038316620004115760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084015b60405180910390fd5b6001600160a01b038216620004745760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840162000408565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0382166000908152600d602052604090205481151560ff9091161515036200056d5760405162461bcd60e51b815260206004820152603860248201527f4175746f6d61746564206d61726b6574206d616b65722070616972206973206160448201527f6c72656164792073657420746f20746861742076616c75650000000000000000606482015260840162000408565b6001600160a01b0382166000818152600d6020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b038216620006195760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640162000408565b6200063581600254620006c260201b6200102b1790919060201c565b6002556001600160a01b03821660009081526020818152604090912054620006689183906200102b620006c2821b17901c565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b600080620006d18385620008ec565b905083811015620007255760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640162000408565b90505b92915050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200075957607f821691505b6020821081036200077a57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620006bd57600081815260208120601f850160051c81016020861015620007a95750805b601f850160051c820191505b81811015620007ca57828155600101620007b5565b505050505050565b81516001600160401b03811115620007ee57620007ee6200072e565b6200080681620007ff845462000744565b8462000780565b602080601f8311600181146200083e5760008415620008255750858301515b600019600386901b1c1916600185901b178555620007ca565b600085815260208120601f198616915b828110156200086f578886015182559484019460019091019084016200084e565b50858210156200088e5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215620008b157600080fd5b81516001600160a01b03811681146200072557600080fd5b600082620008e757634e487b7160e01b600052601260045260246000fd5b500490565b808201808211156200072857634e487b7160e01b600052601160045260246000fd5b611de7806200091e6000396000f3fe6080604052600436106101c65760003560e01c806375f0a874116100f7578063afa4f3b211610095578063dd62ed3e11610064578063dd62ed3e14610535578063e2f456051461057b578063f2fde38b14610591578063f9d0831a146105b157600080fd5b8063afa4f3b2146104af578063b62496f5146104cf578063c0246668146104ff578063dc4c7dbc1461051f57600080fd5b80639a7a23d6116100d15780639a7a23d61461042f578063a457c2d71461044f578063a9059cbb1461046f578063aacebbe31461048f57600080fd5b806375f0a874146103dc5780638da5cb5b146103fc57806395d89b411461041a57600080fd5b806349bd5a5e116101645780635fc2e5961161013e5780635fc2e5961461035b57806365b8dbc01461037157806370a0823114610391578063715018a6146103c757600080fd5b806349bd5a5e146102e05780634fbee193146103005780634ffe14ab1461033957600080fd5b806318160ddd116101a057806318160ddd1461026557806323b872dd14610284578063313ce567146102a457806339509351146102c057600080fd5b806306fdde03146101d2578063095ea7b3146101fd5780631694505e1461022d57600080fd5b366101cd57005b600080fd5b3480156101de57600080fd5b506101e76105d1565b6040516101f4919061195b565b60405180910390f35b34801561020957600080fd5b5061021d6102183660046119be565b610663565b60405190151581526020016101f4565b34801561023957600080fd5b5060095461024d906001600160a01b031681565b6040516001600160a01b0390911681526020016101f4565b34801561027157600080fd5b506002545b6040519081526020016101f4565b34801561029057600080fd5b5061021d61029f3660046119ea565b61067a565b3480156102b057600080fd5b50604051600981526020016101f4565b3480156102cc57600080fd5b5061021d6102db3660046119be565b6106e3565b3480156102ec57600080fd5b50600a5461024d906001600160a01b031681565b34801561030c57600080fd5b5061021d61031b366004611a2b565b6001600160a01b03166000908152600c602052604090205460ff1690565b34801561034557600080fd5b50610359610354366004611a48565b610719565b005b34801561036757600080fd5b5061027660065481565b34801561037d57600080fd5b5061035961038c366004611a2b565b610835565b34801561039d57600080fd5b506102766103ac366004611a2b565b6001600160a01b031660009081526020819052604090205490565b3480156103d357600080fd5b50610359610aa8565b3480156103e857600080fd5b5060085461024d906001600160a01b031681565b34801561040857600080fd5b506005546001600160a01b031661024d565b34801561042657600080fd5b506101e7610ade565b34801561043b57600080fd5b5061035961044a366004611a78565b610aed565b34801561045b57600080fd5b5061021d61046a3660046119be565b610b25565b34801561047b57600080fd5b5061021d61048a3660046119be565b610b74565b34801561049b57600080fd5b506103596104aa366004611a2b565b610b81565b3480156104bb57600080fd5b506103596104ca366004611ab1565b610c2e565b3480156104db57600080fd5b5061021d6104ea366004611a2b565b600d6020526000908152604090205460ff1681565b34801561050b57600080fd5b5061035961051a366004611a78565b610ce8565b34801561052b57600080fd5b5061027660075481565b34801561054157600080fd5b50610276610550366004611aca565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b34801561058757600080fd5b50610276600b5481565b34801561059d57600080fd5b506103596105ac366004611a2b565b610ded565b3480156105bd57600080fd5b506103596105cc366004611a2b565b610e88565b6060600380546105e090611af8565b80601f016020809104026020016040519081016040528092919081815260200182805461060c90611af8565b80156106595780601f1061062e57610100808354040283529160200191610659565b820191906000526020600020905b81548152906001019060200180831161063c57829003601f168201915b5050505050905090565b6000610670338484611091565b5060015b92915050565b60006106878484846111b6565b6106d984336106d485604051806060016040528060288152602001611d65602891396001600160a01b038a16600090815260016020908152604080832033845290915290205491906115c3565b611091565b5060019392505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916106709185906106d4908661102b565b6005546001600160a01b0316331461074c5760405162461bcd60e51b815260040161074390611b32565b60405180910390fd5b600f82111561079d5760405162461bcd60e51b815260206004820152601d60248201527f6275794665652063616e6e6f74206265206d6f7265207468616e2031350000006044820152606401610743565b600f8111156107ee5760405162461bcd60e51b815260206004820152601e60248201527f73656c6c4665652063616e6e6f74206265206d6f7265207468616e20313500006044820152606401610743565b6006829055600781905560408051838152602081018390527f116c154a85aae2434f37439e77373feb3892dbf9f0da79242aa92ae0cadfe608910160405180910390a15050565b6005546001600160a01b0316331461085f5760405162461bcd60e51b815260040161074390611b32565b6009546001600160a01b03908116908216036108d25760405162461bcd60e51b815260206004820152602c60248201527f416464726573733a2054686520726f7574657220616c7265616479206861732060448201526b74686174206164647265737360a01b6064820152608401610743565b6009546040516001600160a01b03918216918316907f8fc842bbd331dfa973645f4ed48b11683d501ebf1352708d77a5da2ab49a576e90600090a3600980546001600160a01b0319166001600160a01b0383169081179091556040805163c45a015560e01b815290516000929163c45a01559160048083019260209291908290030181865afa158015610969573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061098d9190611b67565b6001600160a01b031663c9c6539630600960009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109ef573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a139190611b67565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610a60573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a849190611b67565b600a80546001600160a01b0319166001600160a01b03929092169190911790555050565b6005546001600160a01b03163314610ad25760405162461bcd60e51b815260040161074390611b32565b610adc60006115fd565b565b6060600480546105e090611af8565b6005546001600160a01b03163314610b175760405162461bcd60e51b815260040161074390611b32565b610b21828261164f565b5050565b600061067033846106d485604051806060016040528060258152602001611d8d602591393360009081526001602090815260408083206001600160a01b038d16845290915290205491906115c3565b60006106703384846111b6565b6005546001600160a01b03163314610bab5760405162461bcd60e51b815260040161074390611b32565b6001600160a01b038116610c0c5760405162461bcd60e51b815260206004820152602260248201527f46656520416464726573732063616e6e6f74206265207a65726f206164647265604482015261737360f01b6064820152608401610743565b600880546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b03163314610c585760405162461bcd60e51b815260040161074390611b32565b620186a0610c6560025490565b610c6f9190611b9a565b8111610ce35760405162461bcd60e51b815260206004820152603e60248201527f53776170546f6b656e734174416d6f756e74206d75737420626520677265617460448201527f6572207468616e20302e30303125206f6620746f74616c20737570706c7900006064820152608401610743565b600b55565b6005546001600160a01b03163314610d125760405162461bcd60e51b815260040161074390611b32565b6001600160a01b0382166000908152600c602052604090205481151560ff909116151503610d8e5760405162461bcd60e51b8152602060048201526024808201527f4163636f756e7420697320616c72656164792073657420746f207468617420736044820152637461746560e01b6064820152608401610743565b6001600160a01b0382166000818152600c6020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6005546001600160a01b03163314610e175760405162461bcd60e51b815260040161074390611b32565b6001600160a01b038116610e7c5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610743565b610e85816115fd565b50565b6005546001600160a01b03163314610eb25760405162461bcd60e51b815260040161074390611b32565b306001600160a01b03821603610f0a5760405162461bcd60e51b815260206004820181905260248201527f4f776e65722063616e6e6f7420636c61696d206e617469766520746f6b656e736044820152606401610743565b6001600160a01b038116610f445760405133904780156108fc02916000818181858888f19350505050158015610b21573d6000803e3d6000fd5b6040516370a0823160e01b815230600482015281906000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610f8d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fb19190611bbc565b60405163a9059cbb60e01b8152336004820152602481018290529091506001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015611001573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110259190611bd5565b50505050565b6000806110388385611bf2565b90508381101561108a5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610743565b9392505050565b6001600160a01b0383166110f35760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610743565b6001600160a01b0382166111545760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610743565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0383166111dc5760405162461bcd60e51b815260040161074390611c05565b6001600160a01b0382166112025760405162461bcd60e51b815260040161074390611c4a565b8060000361121b5761121683836000611739565b505050565b30600090815260208190526040902054600b54811080159081906112495750600a54600160a01b900460ff16155b801561126d57506001600160a01b0384166000908152600d602052604090205460ff165b8015611288575060006007546006546112869190611bf2565b115b156114ba57600a805460ff60a01b1916600160a01b1790556007546006546000916112b291611bf2565b90506000831180156112c45750600081115b156114ab5760408051600280825260608201835247926000929190602083019080368337019050509050308160008151811061130257611302611c8d565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561135b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061137f9190611b67565b8160018151811061139257611392611c8d565b6001600160a01b03928316602091820292909201015260095460405163791ac94760e01b815291169063791ac947906113d8908890600090869030904290600401611ca3565b600060405180830381600087803b1580156113f257600080fd5b505af1158015611406573d6000803e3d6000fd5b50505050600082476114189190611d14565b9050600060075460065461142c9190611bf2565b11156114a7576000846007546006546114459190611bf2565b61144f9084611d27565b6114599190611b9a565b600854909150611472906001600160a01b031682611842565b6040518181527fddce3d5e4f18a9c2902704a38b56baadd81a9af59b8ded8a3220b6a6c1696b6b9060200160405180910390a1505b5050505b50600a805460ff60a01b191690555b600a546001600160a01b0386166000908152600c602052604090205460ff600160a01b90920482161591168061150857506001600160a01b0385166000908152600c602052604090205460ff165b15611511575060005b600a546001600160a01b0387811691161480159061153d5750600a546001600160a01b03868116911614155b80156115465750805b1561154f575060005b80156115b057600a546000906001600160a01b0390811690881603611577575060065461157c565b506007545b6000606461158a8388611d27565b6115949190611b9a565b90506115a08187611d14565b95506115ad883083611739565b50505b6115bb868686611739565b505050505050565b600081848411156115e75760405162461bcd60e51b8152600401610743919061195b565b5060006115f48486611d14565b95945050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b0382166000908152600d602052604090205481151560ff9091161515036116e55760405162461bcd60e51b815260206004820152603860248201527f4175746f6d61746564206d61726b6574206d616b65722070616972206973206160448201527f6c72656164792073657420746f20746861742076616c756500000000000000006064820152608401610743565b6001600160a01b0382166000818152600d6020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b03831661175f5760405162461bcd60e51b815260040161074390611c05565b6001600160a01b0382166117855760405162461bcd60e51b815260040161074390611c4a565b6117c281604051806060016040528060268152602001611d3f602691396001600160a01b03861660009081526020819052604090205491906115c3565b6001600160a01b0380851660009081526020819052604080822093909355908416815220546117f1908261102b565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91016111a9565b804710156118925760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e63650000006044820152606401610743565b6000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146118df576040519150601f19603f3d011682016040523d82523d6000602084013e6118e4565b606091505b50509050806112165760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d617920686176652072657665727465640000000000006064820152608401610743565b600060208083528351808285015260005b818110156119885785810183015185820160400152820161196c565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610e8557600080fd5b600080604083850312156119d157600080fd5b82356119dc816119a9565b946020939093013593505050565b6000806000606084860312156119ff57600080fd5b8335611a0a816119a9565b92506020840135611a1a816119a9565b929592945050506040919091013590565b600060208284031215611a3d57600080fd5b813561108a816119a9565b60008060408385031215611a5b57600080fd5b50508035926020909101359150565b8015158114610e8557600080fd5b60008060408385031215611a8b57600080fd5b8235611a96816119a9565b91506020830135611aa681611a6a565b809150509250929050565b600060208284031215611ac357600080fd5b5035919050565b60008060408385031215611add57600080fd5b8235611ae8816119a9565b91506020830135611aa6816119a9565b600181811c90821680611b0c57607f821691505b602082108103611b2c57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060208284031215611b7957600080fd5b815161108a816119a9565b634e487b7160e01b600052601160045260246000fd5b600082611bb757634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215611bce57600080fd5b5051919050565b600060208284031215611be757600080fd5b815161108a81611a6a565b8082018082111561067457610674611b84565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611cf35784516001600160a01b031683529383019391830191600101611cce565b50506001600160a01b03969096166060850152505050608001529392505050565b8181038181111561067457610674611b84565b808202811582820484141761067457610674611b8456fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122004df924983f57107a21b57235c4fec8df9d81408a0d2488d582e83d60f692ceb64736f6c63430008110033
Deployed Bytecode
0x6080604052600436106101c65760003560e01c806375f0a874116100f7578063afa4f3b211610095578063dd62ed3e11610064578063dd62ed3e14610535578063e2f456051461057b578063f2fde38b14610591578063f9d0831a146105b157600080fd5b8063afa4f3b2146104af578063b62496f5146104cf578063c0246668146104ff578063dc4c7dbc1461051f57600080fd5b80639a7a23d6116100d15780639a7a23d61461042f578063a457c2d71461044f578063a9059cbb1461046f578063aacebbe31461048f57600080fd5b806375f0a874146103dc5780638da5cb5b146103fc57806395d89b411461041a57600080fd5b806349bd5a5e116101645780635fc2e5961161013e5780635fc2e5961461035b57806365b8dbc01461037157806370a0823114610391578063715018a6146103c757600080fd5b806349bd5a5e146102e05780634fbee193146103005780634ffe14ab1461033957600080fd5b806318160ddd116101a057806318160ddd1461026557806323b872dd14610284578063313ce567146102a457806339509351146102c057600080fd5b806306fdde03146101d2578063095ea7b3146101fd5780631694505e1461022d57600080fd5b366101cd57005b600080fd5b3480156101de57600080fd5b506101e76105d1565b6040516101f4919061195b565b60405180910390f35b34801561020957600080fd5b5061021d6102183660046119be565b610663565b60405190151581526020016101f4565b34801561023957600080fd5b5060095461024d906001600160a01b031681565b6040516001600160a01b0390911681526020016101f4565b34801561027157600080fd5b506002545b6040519081526020016101f4565b34801561029057600080fd5b5061021d61029f3660046119ea565b61067a565b3480156102b057600080fd5b50604051600981526020016101f4565b3480156102cc57600080fd5b5061021d6102db3660046119be565b6106e3565b3480156102ec57600080fd5b50600a5461024d906001600160a01b031681565b34801561030c57600080fd5b5061021d61031b366004611a2b565b6001600160a01b03166000908152600c602052604090205460ff1690565b34801561034557600080fd5b50610359610354366004611a48565b610719565b005b34801561036757600080fd5b5061027660065481565b34801561037d57600080fd5b5061035961038c366004611a2b565b610835565b34801561039d57600080fd5b506102766103ac366004611a2b565b6001600160a01b031660009081526020819052604090205490565b3480156103d357600080fd5b50610359610aa8565b3480156103e857600080fd5b5060085461024d906001600160a01b031681565b34801561040857600080fd5b506005546001600160a01b031661024d565b34801561042657600080fd5b506101e7610ade565b34801561043b57600080fd5b5061035961044a366004611a78565b610aed565b34801561045b57600080fd5b5061021d61046a3660046119be565b610b25565b34801561047b57600080fd5b5061021d61048a3660046119be565b610b74565b34801561049b57600080fd5b506103596104aa366004611a2b565b610b81565b3480156104bb57600080fd5b506103596104ca366004611ab1565b610c2e565b3480156104db57600080fd5b5061021d6104ea366004611a2b565b600d6020526000908152604090205460ff1681565b34801561050b57600080fd5b5061035961051a366004611a78565b610ce8565b34801561052b57600080fd5b5061027660075481565b34801561054157600080fd5b50610276610550366004611aca565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b34801561058757600080fd5b50610276600b5481565b34801561059d57600080fd5b506103596105ac366004611a2b565b610ded565b3480156105bd57600080fd5b506103596105cc366004611a2b565b610e88565b6060600380546105e090611af8565b80601f016020809104026020016040519081016040528092919081815260200182805461060c90611af8565b80156106595780601f1061062e57610100808354040283529160200191610659565b820191906000526020600020905b81548152906001019060200180831161063c57829003601f168201915b5050505050905090565b6000610670338484611091565b5060015b92915050565b60006106878484846111b6565b6106d984336106d485604051806060016040528060288152602001611d65602891396001600160a01b038a16600090815260016020908152604080832033845290915290205491906115c3565b611091565b5060019392505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916106709185906106d4908661102b565b6005546001600160a01b0316331461074c5760405162461bcd60e51b815260040161074390611b32565b60405180910390fd5b600f82111561079d5760405162461bcd60e51b815260206004820152601d60248201527f6275794665652063616e6e6f74206265206d6f7265207468616e2031350000006044820152606401610743565b600f8111156107ee5760405162461bcd60e51b815260206004820152601e60248201527f73656c6c4665652063616e6e6f74206265206d6f7265207468616e20313500006044820152606401610743565b6006829055600781905560408051838152602081018390527f116c154a85aae2434f37439e77373feb3892dbf9f0da79242aa92ae0cadfe608910160405180910390a15050565b6005546001600160a01b0316331461085f5760405162461bcd60e51b815260040161074390611b32565b6009546001600160a01b03908116908216036108d25760405162461bcd60e51b815260206004820152602c60248201527f416464726573733a2054686520726f7574657220616c7265616479206861732060448201526b74686174206164647265737360a01b6064820152608401610743565b6009546040516001600160a01b03918216918316907f8fc842bbd331dfa973645f4ed48b11683d501ebf1352708d77a5da2ab49a576e90600090a3600980546001600160a01b0319166001600160a01b0383169081179091556040805163c45a015560e01b815290516000929163c45a01559160048083019260209291908290030181865afa158015610969573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061098d9190611b67565b6001600160a01b031663c9c6539630600960009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109ef573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a139190611b67565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610a60573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a849190611b67565b600a80546001600160a01b0319166001600160a01b03929092169190911790555050565b6005546001600160a01b03163314610ad25760405162461bcd60e51b815260040161074390611b32565b610adc60006115fd565b565b6060600480546105e090611af8565b6005546001600160a01b03163314610b175760405162461bcd60e51b815260040161074390611b32565b610b21828261164f565b5050565b600061067033846106d485604051806060016040528060258152602001611d8d602591393360009081526001602090815260408083206001600160a01b038d16845290915290205491906115c3565b60006106703384846111b6565b6005546001600160a01b03163314610bab5760405162461bcd60e51b815260040161074390611b32565b6001600160a01b038116610c0c5760405162461bcd60e51b815260206004820152602260248201527f46656520416464726573732063616e6e6f74206265207a65726f206164647265604482015261737360f01b6064820152608401610743565b600880546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b03163314610c585760405162461bcd60e51b815260040161074390611b32565b620186a0610c6560025490565b610c6f9190611b9a565b8111610ce35760405162461bcd60e51b815260206004820152603e60248201527f53776170546f6b656e734174416d6f756e74206d75737420626520677265617460448201527f6572207468616e20302e30303125206f6620746f74616c20737570706c7900006064820152608401610743565b600b55565b6005546001600160a01b03163314610d125760405162461bcd60e51b815260040161074390611b32565b6001600160a01b0382166000908152600c602052604090205481151560ff909116151503610d8e5760405162461bcd60e51b8152602060048201526024808201527f4163636f756e7420697320616c72656164792073657420746f207468617420736044820152637461746560e01b6064820152608401610743565b6001600160a01b0382166000818152600c6020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6005546001600160a01b03163314610e175760405162461bcd60e51b815260040161074390611b32565b6001600160a01b038116610e7c5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610743565b610e85816115fd565b50565b6005546001600160a01b03163314610eb25760405162461bcd60e51b815260040161074390611b32565b306001600160a01b03821603610f0a5760405162461bcd60e51b815260206004820181905260248201527f4f776e65722063616e6e6f7420636c61696d206e617469766520746f6b656e736044820152606401610743565b6001600160a01b038116610f445760405133904780156108fc02916000818181858888f19350505050158015610b21573d6000803e3d6000fd5b6040516370a0823160e01b815230600482015281906000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610f8d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fb19190611bbc565b60405163a9059cbb60e01b8152336004820152602481018290529091506001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015611001573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110259190611bd5565b50505050565b6000806110388385611bf2565b90508381101561108a5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610743565b9392505050565b6001600160a01b0383166110f35760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610743565b6001600160a01b0382166111545760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610743565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0383166111dc5760405162461bcd60e51b815260040161074390611c05565b6001600160a01b0382166112025760405162461bcd60e51b815260040161074390611c4a565b8060000361121b5761121683836000611739565b505050565b30600090815260208190526040902054600b54811080159081906112495750600a54600160a01b900460ff16155b801561126d57506001600160a01b0384166000908152600d602052604090205460ff165b8015611288575060006007546006546112869190611bf2565b115b156114ba57600a805460ff60a01b1916600160a01b1790556007546006546000916112b291611bf2565b90506000831180156112c45750600081115b156114ab5760408051600280825260608201835247926000929190602083019080368337019050509050308160008151811061130257611302611c8d565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561135b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061137f9190611b67565b8160018151811061139257611392611c8d565b6001600160a01b03928316602091820292909201015260095460405163791ac94760e01b815291169063791ac947906113d8908890600090869030904290600401611ca3565b600060405180830381600087803b1580156113f257600080fd5b505af1158015611406573d6000803e3d6000fd5b50505050600082476114189190611d14565b9050600060075460065461142c9190611bf2565b11156114a7576000846007546006546114459190611bf2565b61144f9084611d27565b6114599190611b9a565b600854909150611472906001600160a01b031682611842565b6040518181527fddce3d5e4f18a9c2902704a38b56baadd81a9af59b8ded8a3220b6a6c1696b6b9060200160405180910390a1505b5050505b50600a805460ff60a01b191690555b600a546001600160a01b0386166000908152600c602052604090205460ff600160a01b90920482161591168061150857506001600160a01b0385166000908152600c602052604090205460ff165b15611511575060005b600a546001600160a01b0387811691161480159061153d5750600a546001600160a01b03868116911614155b80156115465750805b1561154f575060005b80156115b057600a546000906001600160a01b0390811690881603611577575060065461157c565b506007545b6000606461158a8388611d27565b6115949190611b9a565b90506115a08187611d14565b95506115ad883083611739565b50505b6115bb868686611739565b505050505050565b600081848411156115e75760405162461bcd60e51b8152600401610743919061195b565b5060006115f48486611d14565b95945050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b0382166000908152600d602052604090205481151560ff9091161515036116e55760405162461bcd60e51b815260206004820152603860248201527f4175746f6d61746564206d61726b6574206d616b65722070616972206973206160448201527f6c72656164792073657420746f20746861742076616c756500000000000000006064820152608401610743565b6001600160a01b0382166000818152600d6020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b03831661175f5760405162461bcd60e51b815260040161074390611c05565b6001600160a01b0382166117855760405162461bcd60e51b815260040161074390611c4a565b6117c281604051806060016040528060268152602001611d3f602691396001600160a01b03861660009081526020819052604090205491906115c3565b6001600160a01b0380851660009081526020819052604080822093909355908416815220546117f1908261102b565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91016111a9565b804710156118925760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e63650000006044820152606401610743565b6000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146118df576040519150601f19603f3d011682016040523d82523d6000602084013e6118e4565b606091505b50509050806112165760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d617920686176652072657665727465640000000000006064820152608401610743565b600060208083528351808285015260005b818110156119885785810183015185820160400152820161196c565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610e8557600080fd5b600080604083850312156119d157600080fd5b82356119dc816119a9565b946020939093013593505050565b6000806000606084860312156119ff57600080fd5b8335611a0a816119a9565b92506020840135611a1a816119a9565b929592945050506040919091013590565b600060208284031215611a3d57600080fd5b813561108a816119a9565b60008060408385031215611a5b57600080fd5b50508035926020909101359150565b8015158114610e8557600080fd5b60008060408385031215611a8b57600080fd5b8235611a96816119a9565b91506020830135611aa681611a6a565b809150509250929050565b600060208284031215611ac357600080fd5b5035919050565b60008060408385031215611add57600080fd5b8235611ae8816119a9565b91506020830135611aa6816119a9565b600181811c90821680611b0c57607f821691505b602082108103611b2c57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060208284031215611b7957600080fd5b815161108a816119a9565b634e487b7160e01b600052601160045260246000fd5b600082611bb757634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215611bce57600080fd5b5051919050565b600060208284031215611be757600080fd5b815161108a81611a6a565b8082018082111561067457610674611b84565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611cf35784516001600160a01b031683529383019391830191600101611cce565b50506001600160a01b03969096166060850152505050608001529392505050565b8181038181111561067457610674611b84565b808202811582820484141761067457610674611b8456fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122004df924983f57107a21b57235c4fec8df9d81408a0d2488d582e83d60f692ceb64736f6c63430008110033
Deployed Bytecode Sourcemap
17510:7837:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13655:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14568:169;;;;;;;;;;-1:-1:-1;14568:169:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;14568:169:0;1023:187:1;17667:41:0;;;;;;;;;;-1:-1:-1;17667:41:0;;;;-1:-1:-1;;;;;17667:41:0;;;;;;-1:-1:-1;;;;;1406:32:1;;;1388:51;;1376:2;1361:18;17667:41:0;1215:230:1;13975:108:0;;;;;;;;;;-1:-1:-1;14063:12:0;;13975:108;;;1596:25:1;;;1584:2;1569:18;13975:108:0;1450:177:1;14745:355:0;;;;;;;;;;-1:-1:-1;14745:355:0;;;;;:::i;:::-;;:::i;13875:92::-;;;;;;;;;;-1:-1:-1;13875:92:0;;13958:1;2235:36:1;;2223:2;2208:18;13875:92:0;2093:184:1;15108:218:0;;;;;;;;;;-1:-1:-1;15108:218:0;;;;;:::i;:::-;;:::i;17715:29::-;;;;;;;;;;-1:-1:-1;17715:29:0;;;;-1:-1:-1;;;;;17715:29:0;;;22363:125;;;;;;;;;;-1:-1:-1;22363:125:0;;;;;:::i;:::-;-1:-1:-1;;;;;22452:28:0;22428:4;22452:28;;;:19;:28;;;;;;;;;22363:125;19616:359;;;;;;;;;;-1:-1:-1;19616:359:0;;;;;:::i;:::-;;:::i;:::-;;17549:32;;;;;;;;;;;;;;;;20882:511;;;;;;;;;;-1:-1:-1;20882:511:0;;;;;:::i;:::-;;:::i;14091:127::-;;;;;;;;;;-1:-1:-1;14091:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;14192:18:0;14165:7;14192:18;;;;;;;;;;;;14091:127;772:103;;;;;;;;;;;;;:::i;17628:30::-;;;;;;;;;;-1:-1:-1;17628:30:0;;;;-1:-1:-1;;;;;17628:30:0;;;549:87;;;;;;;;;;-1:-1:-1;622:6:0;;-1:-1:-1;;;;;622:6:0;549:87;;13763:104;;;;;;;;;;;;;:::i;21401:140::-;;;;;;;;;;-1:-1:-1;21401:140:0;;;;;:::i;:::-;;:::i;15334:269::-;;;;;;;;;;-1:-1:-1;15334:269:0;;;;;:::i;:::-;;:::i;14226:175::-;;;;;;;;;;-1:-1:-1;14226:175:0;;;;;:::i;:::-;;:::i;21865:196::-;;;;;;;;;;-1:-1:-1;21865:196:0;;;;;:::i;:::-;;:::i;25104:238::-;;;;;;;;;;-1:-1:-1;25104:238:0;;;;;:::i;:::-;;:::i;17973:58::-;;;;;;;;;;-1:-1:-1;17973:58:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;22069:286;;;;;;;;;;-1:-1:-1;22069:286:0;;;;;:::i;:::-;;:::i;17588:33::-;;;;;;;;;;;;;;;;14409:151;;;;;;;;;;-1:-1:-1;14409:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;14525:18:0;;;14498:7;14525:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;14409:151;17871:33;;;;;;;;;;;;;;;;883:201;;;;;;;;;;-1:-1:-1;883:201:0;;;;;:::i;:::-;;:::i;19983:441::-;;;;;;;;;;-1:-1:-1;19983:441:0;;;;;:::i;:::-;;:::i;13655:100::-;13709:13;13742:5;13735:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13655:100;:::o;14568:169::-;14651:4;14668:39;175:10;14691:7;14700:6;14668:8;:39::i;:::-;-1:-1:-1;14725:4:0;14568:169;;;;;:::o;14745:355::-;14885:4;14902:36;14912:6;14920:9;14931:6;14902:9;:36::i;:::-;14949:121;14958:6;175:10;14980:89;15018:6;14980:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;14980:19:0;;;;;;:11;:19;;;;;;;;175:10;14980:33;;;;;;;;;;:37;:89::i;:::-;14949:8;:121::i;:::-;-1:-1:-1;15088:4:0;14745:355;;;;;:::o;15108:218::-;175:10;15196:4;15245:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;15245:34:0;;;;;;;;;;15196:4;;15213:83;;15236:7;;15245:50;;15284:10;15245:38;:50::i;19616:359::-;622:6;;-1:-1:-1;;;;;622:6:0;175:10;684:23;676:68;;;;-1:-1:-1;;;676:68:0;;;;;;;:::i;:::-;;;;;;;;;19729:2:::1;19719:6;:12;;19711:54;;;::::0;-1:-1:-1;;;19711:54:0;;5031:2:1;19711:54:0::1;::::0;::::1;5013:21:1::0;5070:2;5050:18;;;5043:30;5109:31;5089:18;;;5082:59;5158:18;;19711:54:0::1;4829:353:1::0;19711:54:0::1;19795:2;19784:7;:13;;19776:56;;;::::0;-1:-1:-1;;;19776:56:0;;5389:2:1;19776:56:0::1;::::0;::::1;5371:21:1::0;5428:2;5408:18;;;5401:30;5467:32;5447:18;;;5440:60;5517:18;;19776:56:0::1;5187:354:1::0;19776:56:0::1;19853:17;:26:::0;;;19890:18:::1;:28:::0;;;19935:32:::1;::::0;;5720:25:1;;;5776:2;5761:18;;5754:34;;;19935:32:0::1;::::0;5693:18:1;19935:32:0::1;;;;;;;19616:359:::0;;:::o;20882:511::-;622:6;;-1:-1:-1;;;;;622:6:0;175:10;684:23;676:68;;;;-1:-1:-1;;;676:68:0;;;;;;;:::i;:::-;20991:15:::1;::::0;-1:-1:-1;;;;;20991:15:0;;::::1;20969:38:::0;;::::1;::::0;20961:95:::1;;;::::0;-1:-1:-1;;;20961:95:0;;6001:2:1;20961:95:0::1;::::0;::::1;5983:21:1::0;6040:2;6020:18;;;6013:30;6079:34;6059:18;;;6052:62;-1:-1:-1;;;6130:18:1;;;6123:42;6182:19;;20961:95:0::1;5799:408:1::0;20961:95:0::1;21124:15;::::0;21082:59:::1;::::0;-1:-1:-1;;;;;21124:15:0;;::::1;::::0;21082:59;::::1;::::0;::::1;::::0;21124:15:::1;::::0;21082:59:::1;21152:15;:48:::0;;-1:-1:-1;;;;;;21152:48:0::1;-1:-1:-1::0;;;;;21152:48:0;::::1;::::0;;::::1;::::0;;;21254:25:::1;::::0;;-1:-1:-1;;;21254:25:0;;;;-1:-1:-1;;21152:48:0;21254:23:::1;::::0;:25:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;21152:48;21254:25:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;21236:69:0::1;;21314:4;21321:15;;;;;;;;;-1:-1:-1::0;;;;;21321:15:0::1;-1:-1:-1::0;;;;;21321:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21236:108;::::0;-1:-1:-1;;;;;;21236:108:0::1;::::0;;;;;;-1:-1:-1;;;;;6698:15:1;;;21236:108:0::1;::::0;::::1;6680:34:1::0;6750:15;;6730:18;;;6723:43;6615:18;;21236:108:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21355:13;:30:::0;;-1:-1:-1;;;;;;21355:30:0::1;-1:-1:-1::0;;;;;21355:30:0;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;;20882:511:0:o;772:103::-;622:6;;-1:-1:-1;;;;;622:6:0;175:10;684:23;676:68;;;;-1:-1:-1;;;676:68:0;;;;;;;:::i;:::-;837:30:::1;864:1;837:18;:30::i;:::-;772:103::o:0;13763:104::-;13819:13;13852:7;13845:14;;;;;:::i;21401:140::-;622:6;;-1:-1:-1;;;;;622:6:0;175:10;684:23;676:68;;;;-1:-1:-1;;;676:68:0;;;;;;;:::i;:::-;21492:41:::1;21521:4;21527:5;21492:28;:41::i;:::-;21401:140:::0;;:::o;15334:269::-;15427:4;15444:129;175:10;15467:7;15476:96;15515:15;15476:96;;;;;;;;;;;;;;;;;175:10;15476:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;15476:34:0;;;;;;;;;;;;:38;:96::i;14226:175::-;14312:4;14329:42;175:10;14353:9;14364:6;14329:9;:42::i;21865:196::-;622:6;;-1:-1:-1;;;;;622:6:0;175:10;684:23;676:68;;;;-1:-1:-1;;;676:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;21953:23:0;::::1;21945:70;;;::::0;-1:-1:-1;;;21945:70:0;;6979:2:1;21945:70:0::1;::::0;::::1;6961:21:1::0;7018:2;6998:18;;;6991:30;7057:34;7037:18;;;7030:62;-1:-1:-1;;;7108:18:1;;;7101:32;7150:19;;21945:70:0::1;6777:398:1::0;21945:70:0::1;22026:15;:27:::0;;-1:-1:-1;;;;;;22026:27:0::1;-1:-1:-1::0;;;;;22026:27:0;;;::::1;::::0;;;::::1;::::0;;21865:196::o;25104:238::-;622:6;;-1:-1:-1;;;;;622:6:0;175:10;684:23;676:68;;;;-1:-1:-1;;;676:68:0;;;;;;;:::i;:::-;25219:7:::1;25203:13;14063:12:::0;;;13975:108;25203:13:::1;:23;;;;:::i;:::-;25191:9;:35;25183:110;;;::::0;-1:-1:-1;;;25183:110:0;;7736:2:1;25183:110:0::1;::::0;::::1;7718:21:1::0;7775:2;7755:18;;;7748:30;7814:34;7794:18;;;7787:62;7885:32;7865:18;;;7858:60;7935:19;;25183:110:0::1;7534:426:1::0;25183:110:0::1;25304:18;:30:::0;25104:238::o;22069:286::-;622:6;;-1:-1:-1;;;;;622:6:0;175:10;684:23;676:68;;;;-1:-1:-1;;;676:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;22164:28:0;::::1;;::::0;;;:19:::1;:28;::::0;;;;;:40;::::1;;:28;::::0;;::::1;:40;;::::0;22156:89:::1;;;::::0;-1:-1:-1;;;22156:89:0;;8167:2:1;22156:89:0::1;::::0;::::1;8149:21:1::0;8206:2;8186:18;;;8179:30;8245:34;8225:18;;;8218:62;-1:-1:-1;;;8296:18:1;;;8289:34;8340:19;;22156:89:0::1;7965:400:1::0;22156:89:0::1;-1:-1:-1::0;;;;;22256:28:0;::::1;;::::0;;;:19:::1;:28;::::0;;;;;;;;:39;;-1:-1:-1;;22256:39:0::1;::::0;::::1;;::::0;;::::1;::::0;;;22313:34;;1163:41:1;;;22313:34:0::1;::::0;1136:18:1;22313:34:0::1;;;;;;;22069:286:::0;;:::o;883:201::-;622:6;;-1:-1:-1;;;;;622:6:0;175:10;684:23;676:68;;;;-1:-1:-1;;;676:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;972:22:0;::::1;964:73;;;::::0;-1:-1:-1;;;964:73:0;;8572:2:1;964:73:0::1;::::0;::::1;8554:21:1::0;8611:2;8591:18;;;8584:30;8650:34;8630:18;;;8623:62;-1:-1:-1;;;8701:18:1;;;8694:36;8747:19;;964:73:0::1;8370:402:1::0;964:73:0::1;1048:28;1067:8;1048:18;:28::i;:::-;883:201:::0;:::o;19983:441::-;622:6;;-1:-1:-1;;;;;622:6:0;175:10;684:23;676:68;;;;-1:-1:-1;;;676:68:0;;;;;;;:::i;:::-;20079:4:::1;-1:-1:-1::0;;;;;20062:22:0;::::1;::::0;20054:67:::1;;;::::0;-1:-1:-1;;;20054:67:0;;8979:2:1;20054:67:0::1;::::0;::::1;8961:21:1::0;;;8998:18;;;8991:30;9057:34;9037:18;;;9030:62;9109:18;;20054:67:0::1;8777:356:1::0;20054:67:0::1;-1:-1:-1::0;;;;;20136:21:0;::::1;20132:126;;20174:51;::::0;20182:10:::1;::::0;20203:21:::1;20174:51:::0;::::1;;;::::0;::::1;::::0;;;20203:21;20182:10;20174:51;::::1;;;;;;;;;;;;;::::0;::::1;;;;20132:126;20330:35;::::0;-1:-1:-1;;;20330:35:0;;20359:4:::1;20330:35;::::0;::::1;1388:51:1::0;20295:5:0;;20268:17:::1;::::0;-1:-1:-1;;;;;20330:20:0;::::1;::::0;::::1;::::0;1361:18:1;;20330:35:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20376:40;::::0;-1:-1:-1;;;20376:40:0;;20396:10:::1;20376:40;::::0;::::1;9501:51:1::0;9568:18;;;9561:34;;;20312:53:0;;-1:-1:-1;;;;;;20376:19:0;::::1;::::0;::::1;::::0;9474:18:1;;20376:40:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;20043:381;;19983:441:::0;:::o;1314:181::-;1372:7;;1404:5;1408:1;1404;:5;:::i;:::-;1392:17;;1433:1;1428;:6;;1420:46;;;;-1:-1:-1;;;1420:46:0;;10188:2:1;1420:46:0;;;10170:21:1;10227:2;10207:18;;;10200:30;10266:29;10246:18;;;10239:57;10313:18;;1420:46:0;9986:351:1;1420:46:0;1486:1;1314:181;-1:-1:-1;;;1314:181:0:o;16992:378::-;-1:-1:-1;;;;;17128:19:0;;17120:68;;;;-1:-1:-1;;;17120:68:0;;10544:2:1;17120:68:0;;;10526:21:1;10583:2;10563:18;;;10556:30;10622:34;10602:18;;;10595:62;-1:-1:-1;;;10673:18:1;;;10666:34;10717:19;;17120:68:0;10342:400:1;17120:68:0;-1:-1:-1;;;;;17207:21:0;;17199:68;;;;-1:-1:-1;;;17199:68:0;;10949:2:1;17199:68:0;;;10931:21:1;10988:2;10968:18;;;10961:30;11027:34;11007:18;;;11000:62;-1:-1:-1;;;11078:18:1;;;11071:32;11120:19;;17199:68:0;10747:398:1;17199:68:0;-1:-1:-1;;;;;17278:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;17330:32;;1596:25:1;;;17330:32:0;;1569:18:1;17330:32:0;;;;;;;;16992:378;;;:::o;22496:2600::-;-1:-1:-1;;;;;22628:18:0;;22620:68;;;;-1:-1:-1;;;22620:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;22707:16:0;;22699:64;;;;-1:-1:-1;;;22699:64:0;;;;;;;:::i;:::-;22787:6;22797:1;22787:11;22784:92;;22815:28;22831:4;22837:2;22841:1;22815:15;:28::i;:::-;22496:2600;;;:::o;22784:92::-;22937:4;22888:28;14192:18;;;;;;;;;;;22995;;22971:42;;;;;;;23030:33;;-1:-1:-1;23055:8:0;;-1:-1:-1;;;23055:8:0;;;;23054:9;23030:33;:79;;;;-1:-1:-1;;;;;;23080:29:0;;;;;;:25;:29;;;;;;;;23030:79;:138;;;;;23167:1;23146:18;;23126:17;;:38;;;;:::i;:::-;:42;23030:138;23026:1301;;;23195:8;:15;;-1:-1:-1;;;;23195:15:0;-1:-1:-1;;;23195:15:0;;;23279:18;;23259:17;;23195:15;;23259:38;;;:::i;:::-;23239:59;;23353:1;23330:20;:24;:40;;;;;23369:1;23358:8;:12;23330:40;23327:956;;;23482:16;;;23496:1;23482:16;;;;;;;;23416:21;;23391:22;;23482:16;23496:1;23482:16;;;;;;;;;;-1:-1:-1;23482:16:0;23458:40;;23535:4;23517;23522:1;23517:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;23517:23:0;;;:7;;;;;;;;;;:23;;;;23569:15;;:22;;;-1:-1:-1;;;23569:22:0;;;;:15;;;;;:20;;:22;;;;;23517:7;;23569:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23559:4;23564:1;23559:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;23559:32:0;;;:7;;;;;;;;;:32;23612:15;;:235;;-1:-1:-1;;;23612:235:0;;:15;;;:66;;:235;;23701:20;;23612:15;;23768:4;;23803;;23831:15;;23612:235;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23884:18;23929:14;23905:21;:38;;;;:::i;:::-;23884:59;;24010:1;23988:18;;23968:17;;:38;;;;:::i;:::-;23967:44;23964:304;;;24036:20;24115:8;24093:18;;24073:17;;:38;;;;:::i;:::-;24059:53;;:10;:53;:::i;:::-;:64;;;;:::i;:::-;24162:15;;24036:87;;-1:-1:-1;24146:47:0;;-1:-1:-1;;;;;24162:15:0;24036:87;24146:7;:47::i;:::-;24221:27;;1596:25:1;;;24221:27:0;;1584:2:1;1569:18;24221:27:0;;;;;;;24013:255;23964:304;23372:911;;;23327:956;-1:-1:-1;24299:8:0;:16;;-1:-1:-1;;;;24299:16:0;;;23026:1301;24355:8;;-1:-1:-1;;;;;24379:25:0;;24339:12;24379:25;;;:19;:25;;;;;;24355:8;-1:-1:-1;;;24355:8:0;;;;;24354:9;;24379:25;;:52;;-1:-1:-1;;;;;;24408:23:0;;;;;;:19;:23;;;;;;;;24379:52;24376:99;;;-1:-1:-1;24458:5:0;24376:99;24539:13;;-1:-1:-1;;;;;24531:21:0;;;24539:13;;24531:21;;;;:44;;-1:-1:-1;24562:13:0;;-1:-1:-1;;;;;24556:19:0;;;24562:13;;24556:19;;24531:44;:55;;;;;24579:7;24531:55;24528:102;;;-1:-1:-1;24613:5:0;24528:102;24645:7;24642:399;;;24713:13;;24669:18;;-1:-1:-1;;;;;24713:13:0;;;24705:21;;;;24702:163;;-1:-1:-1;24760:17:0;;24702:163;;;-1:-1:-1;24831:18:0;;24702:163;24879:12;24916:3;24894:19;24903:10;24894:6;:19;:::i;:::-;:25;;;;:::i;:::-;24879:40;-1:-1:-1;24957:13:0;24879:40;24957:6;:13;:::i;:::-;24948:22;;24987:42;25003:4;25017;25024;24987:15;:42::i;:::-;24654:387;;24642:399;25053:33;25069:4;25075:2;25079:6;25053:15;:33::i;:::-;22609:2487;;;22496:2600;;;:::o;1647:192::-;1733:7;1769:12;1761:6;;;;1753:29;;;;-1:-1:-1;;;1753:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1793:9:0;1805:5;1809:1;1805;:5;:::i;:::-;1793:17;1647:192;-1:-1:-1;;;;;1647:192:0:o;1092:191::-;1185:6;;;-1:-1:-1;;;;;1202:17:0;;;-1:-1:-1;;;;;;1202:17:0;;;;;;;1235:40;;1185:6;;;1202:17;1185:6;;1235:40;;1166:16;;1235:40;1155:128;1092:191;:::o;21549:308::-;-1:-1:-1;;;;;21640:31:0;;;;;;:25;:31;;;;;;:40;;;:31;;;;:40;;;21632:109;;;;-1:-1:-1;;;21632:109:0;;13717:2:1;21632:109:0;;;13699:21:1;13756:2;13736:18;;;13729:30;13795:34;13775:18;;;13768:62;13866:26;13846:18;;;13839:54;13910:19;;21632:109:0;13515:420:1;21632:109:0;-1:-1:-1;;;;;21752:31:0;;;;;;:25;:31;;;;;;:39;;-1:-1:-1;;21752:39:0;;;;;;;;;;21809:40;;21752:39;;:31;21809:40;;;21549:308;;:::o;15611:569::-;-1:-1:-1;;;;;15751:20:0;;15743:70;;;;-1:-1:-1;;;15743:70:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;15832:23:0;;15824:71;;;;-1:-1:-1;;;15824:71:0;;;;;;;:::i;:::-;15984;16006:6;15984:71;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15984:17:0;;:9;:17;;;;;;;;;;;;:71;:21;:71::i;:::-;-1:-1:-1;;;;;15964:17:0;;;:9;:17;;;;;;;;;;;:91;;;;16089:20;;;;;;;:32;;16114:6;16089:24;:32::i;:::-;-1:-1:-1;;;;;16066:20:0;;;:9;:20;;;;;;;;;;;;:55;;;;16137:35;1596:25:1;;;16066:20:0;;16137:35;;;;;;1569:18:1;16137:35:0;1450:177:1;20555:315:0;20668:6;20643:21;:31;;20635:73;;;;-1:-1:-1;;;20635:73:0;;14142:2:1;20635:73:0;;;14124:21:1;14181:2;14161:18;;;14154:30;14220:31;14200:18;;;14193:59;14269:18;;20635:73:0;13940:353:1;20635:73:0;20722:12;20740:9;-1:-1:-1;;;;;20740:14:0;20762:6;20740:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20721:52;;;20792:7;20784:78;;;;-1:-1:-1;;;20784:78:0;;14710:2:1;20784:78:0;;;14692:21:1;14749:2;14729:18;;;14722:30;14788:34;14768:18;;;14761:62;14859:28;14839:18;;;14832:56;14905:19;;20784:78:0;14508:422:1;14:548;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;1632:456::-;1709:6;1717;1725;1778:2;1766:9;1757:7;1753:23;1749:32;1746:52;;;1794:1;1791;1784:12;1746:52;1833:9;1820:23;1852:31;1877:5;1852:31;:::i;:::-;1902:5;-1:-1:-1;1959:2:1;1944:18;;1931:32;1972:33;1931:32;1972:33;:::i;:::-;1632:456;;2024:7;;-1:-1:-1;;;2078:2:1;2063:18;;;;2050:32;;1632:456::o;2490:247::-;2549:6;2602:2;2590:9;2581:7;2577:23;2573:32;2570:52;;;2618:1;2615;2608:12;2570:52;2657:9;2644:23;2676:31;2701:5;2676:31;:::i;2742:248::-;2810:6;2818;2871:2;2859:9;2850:7;2846:23;2842:32;2839:52;;;2887:1;2884;2877:12;2839:52;-1:-1:-1;;2910:23:1;;;2980:2;2965:18;;;2952:32;;-1:-1:-1;2742:248:1:o;2995:118::-;3081:5;3074:13;3067:21;3060:5;3057:32;3047:60;;3103:1;3100;3093:12;3118:382;3183:6;3191;3244:2;3232:9;3223:7;3219:23;3215:32;3212:52;;;3260:1;3257;3250:12;3212:52;3299:9;3286:23;3318:31;3343:5;3318:31;:::i;:::-;3368:5;-1:-1:-1;3425:2:1;3410:18;;3397:32;3438:30;3397:32;3438:30;:::i;:::-;3487:7;3477:17;;;3118:382;;;;;:::o;3505:180::-;3564:6;3617:2;3605:9;3596:7;3592:23;3588:32;3585:52;;;3633:1;3630;3623:12;3585:52;-1:-1:-1;3656:23:1;;3505:180;-1:-1:-1;3505:180:1:o;3690:388::-;3758:6;3766;3819:2;3807:9;3798:7;3794:23;3790:32;3787:52;;;3835:1;3832;3825:12;3787:52;3874:9;3861:23;3893:31;3918:5;3893:31;:::i;:::-;3943:5;-1:-1:-1;4000:2:1;3985:18;;3972:32;4013:33;3972:32;4013:33;:::i;4083:380::-;4162:1;4158:12;;;;4205;;;4226:61;;4280:4;4272:6;4268:17;4258:27;;4226:61;4333:2;4325:6;4322:14;4302:18;4299:38;4296:161;;4379:10;4374:3;4370:20;4367:1;4360:31;4414:4;4411:1;4404:15;4442:4;4439:1;4432:15;4296:161;;4083:380;;;:::o;4468:356::-;4670:2;4652:21;;;4689:18;;;4682:30;4748:34;4743:2;4728:18;;4721:62;4815:2;4800:18;;4468:356::o;6212:251::-;6282:6;6335:2;6323:9;6314:7;6310:23;6306:32;6303:52;;;6351:1;6348;6341:12;6303:52;6383:9;6377:16;6402:31;6427:5;6402:31;:::i;7180:127::-;7241:10;7236:3;7232:20;7229:1;7222:31;7272:4;7269:1;7262:15;7296:4;7293:1;7286:15;7312:217;7352:1;7378;7368:132;;7422:10;7417:3;7413:20;7410:1;7403:31;7457:4;7454:1;7447:15;7485:4;7482:1;7475:15;7368:132;-1:-1:-1;7514:9:1;;7312:217::o;9138:184::-;9208:6;9261:2;9249:9;9240:7;9236:23;9232:32;9229:52;;;9277:1;9274;9267:12;9229:52;-1:-1:-1;9300:16:1;;9138:184;-1:-1:-1;9138:184:1:o;9606:245::-;9673:6;9726:2;9714:9;9705:7;9701:23;9697:32;9694:52;;;9742:1;9739;9732:12;9694:52;9774:9;9768:16;9793:28;9815:5;9793:28;:::i;9856:125::-;9921:9;;;9942:10;;;9939:36;;;9955:18;;:::i;11150:401::-;11352:2;11334:21;;;11391:2;11371:18;;;11364:30;11430:34;11425:2;11410:18;;11403:62;-1:-1:-1;;;11496:2:1;11481:18;;11474:35;11541:3;11526:19;;11150:401::o;11556:399::-;11758:2;11740:21;;;11797:2;11777:18;;;11770:30;11836:34;11831:2;11816:18;;11809:62;-1:-1:-1;;;11902:2:1;11887:18;;11880:33;11945:3;11930:19;;11556:399::o;12092:127::-;12153:10;12148:3;12144:20;12141:1;12134:31;12184:4;12181:1;12174:15;12208:4;12205:1;12198:15;12224:980;12486:4;12534:3;12523:9;12519:19;12565:6;12554:9;12547:25;12591:2;12629:6;12624:2;12613:9;12609:18;12602:34;12672:3;12667:2;12656:9;12652:18;12645:31;12696:6;12731;12725:13;12762:6;12754;12747:22;12800:3;12789:9;12785:19;12778:26;;12839:2;12831:6;12827:15;12813:29;;12860:1;12870:195;12884:6;12881:1;12878:13;12870:195;;;12949:13;;-1:-1:-1;;;;;12945:39:1;12933:52;;13040:15;;;;13005:12;;;;12981:1;12899:9;12870:195;;;-1:-1:-1;;;;;;;13121:32:1;;;;13116:2;13101:18;;13094:60;-1:-1:-1;;;13185:3:1;13170:19;13163:35;13082:3;12224:980;-1:-1:-1;;;12224:980:1:o;13209:128::-;13276:9;;;13297:11;;;13294:37;;;13311:18;;:::i;13342:168::-;13415:9;;;13446;;13463:15;;;13457:22;;13443:37;13433:71;;13484:18;;:::i
Swarm Source
ipfs://04df924983f57107a21b57235c4fec8df9d81408a0d2488d582e83d60f692ceb
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 31 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.