Source Code
Overview
MON Balance
MON Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 1 from a total of 1 transactions
| Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
|---|---|---|---|---|---|---|---|---|---|
| Approve | 38376005 | 60 days ago | IN | 0 MON | 0.00672767 |
Loading...
Loading
Contract Name:
DANOM
Compiler Version
v0.8.23+commit.f704f362
Contract Source Code (Solidity)
/**
*Submitted for verification at monadscan.com on 2025-11-27
*/
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.5;
interface IERC20 {
function totalSupply() external view returns (uint256);
function balanceOf(address account) external view returns (uint256);
function transfer(address recipient, uint256 amount) external returns (bool);
function allowance(address owner, address spender) external view returns (uint256);
function approve(address spender, uint256 amount) external returns (bool);
function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(address indexed owner, address indexed spender, uint256 value);
}
library SafeMath {
function add(uint256 a, uint256 b) internal pure returns (uint256) {
return a + b;
}
function sub(uint256 a, uint256 b) internal pure returns (uint256) {
return a - b;
}
function mul(uint256 a, uint256 b) internal pure returns (uint256) {
return a * b;
}
function div(uint256 a, uint256 b) internal pure returns (uint256) {
return a / b;
}
function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
unchecked {
require(b <= a, errorMessage);
return a - b;
}
}
function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
unchecked {
require(b > 0, errorMessage);
return a / b;
}
}
}
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
function _msgData() internal view virtual returns (bytes calldata) {
this;
return msg.data;
}
}
library Address {
function isContract(address account) internal view returns (bool) {
uint256 size;
assembly { size := extcodesize(account) }
return size > 0;
}
function sendValue(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 functionCall(address target, bytes memory data) internal returns (bytes memory) {
return functionCall(target, data, "Address: low-level call failed");
}
function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) {
return functionCallWithValue(target, data, 0, errorMessage);
}
function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) {
return functionCallWithValue(target, data, value, "Address: low-level call with value failed");
}
function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) {
require(address(this).balance >= value, "Address: insufficient balance for call");
require(isContract(target), "Address: call to non-contract");
(bool success, bytes memory returndata) = target.call{ value: value }(data);
return _verifyCallResult(success, returndata, errorMessage);
}
function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) {
return functionStaticCall(target, data, "Address: low-level static call failed");
}
function functionStaticCall(address target, bytes memory data, string memory errorMessage) internal view returns (bytes memory) {
require(isContract(target), "Address: static call to non-contract");
(bool success, bytes memory returndata) = target.staticcall(data);
return _verifyCallResult(success, returndata, errorMessage);
}
function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) {
return functionDelegateCall(target, data, "Address: low-level delegate call failed");
}
function functionDelegateCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) {
require(isContract(target), "Address: delegate call to non-contract");
(bool success, bytes memory returndata) = target.delegatecall(data);
return _verifyCallResult(success, returndata, errorMessage);
}
function _verifyCallResult(bool success, bytes memory returndata, string memory errorMessage) private pure returns(bytes memory) {
if (success) {
return returndata;
} else {
if (returndata.length > 0) {
assembly {
let returndata_size := mload(returndata)
revert(add(32, returndata), returndata_size)
}
} else {
revert(errorMessage);
}
}
}
}
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 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 burn(address to) external returns (uint amount0, uint amount1);
function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external;
function skim(address to) external;
function sync() external;
function initialize(address, address) external;
}
interface IUniswapV2Router01 {
function factory() external pure returns (address);
function WETH() external pure returns (address);
function addLiquidity(
address tokenA,
address tokenB,
uint amountADesired,
uint amountBDesired,
uint amountAMin,
uint amountBMin,
address to,
uint deadline
) external returns (uint amountA, uint amountB, uint liquidity);
function addLiquidityETH(
address token,
uint amountTokenDesired,
uint amountTokenMin,
uint amountETHMin,
address to,
uint deadline
) external payable returns (uint amountToken, uint amountETH, uint liquidity);
function removeLiquidity(
address tokenA,
address tokenB,
uint liquidity,
uint amountAMin,
uint amountBMin,
address to,
uint deadline
) external returns (uint amountA, uint amountB);
function removeLiquidityETH(
address token,
uint liquidity,
uint amountTokenMin,
uint amountETHMin,
address to,
uint deadline
) external returns (uint amountToken, uint amountETH);
function removeLiquidityWithPermit(
address tokenA,
address tokenB,
uint liquidity,
uint amountAMin,
uint amountBMin,
address to,
uint deadline,
bool approveMax, uint8 v, bytes32 r, bytes32 s
) external returns (uint amountA, uint amountB);
function removeLiquidityETHWithPermit(
address token,
uint liquidity,
uint amountTokenMin,
uint amountETHMin,
address to,
uint deadline,
bool approveMax, uint8 v, bytes32 r, bytes32 s
) external returns (uint amountToken, uint amountETH);
function swapExactTokensForTokens(
uint amountIn,
uint amountOutMin,
address[] calldata path,
address to,
uint deadline
) external returns (uint[] memory amounts);
function swapTokensForExactTokens(
uint amountOut,
uint amountInMax,
address[] calldata path,
address to,
uint deadline
) external returns (uint[] memory amounts);
function swapExactETHForTokens(uint amountOutMin, address[] calldata path, address to, uint deadline)
external
payable
returns (uint[] memory amounts);
function swapTokensForExactETH(uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline)
external
returns (uint[] memory amounts);
function swapExactTokensForETH(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline)
external
returns (uint[] memory amounts);
function swapETHForExactTokens(uint amountOut, address[] calldata path, address to, uint deadline)
external
payable
returns (uint[] memory amounts);
function quote(uint amountA, uint reserveA, uint reserveB) external pure returns (uint amountB);
function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut) external pure returns (uint amountOut);
function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut) external pure returns (uint amountIn);
function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts);
function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts);
}
interface IUniswapV2Router02 is IUniswapV2Router01 {
function removeLiquidityETHSupportingFeeOnTransferTokens(
address token,
uint liquidity,
uint amountTokenMin,
uint amountETHMin,
address to,
uint deadline
) external returns (uint amountETH);
function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(
address token,
uint liquidity,
uint amountTokenMin,
uint amountETHMin,
address to,
uint deadline,
bool approveMax, uint8 v, bytes32 r, bytes32 s
) external returns (uint amountETH);
function swapExactTokensForTokensSupportingFeeOnTransferTokens(
uint amountIn,
uint amountOutMin,
address[] calldata path,
address to,
uint deadline
) external;
function swapExactETHForTokensSupportingFeeOnTransferTokens(
uint amountOutMin,
address[] calldata path,
address to,
uint deadline
) external payable;
function swapExactTokensForETHSupportingFeeOnTransferTokens(
uint amountIn,
uint amountOutMin,
address[] calldata path,
address to,
uint deadline
) external;
}
contract DANOM is Context, IERC20 {
using SafeMath for uint256;
using Address for address;
address private _owner;
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
function owner() public view virtual returns (address) {
return _owner;
}
modifier onlyOwner() {
require(owner() == _msgSender(), "Ownable: caller is not the owner");
_;
}
function renounceOwnership() public virtual {
emit OwnershipTransferred(_owner, address(0));
_owner = address(0);
}
mapping (address => uint256) private _tOwned;
mapping (address => mapping (address => uint256)) private _allowances;
mapping (address => bool) public _isExcludedFromFee;
address payable public Wallet_Marketing = payable(0x129DF02A6be104A590a2AB6EEa67838162931d52);
address payable public Wallet_Dev = payable(0x129DF02A6be104A590a2AB6EEa67838162931d52);
address payable public constant Wallet_Burn = payable(0x000000000000000000000000000000000000dEaD);
uint256 private constant MAX = ~uint256(0);
uint8 private constant _decimals = 9;
uint256 private _tTotal =10000 * 10**2* 10**2 * 10**_decimals;
string private constant _name = "DANOM";
string private constant _symbol = unicode"DANOM";
uint8 private txCount = 0;
uint8 private swapTrigger = 10;
uint256 public _Tax_On_Buy = 5;
uint256 public _Tax_On_Sell = 5;
uint256 public Percent_Marketing = 80;
uint256 public Percent_Dev = 0;
uint256 public Percent_Burn = 10;
uint256 public Percent_AutoLP = 10;
uint256 public _maxWalletToken = _tTotal * 100 / 100;
uint256 private _previousMaxWalletToken = _maxWalletToken;
uint256 public _maxTxAmount = _tTotal * 100 / 100;
uint256 private _previousMaxTxAmount = _maxTxAmount;
IUniswapV2Router02 public uniswapV2Router;
address public uniswapV2Pair;
bool public inSwapAndLiquify;
bool public swapAndLiquifyEnabled = true;
event SwapAndLiquifyEnabledUpdated(bool true_or_false);
event SwapAndLiquify(
uint256 tokensSwapped,
uint256 ethReceived,
uint256 tokensIntoLiqudity
);
modifier lockTheSwap {
inSwapAndLiquify = true;
_;
inSwapAndLiquify = false;
}
constructor () {
_owner =0x129DF02A6be104A590a2AB6EEa67838162931d52;
emit OwnershipTransferred(address(0), _owner);
_tOwned[owner()] = _tTotal;
IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x4B2ab38DBF28D31D467aA8993f6c2585981D6804);
uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
.createPair(address(this), _uniswapV2Router.WETH());
uniswapV2Router = _uniswapV2Router;
_isExcludedFromFee[owner()] = true;
_isExcludedFromFee[address(this)] = true;
_isExcludedFromFee[Wallet_Marketing] = true;
_isExcludedFromFee[Wallet_Burn] = true;
emit Transfer(address(0), owner(), _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 view override returns (uint256) {
return _tTotal;
}
function balanceOf(address account) public view override returns (uint256) {
return _tOwned[account];
}
function transfer(address recipient, uint256 amount) public override returns (bool) {
_transfer(_msgSender(), recipient, amount);
return true;
}
function allowance(address theOwner, address theSpender) public view override returns (uint256) {
return _allowances[theOwner][theSpender];
}
function approve(address spender, uint256 amount) public override returns (bool) {
_approve(_msgSender(), spender, amount);
return true;
}
function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
_transfer(sender, recipient, amount);
_approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
return true;
}
function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
_approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue));
return true;
}
function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
_approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero"));
return true;
}
receive() external payable {}
function _getCurrentSupply() private view returns(uint256) {
return (_tTotal);
}
function _approve(address theOwner, address theSpender, uint256 amount) private {
require(theOwner != address(0) && theSpender != address(0), "ERR: zero address");
_allowances[theOwner][theSpender] = amount;
emit Approval(theOwner, theSpender, amount);
}
function _transfer(
address from,
address to,
uint256 amount
) private {
if (to != owner() &&
to != Wallet_Burn &&
to != address(this) &&
to != uniswapV2Pair &&
from != owner()){
uint256 heldTokens = balanceOf(to);
require((heldTokens + amount) <= _maxWalletToken,"Over wallet limit.");}
if (from != owner())
require(amount <= _maxTxAmount, "Over transaction limit.");
require(from != address(0) && to != address(0), "ERR: Using 0 address!");
require(amount > 0, "Token value must be higher than zero.");
if(
txCount >= swapTrigger &&
!inSwapAndLiquify &&
from != uniswapV2Pair &&
swapAndLiquifyEnabled
)
{
uint256 contractTokenBalance = balanceOf(address(this));
if(contractTokenBalance > _maxTxAmount) {contractTokenBalance = _maxTxAmount;}
txCount = 0;
swapAndLiquify(contractTokenBalance);
}
bool takeFee = true;
bool isBuy;
if(_isExcludedFromFee[from] || _isExcludedFromFee[to]){
takeFee = false;
} else {
if(from == uniswapV2Pair){
isBuy = true;
}
txCount++;
}
_tokenTransfer(from, to, amount, takeFee, isBuy);
}
function sendToWallet(address payable wallet, uint256 amount) private {
wallet.transfer(amount);
}
function swapAndLiquify(uint256 contractTokenBalance) private lockTheSwap {
uint256 tokens_to_Burn = contractTokenBalance * Percent_Burn / 100;
_tTotal = _tTotal - tokens_to_Burn;
_tOwned[Wallet_Burn] = _tOwned[Wallet_Burn] + tokens_to_Burn;
_tOwned[address(this)] = _tOwned[address(this)] - tokens_to_Burn;
uint256 tokens_to_M = contractTokenBalance * Percent_Marketing / 100;
uint256 tokens_to_D = contractTokenBalance * Percent_Dev / 100;
uint256 tokens_to_LP_Half = contractTokenBalance * Percent_AutoLP / 200;
uint256 balanceBeforeSwap = address(this).balance;
swapTokensForBNB(tokens_to_LP_Half + tokens_to_M + tokens_to_D);
uint256 BNB_Total = address(this).balance - balanceBeforeSwap;
uint256 split_M = Percent_Marketing * 100 / (Percent_AutoLP + Percent_Marketing + Percent_Dev);
uint256 BNB_M = BNB_Total * split_M / 100;
uint256 split_D = Percent_Dev * 100 / (Percent_AutoLP + Percent_Marketing + Percent_Dev);
uint256 BNB_D = BNB_Total * split_D / 100;
addLiquidity(tokens_to_LP_Half, (BNB_Total - BNB_M - BNB_D));
emit SwapAndLiquify(tokens_to_LP_Half, (BNB_Total - BNB_M - BNB_D), tokens_to_LP_Half);
sendToWallet(Wallet_Marketing, BNB_M);
BNB_Total = address(this).balance;
sendToWallet(Wallet_Dev, BNB_Total);
}
function swapTokensForBNB(uint256 tokenAmount) private {
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 addLiquidity(uint256 tokenAmount, uint256 BNBAmount) private {
_approve(address(this), address(uniswapV2Router), tokenAmount);
uniswapV2Router.addLiquidityETH{value: BNBAmount}(
address(this),
tokenAmount,
0,
0,
Wallet_Burn,
block.timestamp
);
}
function remove_Random_Tokens(address random_Token_Address, uint256 percent_of_Tokens) public returns(bool _sent){
require(random_Token_Address != address(this), "Can not remove native token");
uint256 totalRandom = IERC20(random_Token_Address).balanceOf(address(this));
uint256 removeRandom = totalRandom*percent_of_Tokens/100;
_sent = IERC20(random_Token_Address).transfer(Wallet_Dev, removeRandom);
}
function _tokenTransfer(address sender, address recipient, uint256 tAmount, bool takeFee, bool isBuy) private {
if(!takeFee){
_tOwned[sender] = _tOwned[sender]-tAmount;
_tOwned[recipient] = _tOwned[recipient]+tAmount;
emit Transfer(sender, recipient, tAmount);
if(recipient == Wallet_Burn)
_tTotal = _tTotal-tAmount;
} else if (isBuy){
uint256 buyFEE = tAmount*_Tax_On_Buy/100;
uint256 tTransferAmount = tAmount-buyFEE;
_tOwned[sender] = _tOwned[sender]-tAmount;
_tOwned[recipient] = _tOwned[recipient]+tTransferAmount;
_tOwned[address(this)] = _tOwned[address(this)]+buyFEE;
emit Transfer(sender, recipient, tTransferAmount);
if(recipient == Wallet_Burn)
_tTotal = _tTotal-tTransferAmount;
} else {
uint256 sellFEE = tAmount*_Tax_On_Sell/100;
uint256 tTransferAmount = tAmount-sellFEE;
_tOwned[sender] = _tOwned[sender]-tAmount;
_tOwned[recipient] = _tOwned[recipient]+tTransferAmount;
_tOwned[address(this)] = _tOwned[address(this)]+sellFEE;
emit Transfer(sender, recipient, tTransferAmount);
if(recipient == Wallet_Burn)
_tTotal = _tTotal-tTransferAmount;
}
}
}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":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":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiqudity","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"true_or_false","type":"bool"}],"name":"SwapAndLiquifyEnabledUpdated","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":"Percent_AutoLP","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Percent_Burn","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Percent_Dev","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Percent_Marketing","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Wallet_Burn","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Wallet_Dev","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Wallet_Marketing","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_Tax_On_Buy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_Tax_On_Sell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"theOwner","type":"address"},{"internalType":"address","name":"theSpender","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":[{"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":[],"name":"inSwapAndLiquify","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"random_Token_Address","type":"address"},{"internalType":"uint256","name":"percent_of_Tokens","type":"uint256"}],"name":"remove_Random_Tokens","outputs":[{"internalType":"bool","name":"_sent","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"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"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
608060405273129df02a6be104a590a2ab6eea67838162931d5260045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073129df02a6be104a590a2ab6eea67838162931d5260055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a620000bc91906200086b565b6305f5e100620000cd9190620008bb565b6006555f60075f6101000a81548160ff021916908360ff160217905550600a600760016101000a81548160ff021916908360ff160217905550600560085560056009556050600a555f600b55600a600c55600a600d55606480600654620001359190620008bb565b62000141919062000932565b600e55600e54600f556064806006546200015c9190620008bb565b62000168919062000932565b6010556010546011556001601360156101000a81548160ff02191690831515021790555034801562000198575f80fd5b5073129df02a6be104a590a2ab6eea67838162931d525f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360065460015f6200027b620006b260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f734b2ab38dbf28d31d467aa8993f6c2585981d680490508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200031a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620003409190620009ce565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620003a6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620003cc9190620009ce565b6040518363ffffffff1660e01b8152600401620003eb92919062000a0f565b6020604051808303815f875af115801562000408573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200042e9190620009ce565b60135f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060125f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160035f620004c2620006b260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f61dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555062000643620006b260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600654604051620006a3919062000a4b565b60405180910390a35062000a66565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111562000763578086048111156200073b576200073a620006d9565b5b60018516156200074b5780820291505b80810290506200075b8562000706565b94506200071b565b94509492505050565b5f826200077d57600190506200084f565b816200078c575f90506200084f565b8160018114620007a55760028114620007b057620007e6565b60019150506200084f565b60ff841115620007c557620007c4620006d9565b5b8360020a915084821115620007df57620007de620006d9565b5b506200084f565b5060208310610133831016604e8410600b8410161715620008205782820a9050838111156200081a5762000819620006d9565b5b6200084f565b6200082f848484600162000712565b92509050818404811115620008495762000848620006d9565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f620008778262000856565b915062000884836200085f565b9250620008b37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846200076c565b905092915050565b5f620008c78262000856565b9150620008d48362000856565b9250828202620008e48162000856565b91508282048414831517620008fe57620008fd620006d9565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6200093e8262000856565b91506200094b8362000856565b9250826200095e576200095d62000905565b5b828204905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f62000998826200096d565b9050919050565b620009aa816200098c565b8114620009b5575f80fd5b50565b5f81519050620009c8816200099f565b92915050565b5f60208284031215620009e657620009e562000969565b5b5f620009f584828501620009b8565b91505092915050565b62000a09816200098c565b82525050565b5f60408201905062000a245f830185620009fe565b62000a336020830184620009fe565b9392505050565b62000a458162000856565b82525050565b5f60208201905062000a605f83018462000a3a565b92915050565b612f788062000a745f395ff3fe6080604052600436106101d0575f3560e01c8063715018a6116100f6578063a457c2d711610094578063bbb9f61f11610063578063bbb9f61f14610689578063c6618d60146106b3578063dafd18e9146106dd578063dd62ed3e14610719576101d7565b8063a457c2d7146105bd578063a9059cbb146105f9578063b1cb158214610635578063b43665e21461065f576101d7565b80637d1db4a5116100d05780637d1db4a514610515578063805c0e0f1461053f5780638da5cb5b1461056957806395d89b4114610593576101d7565b8063715018a614610499578063768dc710146104af57806378109e54146104eb576101d7565b8063313ce5671161016e5780634a74bb021161013d5780634a74bb02146103df578063603176251461040957806361c9a0dc1461043357806370a082311461045d576101d7565b8063313ce56714610325578063395093511461034f5780633f70a4951461038b57806349bd5a5e146103b5576101d7565b806318160ddd116101aa57806318160ddd1461026b57806321dbd9eb14610295578063220f6696146102bf57806323b872dd146102e9576101d7565b806306fdde03146101db578063095ea7b3146102055780631694505e14610241576101d7565b366101d757005b5f80fd5b3480156101e6575f80fd5b506101ef610755565b6040516101fc919061245a565b60405180910390f35b348015610210575f80fd5b5061022b6004803603810190610226919061250b565b610792565b6040516102389190612563565b60405180910390f35b34801561024c575f80fd5b506102556107af565b60405161026291906125d7565b60405180910390f35b348015610276575f80fd5b5061027f6107d4565b60405161028c91906125ff565b60405180910390f35b3480156102a0575f80fd5b506102a96107dd565b6040516102b691906125ff565b60405180910390f35b3480156102ca575f80fd5b506102d36107e3565b6040516102e09190612563565b60405180910390f35b3480156102f4575f80fd5b5061030f600480360381019061030a9190612618565b6107f6565b60405161031c9190612563565b60405180910390f35b348015610330575f80fd5b506103396108ca565b6040516103469190612683565b60405180910390f35b34801561035a575f80fd5b506103756004803603810190610370919061250b565b6108d2565b6040516103829190612563565b60405180910390f35b348015610396575f80fd5b5061039f610980565b6040516103ac91906125ff565b60405180910390f35b3480156103c0575f80fd5b506103c9610986565b6040516103d691906126ab565b60405180910390f35b3480156103ea575f80fd5b506103f36109ab565b6040516104009190612563565b60405180910390f35b348015610414575f80fd5b5061041d6109be565b60405161042a91906125ff565b60405180910390f35b34801561043e575f80fd5b506104476109c4565b60405161045491906125ff565b60405180910390f35b348015610468575f80fd5b50610483600480360381019061047e91906126c4565b6109ca565b60405161049091906125ff565b60405180910390f35b3480156104a4575f80fd5b506104ad610a10565b005b3480156104ba575f80fd5b506104d560048036038101906104d091906126c4565b610aca565b6040516104e29190612563565b60405180910390f35b3480156104f6575f80fd5b506104ff610ae7565b60405161050c91906125ff565b60405180910390f35b348015610520575f80fd5b50610529610aed565b60405161053691906125ff565b60405180910390f35b34801561054a575f80fd5b50610553610af3565b604051610560919061270f565b60405180910390f35b348015610574575f80fd5b5061057d610af9565b60405161058a91906126ab565b60405180910390f35b34801561059e575f80fd5b506105a7610b20565b6040516105b4919061245a565b60405180910390f35b3480156105c8575f80fd5b506105e360048036038101906105de919061250b565b610b5d565b6040516105f09190612563565b60405180910390f35b348015610604575f80fd5b5061061f600480360381019061061a919061250b565b610c25565b60405161062c9190612563565b60405180910390f35b348015610640575f80fd5b50610649610c42565b60405161065691906125ff565b60405180910390f35b34801561066a575f80fd5b50610673610c48565b604051610680919061270f565b60405180910390f35b348015610694575f80fd5b5061069d610c6d565b6040516106aa919061270f565b60405180910390f35b3480156106be575f80fd5b506106c7610c92565b6040516106d491906125ff565b60405180910390f35b3480156106e8575f80fd5b5061070360048036038101906106fe919061250b565b610c98565b6040516107109190612563565b60405180910390f35b348015610724575f80fd5b5061073f600480360381019061073a9190612728565b610e43565b60405161074c91906125ff565b60405180910390f35b60606040518060400160405280600581526020017f44414e4f4d000000000000000000000000000000000000000000000000000000815250905090565b5f6107a561079e610ec5565b8484610ecc565b6001905092915050565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f600654905090565b600c5481565b601360149054906101000a900460ff1681565b5f61080284848461105a565b6108bf8461080e610ec5565b6108ba85604051806060016040528060288152602001612ef66028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f610871610ec5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546115b19092919063ffffffff16565b610ecc565b600190509392505050565b5f6009905090565b5f6109766108de610ec5565b846109718560025f6108ee610ec5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461160590919063ffffffff16565b610ecc565b6001905092915050565b60085481565b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601360159054906101000a900460ff1681565b600a5481565b600d5481565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6003602052805f5260405f205f915054906101000a900460ff1681565b600e5481565b60105481565b61dead81565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600581526020017f44414e4f4d000000000000000000000000000000000000000000000000000000815250905090565b5f610c1b610b69610ec5565b84610c1685604051806060016040528060258152602001612f1e6025913960025f610b92610ec5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546115b19092919063ffffffff16565b610ecc565b6001905092915050565b5f610c38610c31610ec5565b848461105a565b6001905092915050565b60095481565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b5481565b5f3073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610d07576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cfe906127b0565b60405180910390fd5b5f8373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610d4191906126ab565b602060405180830381865afa158015610d5c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d8091906127e2565b90505f60648483610d91919061283a565b610d9b91906128a8565b90508473ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401610df99291906128f8565b6020604051808303815f875af1158015610e15573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e399190612949565b9250505092915050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015610f3457505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b610f73576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f6a906129be565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161104d91906125ff565b60405180910390a3505050565b611062610af9565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141580156110cb575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b801561110357503073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b801561115c575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b801561119b575061116b610af9565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156111fe575f6111aa836109ca565b9050600e5482826111bb91906129dc565b11156111fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111f390612a59565b60405180910390fd5b505b611206610af9565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161461127e5760105481111561127d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127490612ac1565b60405180910390fd5b5b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156112e657505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b611325576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131c90612b29565b60405180910390fd5b5f8111611367576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161135e90612bb7565b60405180910390fd5b600760019054906101000a900460ff1660ff1660075f9054906101000a900460ff1660ff16101580156113a75750601360149054906101000a900460ff16155b8015611400575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156114185750601360159054906101000a900460ff165b1561145e575f611427306109ca565b90506010548111156114395760105490505b5f60075f6101000a81548160ff021916908360ff16021790555061145c8161161a565b505b5f600190505f60035f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16806114ff575060035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b1561150c575f915061159d565b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff160361156557600190505b60075f81819054906101000a900460ff168092919061158390612bd5565b91906101000a81548160ff021916908360ff160217905550505b6115aa85858585856119a0565b5050505050565b5f8383111582906115f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115ef919061245a565b60405180910390fd5b5082840390509392505050565b5f818361161291906129dc565b905092915050565b6001601360146101000a81548160ff0219169083151502179055505f6064600c5483611646919061283a565b61165091906128a8565b9050806006546116609190612bfd565b6006819055508060015f61dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546116b191906129dc565b60015f61dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508060015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461173d9190612bfd565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f6064600a548461178f919061283a565b61179991906128a8565b90505f6064600b54856117ac919061283a565b6117b691906128a8565b90505f60c8600d54866117c9919061283a565b6117d391906128a8565b90505f4790506117f88385846117e991906129dc565b6117f391906129dc565b612077565b5f81476118059190612bfd565b90505f600b54600a54600d5461181b91906129dc565b61182591906129dc565b6064600a54611834919061283a565b61183e91906128a8565b90505f6064828461184f919061283a565b61185991906128a8565b90505f600b54600a54600d5461186f91906129dc565b61187991906129dc565b6064600b54611888919061283a565b61189291906128a8565b90505f606482866118a3919061283a565b6118ad91906128a8565b90506118cf878285886118c09190612bfd565b6118ca9190612bfd565b6122ad565b7f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb561878285886118fe9190612bfd565b6119089190612bfd565b8960405161191893929190612c30565b60405180910390a161194b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684612388565b47945061197960055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1686612388565b505050505050505050505f601360146101000a81548160ff02191690831515021790555050565b81611b6d578260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546119ee9190612bfd565b60015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508260015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611a7891906129dc565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611b1691906125ff565b60405180910390a361dead73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611b685782600654611b619190612bfd565b6006819055505b612070565b8015611df3575f606460085485611b84919061283a565b611b8e91906128a8565b90505f8185611b9d9190612bfd565b90508460015f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611be89190612bfd565b60015f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508060015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611c7291906129dc565b60015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611cfc91906129dc565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611d9a91906125ff565b60405180910390a361dead73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1603611dec5780600654611de59190612bfd565b6006819055505b505061206f565b5f606460095485611e04919061283a565b611e0e91906128a8565b90505f8185611e1d9190612bfd565b90508460015f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611e689190612bfd565b60015f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508060015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ef291906129dc565b60015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611f7c91906129dc565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161201a91906125ff565b60405180910390a361dead73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff160361206c57806006546120659190612bfd565b6006819055505b50505b5b5050505050565b5f600267ffffffffffffffff81111561209357612092612c65565b5b6040519080825280602002602001820160405280156120c15781602001602082028036833780820191505090505b50905030815f815181106120d8576120d7612c92565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561217c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121a09190612cd3565b816001815181106121b4576121b3612c92565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061221a3060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610ecc565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b815260040161227c959493929190612dee565b5f604051808303815f87803b158015612293575f80fd5b505af11580156122a5573d5f803e3d5ffd5b505050505050565b6122d93060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610ecc565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7198230855f8061dead426040518863ffffffff1660e01b815260040161234096959493929190612e46565b60606040518083038185885af115801561235c573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906123819190612ea5565b5050505050565b8173ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f193505050501580156123cb573d5f803e3d5ffd5b505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156124075780820151818401526020810190506123ec565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61242c826123d0565b61243681856123da565b93506124468185602086016123ea565b61244f81612412565b840191505092915050565b5f6020820190508181035f8301526124728184612422565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6124a78261247e565b9050919050565b6124b78161249d565b81146124c1575f80fd5b50565b5f813590506124d2816124ae565b92915050565b5f819050919050565b6124ea816124d8565b81146124f4575f80fd5b50565b5f81359050612505816124e1565b92915050565b5f80604083850312156125215761252061247a565b5b5f61252e858286016124c4565b925050602061253f858286016124f7565b9150509250929050565b5f8115159050919050565b61255d81612549565b82525050565b5f6020820190506125765f830184612554565b92915050565b5f819050919050565b5f61259f61259a6125958461247e565b61257c565b61247e565b9050919050565b5f6125b082612585565b9050919050565b5f6125c1826125a6565b9050919050565b6125d1816125b7565b82525050565b5f6020820190506125ea5f8301846125c8565b92915050565b6125f9816124d8565b82525050565b5f6020820190506126125f8301846125f0565b92915050565b5f805f6060848603121561262f5761262e61247a565b5b5f61263c868287016124c4565b935050602061264d868287016124c4565b925050604061265e868287016124f7565b9150509250925092565b5f60ff82169050919050565b61267d81612668565b82525050565b5f6020820190506126965f830184612674565b92915050565b6126a58161249d565b82525050565b5f6020820190506126be5f83018461269c565b92915050565b5f602082840312156126d9576126d861247a565b5b5f6126e6848285016124c4565b91505092915050565b5f6126f98261247e565b9050919050565b612709816126ef565b82525050565b5f6020820190506127225f830184612700565b92915050565b5f806040838503121561273e5761273d61247a565b5b5f61274b858286016124c4565b925050602061275c858286016124c4565b9150509250929050565b7f43616e206e6f742072656d6f7665206e617469766520746f6b656e00000000005f82015250565b5f61279a601b836123da565b91506127a582612766565b602082019050919050565b5f6020820190508181035f8301526127c78161278e565b9050919050565b5f815190506127dc816124e1565b92915050565b5f602082840312156127f7576127f661247a565b5b5f612804848285016127ce565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f612844826124d8565b915061284f836124d8565b925082820261285d816124d8565b915082820484148315176128745761287361280d565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6128b2826124d8565b91506128bd836124d8565b9250826128cd576128cc61287b565b5b828204905092915050565b5f6128e2826125a6565b9050919050565b6128f2816128d8565b82525050565b5f60408201905061290b5f8301856128e9565b61291860208301846125f0565b9392505050565b61292881612549565b8114612932575f80fd5b50565b5f815190506129438161291f565b92915050565b5f6020828403121561295e5761295d61247a565b5b5f61296b84828501612935565b91505092915050565b7f4552523a207a65726f20616464726573730000000000000000000000000000005f82015250565b5f6129a86011836123da565b91506129b382612974565b602082019050919050565b5f6020820190508181035f8301526129d58161299c565b9050919050565b5f6129e6826124d8565b91506129f1836124d8565b9250828201905080821115612a0957612a0861280d565b5b92915050565b7f4f7665722077616c6c6574206c696d69742e00000000000000000000000000005f82015250565b5f612a436012836123da565b9150612a4e82612a0f565b602082019050919050565b5f6020820190508181035f830152612a7081612a37565b9050919050565b7f4f766572207472616e73616374696f6e206c696d69742e0000000000000000005f82015250565b5f612aab6017836123da565b9150612ab682612a77565b602082019050919050565b5f6020820190508181035f830152612ad881612a9f565b9050919050565b7f4552523a205573696e67203020616464726573732100000000000000000000005f82015250565b5f612b136015836123da565b9150612b1e82612adf565b602082019050919050565b5f6020820190508181035f830152612b4081612b07565b9050919050565b7f546f6b656e2076616c7565206d75737420626520686967686572207468616e205f8201527f7a65726f2e000000000000000000000000000000000000000000000000000000602082015250565b5f612ba16025836123da565b9150612bac82612b47565b604082019050919050565b5f6020820190508181035f830152612bce81612b95565b9050919050565b5f612bdf82612668565b915060ff8203612bf257612bf161280d565b5b600182019050919050565b5f612c07826124d8565b9150612c12836124d8565b9250828203905081811115612c2a57612c2961280d565b5b92915050565b5f606082019050612c435f8301866125f0565b612c5060208301856125f0565b612c5d60408301846125f0565b949350505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050612ccd816124ae565b92915050565b5f60208284031215612ce857612ce761247a565b5b5f612cf584828501612cbf565b91505092915050565b5f819050919050565b5f612d21612d1c612d1784612cfe565b61257c565b6124d8565b9050919050565b612d3181612d07565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612d698161249d565b82525050565b5f612d7a8383612d60565b60208301905092915050565b5f602082019050919050565b5f612d9c82612d37565b612da68185612d41565b9350612db183612d51565b805f5b83811015612de1578151612dc88882612d6f565b9750612dd383612d86565b925050600181019050612db4565b5085935050505092915050565b5f60a082019050612e015f8301886125f0565b612e0e6020830187612d28565b8181036040830152612e208186612d92565b9050612e2f606083018561269c565b612e3c60808301846125f0565b9695505050505050565b5f60c082019050612e595f83018961269c565b612e6660208301886125f0565b612e736040830187612d28565b612e806060830186612d28565b612e8d60808301856128e9565b612e9a60a08301846125f0565b979650505050505050565b5f805f60608486031215612ebc57612ebb61247a565b5b5f612ec9868287016127ce565b9350506020612eda868287016127ce565b9250506040612eeb868287016127ce565b915050925092509256fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212202e5c6dd76dc10e9c3bbcd1ec34783e24db294cfb3b901aca62958e3467cdd10964736f6c63430008170033
Deployed Bytecode
0x6080604052600436106101d0575f3560e01c8063715018a6116100f6578063a457c2d711610094578063bbb9f61f11610063578063bbb9f61f14610689578063c6618d60146106b3578063dafd18e9146106dd578063dd62ed3e14610719576101d7565b8063a457c2d7146105bd578063a9059cbb146105f9578063b1cb158214610635578063b43665e21461065f576101d7565b80637d1db4a5116100d05780637d1db4a514610515578063805c0e0f1461053f5780638da5cb5b1461056957806395d89b4114610593576101d7565b8063715018a614610499578063768dc710146104af57806378109e54146104eb576101d7565b8063313ce5671161016e5780634a74bb021161013d5780634a74bb02146103df578063603176251461040957806361c9a0dc1461043357806370a082311461045d576101d7565b8063313ce56714610325578063395093511461034f5780633f70a4951461038b57806349bd5a5e146103b5576101d7565b806318160ddd116101aa57806318160ddd1461026b57806321dbd9eb14610295578063220f6696146102bf57806323b872dd146102e9576101d7565b806306fdde03146101db578063095ea7b3146102055780631694505e14610241576101d7565b366101d757005b5f80fd5b3480156101e6575f80fd5b506101ef610755565b6040516101fc919061245a565b60405180910390f35b348015610210575f80fd5b5061022b6004803603810190610226919061250b565b610792565b6040516102389190612563565b60405180910390f35b34801561024c575f80fd5b506102556107af565b60405161026291906125d7565b60405180910390f35b348015610276575f80fd5b5061027f6107d4565b60405161028c91906125ff565b60405180910390f35b3480156102a0575f80fd5b506102a96107dd565b6040516102b691906125ff565b60405180910390f35b3480156102ca575f80fd5b506102d36107e3565b6040516102e09190612563565b60405180910390f35b3480156102f4575f80fd5b5061030f600480360381019061030a9190612618565b6107f6565b60405161031c9190612563565b60405180910390f35b348015610330575f80fd5b506103396108ca565b6040516103469190612683565b60405180910390f35b34801561035a575f80fd5b506103756004803603810190610370919061250b565b6108d2565b6040516103829190612563565b60405180910390f35b348015610396575f80fd5b5061039f610980565b6040516103ac91906125ff565b60405180910390f35b3480156103c0575f80fd5b506103c9610986565b6040516103d691906126ab565b60405180910390f35b3480156103ea575f80fd5b506103f36109ab565b6040516104009190612563565b60405180910390f35b348015610414575f80fd5b5061041d6109be565b60405161042a91906125ff565b60405180910390f35b34801561043e575f80fd5b506104476109c4565b60405161045491906125ff565b60405180910390f35b348015610468575f80fd5b50610483600480360381019061047e91906126c4565b6109ca565b60405161049091906125ff565b60405180910390f35b3480156104a4575f80fd5b506104ad610a10565b005b3480156104ba575f80fd5b506104d560048036038101906104d091906126c4565b610aca565b6040516104e29190612563565b60405180910390f35b3480156104f6575f80fd5b506104ff610ae7565b60405161050c91906125ff565b60405180910390f35b348015610520575f80fd5b50610529610aed565b60405161053691906125ff565b60405180910390f35b34801561054a575f80fd5b50610553610af3565b604051610560919061270f565b60405180910390f35b348015610574575f80fd5b5061057d610af9565b60405161058a91906126ab565b60405180910390f35b34801561059e575f80fd5b506105a7610b20565b6040516105b4919061245a565b60405180910390f35b3480156105c8575f80fd5b506105e360048036038101906105de919061250b565b610b5d565b6040516105f09190612563565b60405180910390f35b348015610604575f80fd5b5061061f600480360381019061061a919061250b565b610c25565b60405161062c9190612563565b60405180910390f35b348015610640575f80fd5b50610649610c42565b60405161065691906125ff565b60405180910390f35b34801561066a575f80fd5b50610673610c48565b604051610680919061270f565b60405180910390f35b348015610694575f80fd5b5061069d610c6d565b6040516106aa919061270f565b60405180910390f35b3480156106be575f80fd5b506106c7610c92565b6040516106d491906125ff565b60405180910390f35b3480156106e8575f80fd5b5061070360048036038101906106fe919061250b565b610c98565b6040516107109190612563565b60405180910390f35b348015610724575f80fd5b5061073f600480360381019061073a9190612728565b610e43565b60405161074c91906125ff565b60405180910390f35b60606040518060400160405280600581526020017f44414e4f4d000000000000000000000000000000000000000000000000000000815250905090565b5f6107a561079e610ec5565b8484610ecc565b6001905092915050565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f600654905090565b600c5481565b601360149054906101000a900460ff1681565b5f61080284848461105a565b6108bf8461080e610ec5565b6108ba85604051806060016040528060288152602001612ef66028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f610871610ec5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546115b19092919063ffffffff16565b610ecc565b600190509392505050565b5f6009905090565b5f6109766108de610ec5565b846109718560025f6108ee610ec5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461160590919063ffffffff16565b610ecc565b6001905092915050565b60085481565b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601360159054906101000a900460ff1681565b600a5481565b600d5481565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6003602052805f5260405f205f915054906101000a900460ff1681565b600e5481565b60105481565b61dead81565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600581526020017f44414e4f4d000000000000000000000000000000000000000000000000000000815250905090565b5f610c1b610b69610ec5565b84610c1685604051806060016040528060258152602001612f1e6025913960025f610b92610ec5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546115b19092919063ffffffff16565b610ecc565b6001905092915050565b5f610c38610c31610ec5565b848461105a565b6001905092915050565b60095481565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b5481565b5f3073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610d07576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cfe906127b0565b60405180910390fd5b5f8373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610d4191906126ab565b602060405180830381865afa158015610d5c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d8091906127e2565b90505f60648483610d91919061283a565b610d9b91906128a8565b90508473ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401610df99291906128f8565b6020604051808303815f875af1158015610e15573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e399190612949565b9250505092915050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015610f3457505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b610f73576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f6a906129be565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161104d91906125ff565b60405180910390a3505050565b611062610af9565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141580156110cb575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b801561110357503073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b801561115c575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b801561119b575061116b610af9565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156111fe575f6111aa836109ca565b9050600e5482826111bb91906129dc565b11156111fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111f390612a59565b60405180910390fd5b505b611206610af9565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161461127e5760105481111561127d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127490612ac1565b60405180910390fd5b5b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156112e657505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b611325576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131c90612b29565b60405180910390fd5b5f8111611367576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161135e90612bb7565b60405180910390fd5b600760019054906101000a900460ff1660ff1660075f9054906101000a900460ff1660ff16101580156113a75750601360149054906101000a900460ff16155b8015611400575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156114185750601360159054906101000a900460ff165b1561145e575f611427306109ca565b90506010548111156114395760105490505b5f60075f6101000a81548160ff021916908360ff16021790555061145c8161161a565b505b5f600190505f60035f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16806114ff575060035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b1561150c575f915061159d565b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff160361156557600190505b60075f81819054906101000a900460ff168092919061158390612bd5565b91906101000a81548160ff021916908360ff160217905550505b6115aa85858585856119a0565b5050505050565b5f8383111582906115f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115ef919061245a565b60405180910390fd5b5082840390509392505050565b5f818361161291906129dc565b905092915050565b6001601360146101000a81548160ff0219169083151502179055505f6064600c5483611646919061283a565b61165091906128a8565b9050806006546116609190612bfd565b6006819055508060015f61dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546116b191906129dc565b60015f61dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508060015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461173d9190612bfd565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f6064600a548461178f919061283a565b61179991906128a8565b90505f6064600b54856117ac919061283a565b6117b691906128a8565b90505f60c8600d54866117c9919061283a565b6117d391906128a8565b90505f4790506117f88385846117e991906129dc565b6117f391906129dc565b612077565b5f81476118059190612bfd565b90505f600b54600a54600d5461181b91906129dc565b61182591906129dc565b6064600a54611834919061283a565b61183e91906128a8565b90505f6064828461184f919061283a565b61185991906128a8565b90505f600b54600a54600d5461186f91906129dc565b61187991906129dc565b6064600b54611888919061283a565b61189291906128a8565b90505f606482866118a3919061283a565b6118ad91906128a8565b90506118cf878285886118c09190612bfd565b6118ca9190612bfd565b6122ad565b7f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb561878285886118fe9190612bfd565b6119089190612bfd565b8960405161191893929190612c30565b60405180910390a161194b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684612388565b47945061197960055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1686612388565b505050505050505050505f601360146101000a81548160ff02191690831515021790555050565b81611b6d578260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546119ee9190612bfd565b60015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508260015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611a7891906129dc565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611b1691906125ff565b60405180910390a361dead73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611b685782600654611b619190612bfd565b6006819055505b612070565b8015611df3575f606460085485611b84919061283a565b611b8e91906128a8565b90505f8185611b9d9190612bfd565b90508460015f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611be89190612bfd565b60015f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508060015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611c7291906129dc565b60015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611cfc91906129dc565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611d9a91906125ff565b60405180910390a361dead73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1603611dec5780600654611de59190612bfd565b6006819055505b505061206f565b5f606460095485611e04919061283a565b611e0e91906128a8565b90505f8185611e1d9190612bfd565b90508460015f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611e689190612bfd565b60015f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508060015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ef291906129dc565b60015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611f7c91906129dc565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161201a91906125ff565b60405180910390a361dead73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff160361206c57806006546120659190612bfd565b6006819055505b50505b5b5050505050565b5f600267ffffffffffffffff81111561209357612092612c65565b5b6040519080825280602002602001820160405280156120c15781602001602082028036833780820191505090505b50905030815f815181106120d8576120d7612c92565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561217c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121a09190612cd3565b816001815181106121b4576121b3612c92565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061221a3060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610ecc565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b815260040161227c959493929190612dee565b5f604051808303815f87803b158015612293575f80fd5b505af11580156122a5573d5f803e3d5ffd5b505050505050565b6122d93060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610ecc565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7198230855f8061dead426040518863ffffffff1660e01b815260040161234096959493929190612e46565b60606040518083038185885af115801561235c573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906123819190612ea5565b5050505050565b8173ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f193505050501580156123cb573d5f803e3d5ffd5b505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156124075780820151818401526020810190506123ec565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61242c826123d0565b61243681856123da565b93506124468185602086016123ea565b61244f81612412565b840191505092915050565b5f6020820190508181035f8301526124728184612422565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6124a78261247e565b9050919050565b6124b78161249d565b81146124c1575f80fd5b50565b5f813590506124d2816124ae565b92915050565b5f819050919050565b6124ea816124d8565b81146124f4575f80fd5b50565b5f81359050612505816124e1565b92915050565b5f80604083850312156125215761252061247a565b5b5f61252e858286016124c4565b925050602061253f858286016124f7565b9150509250929050565b5f8115159050919050565b61255d81612549565b82525050565b5f6020820190506125765f830184612554565b92915050565b5f819050919050565b5f61259f61259a6125958461247e565b61257c565b61247e565b9050919050565b5f6125b082612585565b9050919050565b5f6125c1826125a6565b9050919050565b6125d1816125b7565b82525050565b5f6020820190506125ea5f8301846125c8565b92915050565b6125f9816124d8565b82525050565b5f6020820190506126125f8301846125f0565b92915050565b5f805f6060848603121561262f5761262e61247a565b5b5f61263c868287016124c4565b935050602061264d868287016124c4565b925050604061265e868287016124f7565b9150509250925092565b5f60ff82169050919050565b61267d81612668565b82525050565b5f6020820190506126965f830184612674565b92915050565b6126a58161249d565b82525050565b5f6020820190506126be5f83018461269c565b92915050565b5f602082840312156126d9576126d861247a565b5b5f6126e6848285016124c4565b91505092915050565b5f6126f98261247e565b9050919050565b612709816126ef565b82525050565b5f6020820190506127225f830184612700565b92915050565b5f806040838503121561273e5761273d61247a565b5b5f61274b858286016124c4565b925050602061275c858286016124c4565b9150509250929050565b7f43616e206e6f742072656d6f7665206e617469766520746f6b656e00000000005f82015250565b5f61279a601b836123da565b91506127a582612766565b602082019050919050565b5f6020820190508181035f8301526127c78161278e565b9050919050565b5f815190506127dc816124e1565b92915050565b5f602082840312156127f7576127f661247a565b5b5f612804848285016127ce565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f612844826124d8565b915061284f836124d8565b925082820261285d816124d8565b915082820484148315176128745761287361280d565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6128b2826124d8565b91506128bd836124d8565b9250826128cd576128cc61287b565b5b828204905092915050565b5f6128e2826125a6565b9050919050565b6128f2816128d8565b82525050565b5f60408201905061290b5f8301856128e9565b61291860208301846125f0565b9392505050565b61292881612549565b8114612932575f80fd5b50565b5f815190506129438161291f565b92915050565b5f6020828403121561295e5761295d61247a565b5b5f61296b84828501612935565b91505092915050565b7f4552523a207a65726f20616464726573730000000000000000000000000000005f82015250565b5f6129a86011836123da565b91506129b382612974565b602082019050919050565b5f6020820190508181035f8301526129d58161299c565b9050919050565b5f6129e6826124d8565b91506129f1836124d8565b9250828201905080821115612a0957612a0861280d565b5b92915050565b7f4f7665722077616c6c6574206c696d69742e00000000000000000000000000005f82015250565b5f612a436012836123da565b9150612a4e82612a0f565b602082019050919050565b5f6020820190508181035f830152612a7081612a37565b9050919050565b7f4f766572207472616e73616374696f6e206c696d69742e0000000000000000005f82015250565b5f612aab6017836123da565b9150612ab682612a77565b602082019050919050565b5f6020820190508181035f830152612ad881612a9f565b9050919050565b7f4552523a205573696e67203020616464726573732100000000000000000000005f82015250565b5f612b136015836123da565b9150612b1e82612adf565b602082019050919050565b5f6020820190508181035f830152612b4081612b07565b9050919050565b7f546f6b656e2076616c7565206d75737420626520686967686572207468616e205f8201527f7a65726f2e000000000000000000000000000000000000000000000000000000602082015250565b5f612ba16025836123da565b9150612bac82612b47565b604082019050919050565b5f6020820190508181035f830152612bce81612b95565b9050919050565b5f612bdf82612668565b915060ff8203612bf257612bf161280d565b5b600182019050919050565b5f612c07826124d8565b9150612c12836124d8565b9250828203905081811115612c2a57612c2961280d565b5b92915050565b5f606082019050612c435f8301866125f0565b612c5060208301856125f0565b612c5d60408301846125f0565b949350505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050612ccd816124ae565b92915050565b5f60208284031215612ce857612ce761247a565b5b5f612cf584828501612cbf565b91505092915050565b5f819050919050565b5f612d21612d1c612d1784612cfe565b61257c565b6124d8565b9050919050565b612d3181612d07565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612d698161249d565b82525050565b5f612d7a8383612d60565b60208301905092915050565b5f602082019050919050565b5f612d9c82612d37565b612da68185612d41565b9350612db183612d51565b805f5b83811015612de1578151612dc88882612d6f565b9750612dd383612d86565b925050600181019050612db4565b5085935050505092915050565b5f60a082019050612e015f8301886125f0565b612e0e6020830187612d28565b8181036040830152612e208186612d92565b9050612e2f606083018561269c565b612e3c60808301846125f0565b9695505050505050565b5f60c082019050612e595f83018961269c565b612e6660208301886125f0565b612e736040830187612d28565b612e806060830186612d28565b612e8d60808301856128e9565b612e9a60a08301846125f0565b979650505050505050565b5f805f60608486031215612ebc57612ebb61247a565b5b5f612ec9868287016127ce565b9350506020612eda868287016127ce565b9250506040612eeb868287016127ce565b915050925092509256fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212202e5c6dd76dc10e9c3bbcd1ec34783e24db294cfb3b901aca62958e3467cdd10964736f6c63430008170033
Deployed Bytecode Sourcemap
12923:11107:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16012:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16841:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14806:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16283:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14487:32;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14889:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17008:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16194:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17327:218;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14331:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14854:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14924:40;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14406:37;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14526:34;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16384:117;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13368:138;;;;;;;;;;;;;:::i;:::-;;13639:51;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14568:52;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14691:49;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13893:97;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13149:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16101;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17551:269;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16507:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14368:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13698:93;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13799:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14450:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;22185:444;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16680:155;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16012:83;16049:13;16082:5;;;;;;;;;;;;;;;;;16075:12;;16012:83;:::o;16841:161::-;16916:4;16933:39;16942:12;:10;:12::i;:::-;16956:7;16965:6;16933:8;:39::i;:::-;16990:4;16983:11;;16841:161;;;;:::o;14806:41::-;;;;;;;;;;;;;:::o;16283:95::-;16336:7;16363;;16356:14;;16283:95;:::o;14487:32::-;;;;:::o;14889:28::-;;;;;;;;;;;;;:::o;17008:313::-;17106:4;17123:36;17133:6;17141:9;17152:6;17123:9;:36::i;:::-;17170:121;17179:6;17187:12;:10;:12::i;:::-;17201:89;17239:6;17201:89;;;;;;;;;;;;;;;;;:11;:19;17213:6;17201:19;;;;;;;;;;;;;;;:33;17221:12;:10;:12::i;:::-;17201:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;17170:8;:121::i;:::-;17309:4;17302:11;;17008:313;;;;;:::o;16194:83::-;16235:5;14082:1;16253:16;;16194:83;:::o;17327:218::-;17415:4;17432:83;17441:12;:10;:12::i;:::-;17455:7;17464:50;17503:10;17464:11;:25;17476:12;:10;:12::i;:::-;17464:25;;;;;;;;;;;;;;;:34;17490:7;17464:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;17432:8;:83::i;:::-;17533:4;17526:11;;17327:218;;;;:::o;14331:30::-;;;;:::o;14854:28::-;;;;;;;;;;;;;:::o;14924:40::-;;;;;;;;;;;;;:::o;14406:37::-;;;;:::o;14526:34::-;;;;:::o;16384:117::-;16450:7;16477;:16;16485:7;16477:16;;;;;;;;;;;;;;;;16470:23;;16384:117;;;:::o;13368:138::-;13465:1;13428:40;;13449:6;;;;;;;;;;13428:40;;;;;;;;;;;;13496:1;13479:6;;:19;;;;;;;;;;;;;;;;;;13368:138::o;13639:51::-;;;;;;;;;;;;;;;;;;;;;;:::o;14568:52::-;;;;:::o;14691:49::-;;;;:::o;13893:97::-;13947:42;13893:97;:::o;13149:87::-;13195:7;13222:6;;;;;;;;;;;13215:13;;13149:87;:::o;16101:::-;16140:13;16173:7;;;;;;;;;;;;;;;;;16166:14;;16101:87;:::o;17551:269::-;17644:4;17661:129;17670:12;:10;:12::i;:::-;17684:7;17693:96;17732:15;17693:96;;;;;;;;;;;;;;;;;:11;:25;17705:12;:10;:12::i;:::-;17693:25;;;;;;;;;;;;;;;:34;17719:7;17693:34;;;;;;;;;;;;;;;;:38;;:96;;;;;:::i;:::-;17661:8;:129::i;:::-;17808:4;17801:11;;17551:269;;;;:::o;16507:167::-;16585:4;16602:42;16612:12;:10;:12::i;:::-;16626:9;16637:6;16602:9;:42::i;:::-;16662:4;16655:11;;16507:167;;;;:::o;14368:31::-;;;;:::o;13698:93::-;;;;;;;;;;;;;:::o;13799:87::-;;;;;;;;;;;;;:::o;14450:30::-;;;;:::o;22185:444::-;22287:10;22349:4;22317:37;;:20;:37;;;22309:77;;;;;;;;;;;;:::i;:::-;;;;;;;;;22397:19;22426:20;22419:38;;;22466:4;22419:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22397:75;;22483:20;22536:3;22518:17;22506:11;:29;;;;:::i;:::-;:33;;;;:::i;:::-;22483:56;;22565:20;22558:37;;;22596:10;;;;;;;;;;;22608:12;22558:63;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22550:71;;22298:331;;22185:444;;;;:::o;16680:155::-;16767:7;16794:11;:21;16806:8;16794:21;;;;;;;;;;;;;;;:33;16816:10;16794:33;;;;;;;;;;;;;;;;16787:40;;16680:155;;;;:::o;1630:98::-;1683:7;1710:10;1703:17;;1630:98;:::o;17961:286::-;18080:1;18060:22;;:8;:22;;;;:50;;;;;18108:1;18086:24;;:10;:24;;;;18060:50;18052:80;;;;;;;;;;;;:::i;:::-;;;;;;;;;18179:6;18143:11;:21;18155:8;18143:21;;;;;;;;;;;;;;;:33;18165:10;18143:33;;;;;;;;;;;;;;;:42;;;;18220:10;18201:38;;18210:8;18201:38;;;18232:6;18201:38;;;;;;:::i;:::-;;;;;;;;17961:286;;;:::o;18253:1454::-;18377:7;:5;:7::i;:::-;18371:13;;:2;:13;;;;:47;;;;;13947:42;18401:17;;:2;:17;;;;18371:47;:83;;;;;18449:4;18435:19;;:2;:19;;;;18371:83;:119;;;;;18477:13;;;;;;;;;;;18471:19;;:2;:19;;;;18371:119;:151;;;;;18515:7;:5;:7::i;:::-;18507:15;;:4;:15;;;;18371:151;18367:292;;;18538:18;18559:13;18569:2;18559:9;:13::i;:::-;18538:34;;18620:15;;18609:6;18596:10;:19;;;;:::i;:::-;18595:40;;18587:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;18523:136;18367:292;18681:7;:5;:7::i;:::-;18673:15;;:4;:15;;;18669:92;;18721:12;;18711:6;:22;;18703:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;18669:92;18796:1;18780:18;;:4;:18;;;;:38;;;;;18816:1;18802:16;;:2;:16;;;;18780:38;18772:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;18872:1;18863:6;:10;18855:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;18956:11;;;;;;;;;;;18945:22;;:7;;;;;;;;;;;:22;;;;:57;;;;;18986:16;;;;;;;;;;;18985:17;18945:57;:95;;;;;19027:13;;;;;;;;;;;19019:21;;:4;:21;;;;18945:95;:133;;;;;19057:21;;;;;;;;;;;18945:133;18928:428;;;19120:28;19151:24;19169:4;19151:9;:24::i;:::-;19120:55;;19216:12;;19193:20;:35;19190:78;;;19254:12;;19231:35;;19190:78;19292:1;19282:7;;:11;;;;;;;;;;;;;;;;;;19308:36;19323:20;19308:14;:36::i;:::-;19103:253;18928:428;19366:12;19381:4;19366:19;;19396:10;19420:18;:24;19439:4;19420:24;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;19448:18;:22;19467:2;19448:22;;;;;;;;;;;;;;;;;;;;;;;;;19420:50;19417:224;;;19496:5;19486:15;;19417:224;;;19545:13;;;;;;;;;;;19537:21;;:4;:21;;;19534:72;;19586:4;19578:12;;19534:72;19620:7;;:9;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;19417:224;19651:48;19666:4;19672:2;19676:6;19684:7;19693:5;19651:14;:48::i;:::-;18356:1351;;18253:1454;;;:::o;1175:206::-;1261:7;1319:1;1314;:6;;1322:12;1306:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1361:1;1357;:5;1350:12;;1175:206;;;;;:::o;759:98::-;817:7;848:1;844;:5;;;;:::i;:::-;837:12;;759:98;;;;:::o;19839:1489::-;15216:4;15197:16;;:23;;;;;;;;;;;;;;;;;;19928:22:::1;19991:3;19976:12;;19953:20;:35;;;;:::i;:::-;:41;;;;:::i;:::-;19928:66;;20029:14;20019:7;;:24;;;;:::i;:::-;20009:7;:34;;;;20104:14;20081:7;:20;13947:42;20081:20;;;;;;;;;;;;;;;;:37;;;;:::i;:::-;20058:7;:20;13947:42;20058:20;;;;;;;;;;;;;;;:60;;;;20183:14;20158:7;:22;20174:4;20158:22;;;;;;;;;;;;;;;;:39;;;;:::i;:::-;20133:7;:22;20149:4;20133:22;;;;;;;;;;;;;;;:64;;;;20213:19;20278:3;20258:17;;20235:20;:40;;;;:::i;:::-;:46;;;;:::i;:::-;20213:68;;20296:19;20355:3;20341:11;;20318:20;:34;;;;:::i;:::-;:40;;;;:::i;:::-;20296:62;;20373:25;20441:3;20424:14;;20401:20;:37;;;;:::i;:::-;:43;;;;:::i;:::-;20373:71;;20459:25;20487:21;20459:49;;20523:63;20574:11;20560;20540:17;:31;;;;:::i;:::-;:45;;;;:::i;:::-;20523:16;:63::i;:::-;20601:17;20645;20621:21;:41;;;;:::i;:::-;20601:61;;20677:15;20759:11;;20739:17;;20722:14;;:34;;;;:::i;:::-;:48;;;;:::i;:::-;20715:3;20695:17;;:23;;;;:::i;:::-;:76;;;;:::i;:::-;20677:94;;20786:13;20824:3;20814:7;20802:9;:19;;;;:::i;:::-;:25;;;;:::i;:::-;20786:41;;20842:15;20918:11;;20898:17;;20881:14;;:34;;;;:::i;:::-;:48;;;;:::i;:::-;20874:3;20860:11;;:17;;;;:::i;:::-;:70;;;;:::i;:::-;20842:88;;20945:13;20983:3;20973:7;20961:9;:19;;;;:::i;:::-;:25;;;;:::i;:::-;20945:41;;21001:60;21014:17;21054:5;21046;21034:9;:17;;;;:::i;:::-;:25;;;;:::i;:::-;21001:12;:60::i;:::-;21081:81;21096:17;21136:5;21128;21116:9;:17;;;;:::i;:::-;:25;;;;:::i;:::-;21144:17;21081:81;;;;;;;;:::i;:::-;;;;;;;;21177:37;21190:16;;;;;;;;;;;21208:5;21177:12;:37::i;:::-;21241:21;21229:33;;21277:35;21290:10;;;;;;;;;;;21302:9;21277:12;:35::i;:::-;19913:1415;;;;;;;;;;15262:5:::0;15243:16;;:24;;;;;;;;;;;;;;;;;;19839:1489;:::o;22635:1392::-;22760:7;22756:1264;;22817:7;22801;:15;22809:6;22801:15;;;;;;;;;;;;;;;;:23;;;;:::i;:::-;22783:7;:15;22791:6;22783:15;;;;;;;;;;;;;;;:41;;;;22879:7;22860;:18;22868:9;22860:18;;;;;;;;;;;;;;;;:26;;;;:::i;:::-;22839:7;:18;22847:9;22839:18;;;;;;;;;;;;;;;:47;;;;22923:9;22906:36;;22915:6;22906:36;;;22934:7;22906:36;;;;;;:::i;:::-;;;;;;;;13947:42;22960:24;;:9;:24;;;22957:67;;23017:7;23009;;:15;;;;:::i;:::-;22999:7;:25;;;;22957:67;22756:1264;;;23050:5;23046:974;;;23071:14;23108:3;23096:11;;23088:7;:19;;;;:::i;:::-;:23;;;;:::i;:::-;23071:40;;23126:23;23160:6;23152:7;:14;;;;:::i;:::-;23126:40;;23215:7;23199;:15;23207:6;23199:15;;;;;;;;;;;;;;;;:23;;;;:::i;:::-;23181:7;:15;23189:6;23181:15;;;;;;;;;;;;;;;:41;;;;23277:15;23258:7;:18;23266:9;23258:18;;;;;;;;;;;;;;;;:34;;;;:::i;:::-;23237:7;:18;23245:9;23237:18;;;;;;;;;;;;;;;:55;;;;23355:6;23332:7;:22;23348:4;23332:22;;;;;;;;;;;;;;;;:29;;;;:::i;:::-;23307:7;:22;23323:4;23307:22;;;;;;;;;;;;;;;:54;;;;23400:9;23383:44;;23392:6;23383:44;;;23411:15;23383:44;;;;;;:::i;:::-;;;;;;;;13947:42;23445:24;;:9;:24;;;23442:75;;23502:15;23494:7;;:23;;;;:::i;:::-;23484:7;:33;;;;23442:75;23056:477;;23046:974;;;23554:15;23593:3;23580:12;;23572:7;:20;;;;:::i;:::-;:24;;;;:::i;:::-;23554:42;;23611:23;23645:7;23637;:15;;;;:::i;:::-;23611:41;;23701:7;23685;:15;23693:6;23685:15;;;;;;;;;;;;;;;;:23;;;;:::i;:::-;23667:7;:15;23675:6;23667:15;;;;;;;;;;;;;;;:41;;;;23763:15;23744:7;:18;23752:9;23744:18;;;;;;;;;;;;;;;;:34;;;;:::i;:::-;23723:7;:18;23731:9;23723:18;;;;;;;;;;;;;;;:55;;;;23841:7;23818;:22;23834:4;23818:22;;;;;;;;;;;;;;;;:30;;;;:::i;:::-;23793:7;:22;23809:4;23793:22;;;;;;;;;;;;;;;:55;;;;23887:9;23870:44;;23879:6;23870:44;;;23898:15;23870:44;;;;;;:::i;:::-;;;;;;;;13947:42;23932:24;;:9;:24;;;23929:75;;23989:15;23981:7;;:23;;;;:::i;:::-;23971:7;:33;;;;23929:75;23539:481;;23046:974;22756:1264;22635:1392;;;;;:::o;21334:472::-;21400:21;21438:1;21424:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21400:40;;21469:4;21451;21456:1;21451:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;21495:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21485:4;21490:1;21485:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;;;21528:62;21545:4;21560:15;;;;;;;;;;;21578:11;21528:8;:62::i;:::-;21601:15;;;;;;;;;;;:66;;;21682:11;21708:1;21725:4;21752;21772:15;21601:197;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21389:417;21334:472;:::o;21812:366::-;21893:62;21910:4;21925:15;;;;;;;;;;;21943:11;21893:8;:62::i;:::-;21966:15;;;;;;;;;;;:31;;;22005:9;22038:4;22058:11;22084:1;22101;13947:42;22144:15;21966:204;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;21812:366;;:::o;19713:120::-;19798:6;:15;;:23;19814:6;19798:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19713:120;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:60::-;3474:3;3495:5;3488:12;;3446:60;;;:::o;3512:142::-;3562:9;3595:53;3613:34;3622:24;3640:5;3622:24;:::i;:::-;3613:34;:::i;:::-;3595:53;:::i;:::-;3582:66;;3512:142;;;:::o;3660:126::-;3710:9;3743:37;3774:5;3743:37;:::i;:::-;3730:50;;3660:126;;;:::o;3792:153::-;3869:9;3902:37;3933:5;3902:37;:::i;:::-;3889:50;;3792:153;;;:::o;3951:185::-;4065:64;4123:5;4065:64;:::i;:::-;4060:3;4053:77;3951:185;;:::o;4142:276::-;4262:4;4300:2;4289:9;4285:18;4277:26;;4313:98;4408:1;4397:9;4393:17;4384:6;4313:98;:::i;:::-;4142:276;;;;:::o;4424:118::-;4511:24;4529:5;4511:24;:::i;:::-;4506:3;4499:37;4424:118;;:::o;4548:222::-;4641:4;4679:2;4668:9;4664:18;4656:26;;4692:71;4760:1;4749:9;4745:17;4736:6;4692:71;:::i;:::-;4548:222;;;;:::o;4776:619::-;4853:6;4861;4869;4918:2;4906:9;4897:7;4893:23;4889:32;4886:119;;;4924:79;;:::i;:::-;4886:119;5044:1;5069:53;5114:7;5105:6;5094:9;5090:22;5069:53;:::i;:::-;5059:63;;5015:117;5171:2;5197:53;5242:7;5233:6;5222:9;5218:22;5197:53;:::i;:::-;5187:63;;5142:118;5299:2;5325:53;5370:7;5361:6;5350:9;5346:22;5325:53;:::i;:::-;5315:63;;5270:118;4776:619;;;;;:::o;5401:86::-;5436:7;5476:4;5469:5;5465:16;5454:27;;5401:86;;;:::o;5493:112::-;5576:22;5592:5;5576:22;:::i;:::-;5571:3;5564:35;5493:112;;:::o;5611:214::-;5700:4;5738:2;5727:9;5723:18;5715:26;;5751:67;5815:1;5804:9;5800:17;5791:6;5751:67;:::i;:::-;5611:214;;;;:::o;5831:118::-;5918:24;5936:5;5918:24;:::i;:::-;5913:3;5906:37;5831:118;;:::o;5955:222::-;6048:4;6086:2;6075:9;6071:18;6063:26;;6099:71;6167:1;6156:9;6152:17;6143:6;6099:71;:::i;:::-;5955:222;;;;:::o;6183:329::-;6242:6;6291:2;6279:9;6270:7;6266:23;6262:32;6259:119;;;6297:79;;:::i;:::-;6259:119;6417:1;6442:53;6487:7;6478:6;6467:9;6463:22;6442:53;:::i;:::-;6432:63;;6388:117;6183:329;;;;:::o;6518:104::-;6563:7;6592:24;6610:5;6592:24;:::i;:::-;6581:35;;6518:104;;;:::o;6628:142::-;6731:32;6757:5;6731:32;:::i;:::-;6726:3;6719:45;6628:142;;:::o;6776:254::-;6885:4;6923:2;6912:9;6908:18;6900:26;;6936:87;7020:1;7009:9;7005:17;6996:6;6936:87;:::i;:::-;6776:254;;;;:::o;7036:474::-;7104:6;7112;7161:2;7149:9;7140:7;7136:23;7132:32;7129:119;;;7167:79;;:::i;:::-;7129:119;7287:1;7312:53;7357:7;7348:6;7337:9;7333:22;7312:53;:::i;:::-;7302:63;;7258:117;7414:2;7440:53;7485:7;7476:6;7465:9;7461:22;7440:53;:::i;:::-;7430:63;;7385:118;7036:474;;;;;:::o;7516:177::-;7656:29;7652:1;7644:6;7640:14;7633:53;7516:177;:::o;7699:366::-;7841:3;7862:67;7926:2;7921:3;7862:67;:::i;:::-;7855:74;;7938:93;8027:3;7938:93;:::i;:::-;8056:2;8051:3;8047:12;8040:19;;7699:366;;;:::o;8071:419::-;8237:4;8275:2;8264:9;8260:18;8252:26;;8324:9;8318:4;8314:20;8310:1;8299:9;8295:17;8288:47;8352:131;8478:4;8352:131;:::i;:::-;8344:139;;8071:419;;;:::o;8496:143::-;8553:5;8584:6;8578:13;8569:22;;8600:33;8627:5;8600:33;:::i;:::-;8496:143;;;;:::o;8645:351::-;8715:6;8764:2;8752:9;8743:7;8739:23;8735:32;8732:119;;;8770:79;;:::i;:::-;8732:119;8890:1;8915:64;8971:7;8962:6;8951:9;8947:22;8915:64;:::i;:::-;8905:74;;8861:128;8645:351;;;;:::o;9002:180::-;9050:77;9047:1;9040:88;9147:4;9144:1;9137:15;9171:4;9168:1;9161:15;9188:410;9228:7;9251:20;9269:1;9251:20;:::i;:::-;9246:25;;9285:20;9303:1;9285:20;:::i;:::-;9280:25;;9340:1;9337;9333:9;9362:30;9380:11;9362:30;:::i;:::-;9351:41;;9541:1;9532:7;9528:15;9525:1;9522:22;9502:1;9495:9;9475:83;9452:139;;9571:18;;:::i;:::-;9452:139;9236:362;9188:410;;;;:::o;9604:180::-;9652:77;9649:1;9642:88;9749:4;9746:1;9739:15;9773:4;9770:1;9763:15;9790:185;9830:1;9847:20;9865:1;9847:20;:::i;:::-;9842:25;;9881:20;9899:1;9881:20;:::i;:::-;9876:25;;9920:1;9910:35;;9925:18;;:::i;:::-;9910:35;9967:1;9964;9960:9;9955:14;;9790:185;;;;:::o;9981:134::-;10039:9;10072:37;10103:5;10072:37;:::i;:::-;10059:50;;9981:134;;;:::o;10121:147::-;10216:45;10255:5;10216:45;:::i;:::-;10211:3;10204:58;10121:147;;:::o;10274:348::-;10403:4;10441:2;10430:9;10426:18;10418:26;;10454:79;10530:1;10519:9;10515:17;10506:6;10454:79;:::i;:::-;10543:72;10611:2;10600:9;10596:18;10587:6;10543:72;:::i;:::-;10274:348;;;;;:::o;10628:116::-;10698:21;10713:5;10698:21;:::i;:::-;10691:5;10688:32;10678:60;;10734:1;10731;10724:12;10678:60;10628:116;:::o;10750:137::-;10804:5;10835:6;10829:13;10820:22;;10851:30;10875:5;10851:30;:::i;:::-;10750:137;;;;:::o;10893:345::-;10960:6;11009:2;10997:9;10988:7;10984:23;10980:32;10977:119;;;11015:79;;:::i;:::-;10977:119;11135:1;11160:61;11213:7;11204:6;11193:9;11189:22;11160:61;:::i;:::-;11150:71;;11106:125;10893:345;;;;:::o;11244:167::-;11384:19;11380:1;11372:6;11368:14;11361:43;11244:167;:::o;11417:366::-;11559:3;11580:67;11644:2;11639:3;11580:67;:::i;:::-;11573:74;;11656:93;11745:3;11656:93;:::i;:::-;11774:2;11769:3;11765:12;11758:19;;11417:366;;;:::o;11789:419::-;11955:4;11993:2;11982:9;11978:18;11970:26;;12042:9;12036:4;12032:20;12028:1;12017:9;12013:17;12006:47;12070:131;12196:4;12070:131;:::i;:::-;12062:139;;11789:419;;;:::o;12214:191::-;12254:3;12273:20;12291:1;12273:20;:::i;:::-;12268:25;;12307:20;12325:1;12307:20;:::i;:::-;12302:25;;12350:1;12347;12343:9;12336:16;;12371:3;12368:1;12365:10;12362:36;;;12378:18;;:::i;:::-;12362:36;12214:191;;;;:::o;12411:168::-;12551:20;12547:1;12539:6;12535:14;12528:44;12411:168;:::o;12585:366::-;12727:3;12748:67;12812:2;12807:3;12748:67;:::i;:::-;12741:74;;12824:93;12913:3;12824:93;:::i;:::-;12942:2;12937:3;12933:12;12926:19;;12585:366;;;:::o;12957:419::-;13123:4;13161:2;13150:9;13146:18;13138:26;;13210:9;13204:4;13200:20;13196:1;13185:9;13181:17;13174:47;13238:131;13364:4;13238:131;:::i;:::-;13230:139;;12957:419;;;:::o;13382:173::-;13522:25;13518:1;13510:6;13506:14;13499:49;13382:173;:::o;13561:366::-;13703:3;13724:67;13788:2;13783:3;13724:67;:::i;:::-;13717:74;;13800:93;13889:3;13800:93;:::i;:::-;13918:2;13913:3;13909:12;13902:19;;13561:366;;;:::o;13933:419::-;14099:4;14137:2;14126:9;14122:18;14114:26;;14186:9;14180:4;14176:20;14172:1;14161:9;14157:17;14150:47;14214:131;14340:4;14214:131;:::i;:::-;14206:139;;13933:419;;;:::o;14358:171::-;14498:23;14494:1;14486:6;14482:14;14475:47;14358:171;:::o;14535:366::-;14677:3;14698:67;14762:2;14757:3;14698:67;:::i;:::-;14691:74;;14774:93;14863:3;14774:93;:::i;:::-;14892:2;14887:3;14883:12;14876:19;;14535:366;;;:::o;14907:419::-;15073:4;15111:2;15100:9;15096:18;15088:26;;15160:9;15154:4;15150:20;15146:1;15135:9;15131:17;15124:47;15188:131;15314:4;15188:131;:::i;:::-;15180:139;;14907:419;;;:::o;15332:224::-;15472:34;15468:1;15460:6;15456:14;15449:58;15541:7;15536:2;15528:6;15524:15;15517:32;15332:224;:::o;15562:366::-;15704:3;15725:67;15789:2;15784:3;15725:67;:::i;:::-;15718:74;;15801:93;15890:3;15801:93;:::i;:::-;15919:2;15914:3;15910:12;15903:19;;15562:366;;;:::o;15934:419::-;16100:4;16138:2;16127:9;16123:18;16115:26;;16187:9;16181:4;16177:20;16173:1;16162:9;16158:17;16151:47;16215:131;16341:4;16215:131;:::i;:::-;16207:139;;15934:419;;;:::o;16359:167::-;16396:3;16419:22;16435:5;16419:22;:::i;:::-;16410:31;;16463:4;16456:5;16453:15;16450:41;;16471:18;;:::i;:::-;16450:41;16518:1;16511:5;16507:13;16500:20;;16359:167;;;:::o;16532:194::-;16572:4;16592:20;16610:1;16592:20;:::i;:::-;16587:25;;16626:20;16644:1;16626:20;:::i;:::-;16621:25;;16670:1;16667;16663:9;16655:17;;16694:1;16688:4;16685:11;16682:37;;;16699:18;;:::i;:::-;16682:37;16532:194;;;;:::o;16732:442::-;16881:4;16919:2;16908:9;16904:18;16896:26;;16932:71;17000:1;16989:9;16985:17;16976:6;16932:71;:::i;:::-;17013:72;17081:2;17070:9;17066:18;17057:6;17013:72;:::i;:::-;17095;17163:2;17152:9;17148:18;17139:6;17095:72;:::i;:::-;16732:442;;;;;;:::o;17180:180::-;17228:77;17225:1;17218:88;17325:4;17322:1;17315:15;17349:4;17346:1;17339:15;17366:180;17414:77;17411:1;17404:88;17511:4;17508:1;17501:15;17535:4;17532:1;17525:15;17552:143;17609:5;17640:6;17634:13;17625:22;;17656:33;17683:5;17656:33;:::i;:::-;17552:143;;;;:::o;17701:351::-;17771:6;17820:2;17808:9;17799:7;17795:23;17791:32;17788:119;;;17826:79;;:::i;:::-;17788:119;17946:1;17971:64;18027:7;18018:6;18007:9;18003:22;17971:64;:::i;:::-;17961:74;;17917:128;17701:351;;;;:::o;18058:85::-;18103:7;18132:5;18121:16;;18058:85;;;:::o;18149:158::-;18207:9;18240:61;18258:42;18267:32;18293:5;18267:32;:::i;:::-;18258:42;:::i;:::-;18240:61;:::i;:::-;18227:74;;18149:158;;;:::o;18313:147::-;18408:45;18447:5;18408:45;:::i;:::-;18403:3;18396:58;18313:147;;:::o;18466:114::-;18533:6;18567:5;18561:12;18551:22;;18466:114;;;:::o;18586:184::-;18685:11;18719:6;18714:3;18707:19;18759:4;18754:3;18750:14;18735:29;;18586:184;;;;:::o;18776:132::-;18843:4;18866:3;18858:11;;18896:4;18891:3;18887:14;18879:22;;18776:132;;;:::o;18914:108::-;18991:24;19009:5;18991:24;:::i;:::-;18986:3;18979:37;18914:108;;:::o;19028:179::-;19097:10;19118:46;19160:3;19152:6;19118:46;:::i;:::-;19196:4;19191:3;19187:14;19173:28;;19028:179;;;;:::o;19213:113::-;19283:4;19315;19310:3;19306:14;19298:22;;19213:113;;;:::o;19362:732::-;19481:3;19510:54;19558:5;19510:54;:::i;:::-;19580:86;19659:6;19654:3;19580:86;:::i;:::-;19573:93;;19690:56;19740:5;19690:56;:::i;:::-;19769:7;19800:1;19785:284;19810:6;19807:1;19804:13;19785:284;;;19886:6;19880:13;19913:63;19972:3;19957:13;19913:63;:::i;:::-;19906:70;;19999:60;20052:6;19999:60;:::i;:::-;19989:70;;19845:224;19832:1;19829;19825:9;19820:14;;19785:284;;;19789:14;20085:3;20078:10;;19486:608;;;19362:732;;;;:::o;20100:831::-;20363:4;20401:3;20390:9;20386:19;20378:27;;20415:71;20483:1;20472:9;20468:17;20459:6;20415:71;:::i;:::-;20496:80;20572:2;20561:9;20557:18;20548:6;20496:80;:::i;:::-;20623:9;20617:4;20613:20;20608:2;20597:9;20593:18;20586:48;20651:108;20754:4;20745:6;20651:108;:::i;:::-;20643:116;;20769:72;20837:2;20826:9;20822:18;20813:6;20769:72;:::i;:::-;20851:73;20919:3;20908:9;20904:19;20895:6;20851:73;:::i;:::-;20100:831;;;;;;;;:::o;20937:823::-;21194:4;21232:3;21221:9;21217:19;21209:27;;21246:71;21314:1;21303:9;21299:17;21290:6;21246:71;:::i;:::-;21327:72;21395:2;21384:9;21380:18;21371:6;21327:72;:::i;:::-;21409:80;21485:2;21474:9;21470:18;21461:6;21409:80;:::i;:::-;21499;21575:2;21564:9;21560:18;21551:6;21499:80;:::i;:::-;21589:81;21665:3;21654:9;21650:19;21641:6;21589:81;:::i;:::-;21680:73;21748:3;21737:9;21733:19;21724:6;21680:73;:::i;:::-;20937:823;;;;;;;;;:::o;21766:663::-;21854:6;21862;21870;21919:2;21907:9;21898:7;21894:23;21890:32;21887:119;;;21925:79;;:::i;:::-;21887:119;22045:1;22070:64;22126:7;22117:6;22106:9;22102:22;22070:64;:::i;:::-;22060:74;;22016:128;22183:2;22209:64;22265:7;22256:6;22245:9;22241:22;22209:64;:::i;:::-;22199:74;;22154:129;22322:2;22348:64;22404:7;22395:6;22384:9;22380:22;22348:64;:::i;:::-;22338:74;;22293:129;21766:663;;;;;:::o
Swarm Source
ipfs://2e5c6dd76dc10e9c3bbcd1ec34783e24db294cfb3b901aca62958e3467cdd109
Loading...
Loading
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in MON
Multichain Portfolio | 35 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
[ 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.