BEP-20
Source Code
Overview
Max Total Supply
10,000,000,000EVANA
Holders
2,819
Market
Price
$0.00 @ 0.000000 BNB
Onchain Market Cap
-
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
34,334.920150478373396243 EVANAValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
Contract Name:
EVANA
Compiler Version
v0.8.20+commit.a1b79de6
Contract Source Code (Solidity)
/**
*Submitted for verification at BscScan.com on 2025-08-31
*/
// SPDX-License-Identifier: MIT
pragma solidity 0.8.20;
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
function _msgData() internal view virtual returns (bytes calldata) {
return msg.data;
}
}
interface IERC20 {
function totalSupply() external view returns (uint256);
function balanceOf(address account) external view returns (uint256);
function transfer(address recipient, uint256 amount) external returns (bool);
function allowance(address owner, address spender) external view returns (uint256);
function approve(address spender, uint256 amount) external returns (bool);
function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(address indexed owner, address indexed spender, uint256 value);
}
interface IERC20Metadata is IERC20 {
function name() external view returns (string memory);
function symbol() external view returns (string memory);
function decimals() external view returns (uint8);
}
contract ERC20 is Context, IERC20, IERC20Metadata {
mapping(address => uint256) private _balances;
mapping(address => mapping(address => uint256)) private _allowances;
uint256 private _totalSupply;
string private _name;
string private _symbol;
constructor(string memory name_, string memory symbol_) {
_name = name_;
_symbol = symbol_;
}
function name() public view virtual override returns (string memory) {
return _name;
}
function symbol() public view virtual override returns (string memory) {
return _symbol;
}
function decimals() public view virtual override returns (uint8) {
return 18;
}
function totalSupply() public view virtual override returns (uint256) {
return _totalSupply;
}
function balanceOf(address account) public view virtual override returns (uint256) {
return _balances[account];
}
function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
_transfer(_msgSender(), recipient, amount);
return true;
}
function allowance(address owner, address spender) public view virtual override returns (uint256) {
return _allowances[owner][spender];
}
function approve(address spender, uint256 amount) public virtual override returns (bool) {
_approve(_msgSender(), spender, amount);
return true;
}
function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
_transfer(sender, recipient, amount);
uint256 currentAllowance = _allowances[sender][_msgSender()];
require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
unchecked {
_approve(sender, _msgSender(), currentAllowance - amount);
}
return true;
}
function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
_approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue);
return true;
}
function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
uint256 currentAllowance = _allowances[_msgSender()][spender];
require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
unchecked {
_approve(_msgSender(), spender, currentAllowance - subtractedValue);
}
return true;
}
function _transfer(address sender, address recipient, uint256 amount) internal virtual {
require(sender != address(0), "ERC20: transfer from the zero address");
require(recipient != address(0), "ERC20: transfer to the zero address");
require(amount > 0, "Transfer amount must be greater than zero");
uint256 senderBalance = _balances[sender];
require(senderBalance >= amount, "ERC20: transfer amount exceeds balance");
unchecked {
_balances[sender] = senderBalance - amount;
}
_balances[recipient] += amount;
emit Transfer(sender, recipient, amount);
}
function _mint(address account, uint256 amount) internal virtual {
require(account != address(0), "ERC20: mint to the zero address");
_totalSupply += amount;
_balances[account] += amount;
emit Transfer(address(0), account, amount);
}
function _approve(address owner, address spender, uint256 amount) internal virtual {
require(owner != address(0), "ERC20: approve from the zero address");
require(spender != address(0), "ERC20: approve to the zero address");
_allowances[owner][spender] = amount;
emit Approval(owner, spender, amount);
}
function _spendAllowance(address owner, address spender, uint256 amount) internal virtual {
uint256 currentAllowance = allowance(owner, spender);
if (currentAllowance != type(uint256).max) {
require(currentAllowance >= amount, "ERC20: insufficient allowance");
unchecked {
_approve(owner, spender, currentAllowance - amount);
}
}
}
}
abstract contract Ownable is Context {
address private _owner;
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
constructor(address initialOwner) {
_transferOwnership(initialOwner);
}
modifier onlyOwner() {
_checkOwner();
_;
}
function owner() public view virtual returns (address) {
return _owner;
}
function _checkOwner() internal view virtual {
require(owner() == _msgSender(), "Ownable: caller is not the owner");
}
function renounceOwnership() public virtual onlyOwner {
_transferOwnership(address(0));
}
function transferOwnership(address newOwner) public virtual onlyOwner {
require(newOwner != address(0), "Ownable: new owner is the zero address");
_transferOwnership(newOwner);
}
function _transferOwnership(address newOwner) internal virtual {
address oldOwner = _owner;
_owner = newOwner;
emit OwnershipTransferred(oldOwner, newOwner);
}
}
abstract contract ReentrancyGuard {
uint256 private constant _NOT_ENTERED = 1;
uint256 private constant _ENTERED = 2;
uint256 private _status;
constructor() {
_status = _NOT_ENTERED;
}
modifier nonReentrant() {
require(_status != _ENTERED, "ReentrancyGuard: reentrant call");
_status = _ENTERED;
_;
_status = _NOT_ENTERED;
}
}
interface IDexRouter {
function factory() external pure returns (address);
function WETH() external pure returns (address);
function swapExactTokensForETHSupportingFeeOnTransferTokens(
uint256 amountIn,
uint256 amountOutMin,
address[] calldata path,
address to,
uint256 deadline
) external;
function addLiquidityETH(
address token,
uint256 amountTokenDesired,
uint256 amountTokenMin,
uint256 amountETHMin,
address to,
uint256 deadline
) external payable returns (
uint256 amountToken,
uint256 amountETH,
uint256 liquidity
);
}
interface IDexFactory {
function createPair(address tokenA, address tokenB) external returns (address pair);
}
contract EVANA is ERC20, Ownable, ReentrancyGuard {
// Constants
uint256 private constant TOTAL_SUPPLY = 10_000_000_000 * 1e18; // 10 billion tokens
uint256 private constant MAX_FEE = 30; // Maximum fee percentage
uint256 private constant MIN_MAX_BUY = TOTAL_SUPPLY * 1 / 1000; // 0.1% minimum
uint256 private constant MIN_MAX_SELL = TOTAL_SUPPLY * 1 / 1000; // 0.1% minimum
uint256 private constant MIN_MAX_WALLET = TOTAL_SUPPLY * 3 / 1000; // 0.3% minimum
// State variables
uint256 public maxBuyAmount;
uint256 public maxSellAmount;
uint256 public maxWalletAmount;
uint256 public swapTokensAtAmount;
IDexRouter public immutable uniswapV2Router;
address public immutable uniswapV2Pair;
bool private _swapping;
bool public limitsInEffect = true;
bool public tradingActive = false;
bool public swapEnabled = false;
uint256 public buyFee;
uint256 public sellFee;
uint256 public tokensForTreasury;
uint256 public tradingActiveBlock = 0;
uint256 public deadBlocks = 1;
address public treasuryAddress;
// Mappings
mapping(address => bool) private _isExcludedFromFees;
mapping(address => bool) public isExcludedMaxTransactionAmount;
mapping(address => bool) public automatedMarketMakerPairs;
// Events
event SetAutomatedMarketMakerPair(address indexed pair, bool indexed value);
event EnabledTrading(bool tradingActive, uint256 deadBlocks);
event RemovedLimits();
event ExcludeFromFees(address indexed account, bool isExcluded);
event UpdatedMaxBuyAmount(uint256 newAmount);
event UpdatedMaxSellAmount(uint256 newAmount);
event UpdatedMaxWalletAmount(uint256 newAmount);
event UpdatedTreasuryAddress(address indexed newWallet);
event MaxTransactionExclusion(address indexed account, bool excluded);
event SwapAndLiquify(uint256 tokensSwapped, uint256 ethReceived, uint256 tokensIntoLiquidity);
event TransferForeignToken(address indexed token, uint256 amount);
// Modifiers
modifier onlyTreasury() {
require(msg.sender == treasuryAddress, "Caller is not the treasury");
_;
}
modifier tradingNotActive() {
require(!tradingActive, "Trading is already active");
_;
}
constructor(
address _treasuryAddress,
address _devWallet
) ERC20("EVANA", "EVANA") Ownable(msg.sender) {
require(_treasuryAddress != address(0), "Treasury address cannot be zero");
require(_devWallet != address(0), "Dev wallet cannot be zero");
// Initialize router and pair
IDexRouter _uniswapV2Router = IDexRouter(0x10ED43C718714eb63d5aA57B78B54704E256024E);
uniswapV2Router = _uniswapV2Router;
uniswapV2Pair = IDexFactory(_uniswapV2Router.factory()).createPair(
address(this),
_uniswapV2Router.WETH()
);
// Set initial values
maxBuyAmount = TOTAL_SUPPLY * 10 / 1000; // 1% of total supply
maxSellAmount = TOTAL_SUPPLY * 10 / 1000; // 1% of total supply
maxWalletAmount = TOTAL_SUPPLY * 20 / 1000; // 2% of total supply
swapTokensAtAmount = TOTAL_SUPPLY * 50 / 100000; // 0.05% of total supply
buyFee = 4;
sellFee = 5;
treasuryAddress = _treasuryAddress;
// Set up exclusions
_setAutomatedMarketMakerPair(address(uniswapV2Pair), true);
_excludeFromMaxTransaction(address(_uniswapV2Router), true);
_excludeFromMaxTransaction(owner(), true);
_excludeFromMaxTransaction(address(this), true);
_excludeFromMaxTransaction(address(0xdead), true);
_excludeFromMaxTransaction(_devWallet, true);
_excludeFromFees(owner(), true);
_excludeFromFees(address(this), true);
_excludeFromFees(address(0xdead), true);
_excludeFromFees(treasuryAddress, true);
_excludeFromFees(_devWallet, true);
// Mint initial supply
_mint(owner(), TOTAL_SUPPLY);
}
receive() external payable {}
// External functions
function updateMaxBuyAmount(uint256 newAmount) external onlyOwner {
require(newAmount >= MIN_MAX_BUY / 1e18, "Cannot set max buy amount lower than 0.1%");
maxBuyAmount = newAmount * 1e18;
emit UpdatedMaxBuyAmount(maxBuyAmount);
}
function updateMaxSellAmount(uint256 newAmount) external onlyOwner {
require(newAmount >= MIN_MAX_SELL / 1e18, "Cannot set max sell amount lower than 0.1%");
maxSellAmount = newAmount * 1e18;
emit UpdatedMaxSellAmount(maxSellAmount);
}
function updateMaxWalletAmount(uint256 newAmount) external onlyOwner {
require(newAmount >= MIN_MAX_WALLET / 1e18, "Cannot set max wallet amount lower than 0.3%");
maxWalletAmount = newAmount * 1e18;
emit UpdatedMaxWalletAmount(maxWalletAmount);
}
function removeLimits() external onlyOwner {
limitsInEffect = false;
emit RemovedLimits();
}
function excludeFromMaxTransaction(address account, bool isExcluded) external onlyOwner {
if (!isExcluded) {
require(account != uniswapV2Pair, "Cannot remove uniswap pair from max txn");
}
_excludeFromMaxTransaction(account, isExcluded);
}
function updateSwapThreshold(uint256 newAmount) external onlyTreasury {
swapTokensAtAmount = newAmount * 1e18;
}
function updateBuyFee(uint256 newFee) external onlyOwner {
require(newFee <= MAX_FEE, "Fees must be 30% or less");
buyFee = newFee;
}
function updateSellFee(uint256 newFee) external onlyOwner {
require(newFee <= MAX_FEE, "Fees must be 30% or less");
sellFee = newFee;
}
function excludeFromFees(address account, bool excluded) external onlyOwner {
_isExcludedFromFees[account] = excluded;
emit ExcludeFromFees(account, excluded);
}
function setAutomatedMarketMakerPair(address pair, bool value) external onlyOwner {
require(pair != uniswapV2Pair, "The pair cannot be removed from automatedMarketMakerPairs");
_setAutomatedMarketMakerPair(pair, value);
}
function addLiquidity(uint256 tokenAmount, uint256 ethAmount) external onlyOwner {
_approve(address(this), address(uniswapV2Router), tokenAmount);
uniswapV2Router.addLiquidityETH{value: ethAmount}(
address(this),
tokenAmount,
0, // slippage is unavoidable
0, // slippage is unavoidable
owner(),
block.timestamp
);
}
function setTreasuryAddress(address newTreasuryAddress) external onlyOwner {
require(newTreasuryAddress != address(0), "Treasury address cannot be zero");
treasuryAddress = newTreasuryAddress;
emit UpdatedTreasuryAddress(newTreasuryAddress);
}
function transferForeignToken(address token, address to) external onlyTreasury returns (bool) {
require(token != address(0), "Token address cannot be zero");
require(to != address(0), "Recipient address cannot be zero");
uint256 contractBalance = IERC20(token).balanceOf(address(this));
bool success = IERC20(token).transfer(to, contractBalance);
emit TransferForeignToken(token, contractBalance);
return success;
}
function withdrawStuckETH() external onlyTreasury nonReentrant {
uint256 balance = address(this).balance;
require(balance > 0, "No ETH to withdraw");
(bool success, ) = payable(treasuryAddress).call{value: balance}("");
require(success, "ETH transfer failed");
}
function manualSwap() external onlyTreasury {
uint256 tokenBalance = balanceOf(address(this));
require(tokenBalance > 0, "No tokens to swap");
_swapping = true;
_swapBack();
_swapping = false;
}
function enableTrading(bool status, uint256 deadBlocks_) external onlyOwner tradingNotActive {
tradingActive = status;
swapEnabled = true;
deadBlocks = deadBlocks_;
if (tradingActive && tradingActiveBlock == 0) {
tradingActiveBlock = block.number;
}
emit EnabledTrading(tradingActive, deadBlocks_);
}
// Override the transfer function to add custom logic
function transfer(address to, uint256 amount) public virtual override returns (bool) {
_transferWithFees(_msgSender(), to, amount);
return true;
}
// Override the transferFrom function to add custom logic
function transferFrom(address from, address to, uint256 amount) public virtual override returns (bool) {
address spender = _msgSender();
_spendAllowance(from, spender, amount);
_transferWithFees(from, to, amount);
return true;
}
// Internal functions
function _transferWithFees(
address from,
address to,
uint256 amount
) internal {
require(from != address(0), "ERC20: transfer from the zero address");
require(to != address(0), "ERC20: transfer to the zero address");
require(amount > 0, "Amount must be greater than 0");
if (limitsInEffect) {
_enforceLimits(from, to, amount);
}
uint256 contractTokenBalance = balanceOf(address(this));
bool canSwap = contractTokenBalance >= swapTokensAtAmount;
if (canSwap && swapEnabled && !_swapping && !automatedMarketMakerPairs[from] &&
!_isExcludedFromFees[from] && !_isExcludedFromFees[to]) {
_swapping = true;
_swapBack();
_swapping = false;
}
bool takeFee = !_isExcludedFromFees[from] && !_isExcludedFromFees[to];
uint256 fees = 0;
if (takeFee && tradingActiveBlock > 0 && block.number > tradingActiveBlock) {
if (automatedMarketMakerPairs[to] && sellFee > 0) {
fees = (amount * sellFee) / 100;
tokensForTreasury += fees;
} else if (automatedMarketMakerPairs[from] && buyFee > 0) {
fees = (amount * buyFee) / 100;
tokensForTreasury += fees;
}
if (fees > 0) {
_transfer(from, address(this), fees);
amount -= fees;
}
}
_transfer(from, to, amount);
}
function _enforceLimits(address from, address to, uint256 amount) internal view {
if (from != owner() && to != owner() && to != address(0) && to != address(0xdead)) {
if (!tradingActive) {
require(
isExcludedMaxTransactionAmount[from] || isExcludedMaxTransactionAmount[to],
"Trading is not active"
);
require(from == owner(), "Trading is not enabled");
}
// Buy limits
if (automatedMarketMakerPairs[from] && !isExcludedMaxTransactionAmount[to]) {
require(amount <= maxBuyAmount, "Buy transfer amount exceeds the max buy");
require(amount + balanceOf(to) <= maxWalletAmount, "Cannot exceed max wallet");
}
// Sell limits
else if (automatedMarketMakerPairs[to] && !isExcludedMaxTransactionAmount[from]) {
require(amount <= maxSellAmount, "Sell transfer amount exceeds the max sell");
}
// Wallet limits
else if (!isExcludedMaxTransactionAmount[to] && !isExcludedMaxTransactionAmount[from]) {
require(amount + balanceOf(to) <= maxWalletAmount, "Cannot exceed max wallet");
}
}
}
function _swapBack() private {
uint256 contractBalance = balanceOf(address(this));
uint256 totalTokensToSwap = tokensForTreasury;
if (contractBalance == 0 || totalTokensToSwap == 0) return;
if (contractBalance > swapTokensAtAmount * 5) {
contractBalance = swapTokensAtAmount * 5;
}
_swapTokensForEth(contractBalance);
tokensForTreasury = 0;
uint256 ethBalance = address(this).balance;
if (ethBalance > 0) {
(bool success, ) = payable(treasuryAddress).call{value: ethBalance}("");
require(success, "ETH transfer to treasury failed");
}
}
function _swapTokensForEth(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, // accept any amount of ETH
path,
address(this),
block.timestamp
);
}
function _setAutomatedMarketMakerPair(address pair, bool value) private {
automatedMarketMakerPairs[pair] = value;
_excludeFromMaxTransaction(pair, value);
emit SetAutomatedMarketMakerPair(pair, value);
}
function _excludeFromMaxTransaction(address account, bool isExcluded) private {
isExcludedMaxTransactionAmount[account] = isExcluded;
emit MaxTransactionExclusion(account, isExcluded);
}
function _excludeFromFees(address account, bool excluded) private {
_isExcludedFromFees[account] = excluded;
emit ExcludeFromFees(account, excluded);
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"_treasuryAddress","type":"address"},{"internalType":"address","name":"_devWallet","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"tradingActive","type":"bool"},{"indexed":false,"internalType":"uint256","name":"deadBlocks","type":"uint256"}],"name":"EnabledTrading","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"isExcluded","type":"bool"}],"name":"ExcludeFromFees","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"excluded","type":"bool"}],"name":"MaxTransactionExclusion","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":[],"name":"RemovedLimits","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"pair","type":"address"},{"indexed":true,"internalType":"bool","name":"value","type":"bool"}],"name":"SetAutomatedMarketMakerPair","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiquidity","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TransferForeignToken","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newAmount","type":"uint256"}],"name":"UpdatedMaxBuyAmount","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newAmount","type":"uint256"}],"name":"UpdatedMaxSellAmount","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newAmount","type":"uint256"}],"name":"UpdatedMaxWalletAmount","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newWallet","type":"address"}],"name":"UpdatedTreasuryAddress","type":"event"},{"inputs":[{"internalType":"uint256","name":"tokenAmount","type":"uint256"},{"internalType":"uint256","name":"ethAmount","type":"uint256"}],"name":"addLiquidity","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"automatedMarketMakerPairs","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"deadBlocks","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"status","type":"bool"},{"internalType":"uint256","name":"deadBlocks_","type":"uint256"}],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"isExcluded","type":"bool"}],"name":"excludeFromMaxTransaction","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isExcludedMaxTransactionAmount","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"limitsInEffect","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxBuyAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxSellAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"pair","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setAutomatedMarketMakerPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newTreasuryAddress","type":"address"}],"name":"setTreasuryAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokensForTreasury","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingActive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingActiveBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"to","type":"address"}],"name":"transferForeignToken","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"treasuryAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IDexRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newFee","type":"uint256"}],"name":"updateBuyFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newAmount","type":"uint256"}],"name":"updateMaxBuyAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newAmount","type":"uint256"}],"name":"updateMaxSellAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newAmount","type":"uint256"}],"name":"updateMaxWalletAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newFee","type":"uint256"}],"name":"updateSellFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newAmount","type":"uint256"}],"name":"updateSwapThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawStuckETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
60c06040526001600b60016101000a81548160ff0219169083151502179055505f600b60026101000a81548160ff0219169083151502179055505f600b60036101000a81548160ff0219169083151502179055505f600f55600160105534801562000068575f80fd5b5060405162005fb338038062005fb383398181016040528101906200008e919062000af1565b336040518060400160405280600581526020017f4556414e410000000000000000000000000000000000000000000000000000008152506040518060400160405280600581526020017f4556414e4100000000000000000000000000000000000000000000000000000081525081600390816200010c919062000d9a565b5080600490816200011e919062000d9a565b50505062000132816200065760201b60201c565b5060016006819055505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620001ac576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620001a39062000edc565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036200021d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002149062000f4a565b60405180910390fd5b5f7310ed43c718714eb63d5aa57b78b54704e256024e90508073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002b3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620002d9919062000f6a565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200033f573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019062000365919062000f6a565b6040518363ffffffff1660e01b81526004016200038492919062000fab565b6020604051808303815f875af1158015620003a1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620003c7919062000f6a565b73ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff16815250506103e8600a6b204fce5e3e2502611000000062000418919062001003565b6200042491906200107a565b6007819055506103e8600a6b204fce5e3e2502611000000062000448919062001003565b6200045491906200107a565b6008819055506103e860146b204fce5e3e2502611000000062000478919062001003565b6200048491906200107a565b600981905550620186a060326b204fce5e3e25026110000000620004a9919062001003565b620004b591906200107a565b600a819055506004600c819055506005600d819055508260115f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506200052060a05160016200071a60201b60201c565b62000533816001620007ca60201b60201c565b62000555620005476200087260201b60201c565b6001620007ca60201b60201c565b62000568306001620007ca60201b60201c565b6200057d61dead6001620007ca60201b60201c565b62000590826001620007ca60201b60201c565b620005b2620005a46200087260201b60201c565b60016200089a60201b60201c565b620005c53060016200089a60201b60201c565b620005da61dead60016200089a60201b60201c565b6200060e60115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660016200089a60201b60201c565b620006218260016200089a60201b60201c565b6200064e620006356200087260201b60201c565b6b204fce5e3e250261100000006200094260201b60201c565b505050620011bc565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8060145f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550620007808282620007ca60201b60201c565b8015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b8060135f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f6b4f1be9103e6cbcd38ca4a922334f2c3109b260130a6676a987f94088fd674682604051620008669190620010cd565b60405180910390a25050565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b8060125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df782604051620009369190620010cd565b60405180910390a25050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620009b3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620009aa9062001136565b60405180910390fd5b8060025f828254620009c6919062001156565b92505081905550805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825462000a1a919062001156565b925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000a809190620011a1565b60405180910390a35050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f62000abb8262000a90565b9050919050565b62000acd8162000aaf565b811462000ad8575f80fd5b50565b5f8151905062000aeb8162000ac2565b92915050565b5f806040838503121562000b0a5762000b0962000a8c565b5b5f62000b198582860162000adb565b925050602062000b2c8582860162000adb565b9150509250929050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168062000bb257607f821691505b60208210810362000bc85762000bc762000b6d565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830262000c2c7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000bef565b62000c38868362000bef565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f62000c8262000c7c62000c768462000c50565b62000c59565b62000c50565b9050919050565b5f819050919050565b62000c9d8362000c62565b62000cb562000cac8262000c89565b84845462000bfb565b825550505050565b5f90565b62000ccb62000cbd565b62000cd881848462000c92565b505050565b5b8181101562000cff5762000cf35f8262000cc1565b60018101905062000cde565b5050565b601f82111562000d4e5762000d188162000bce565b62000d238462000be0565b8101602085101562000d33578190505b62000d4b62000d428562000be0565b83018262000cdd565b50505b505050565b5f82821c905092915050565b5f62000d705f198460080262000d53565b1980831691505092915050565b5f62000d8a838362000d5f565b9150826002028217905092915050565b62000da58262000b36565b67ffffffffffffffff81111562000dc15762000dc062000b40565b5b62000dcd825462000b9a565b62000dda82828562000d03565b5f60209050601f83116001811462000e10575f841562000dfb578287015190505b62000e07858262000d7d565b86555062000e76565b601f19841662000e208662000bce565b5f5b8281101562000e495784890151825560018201915060208501945060208101905062000e22565b8683101562000e69578489015162000e65601f89168262000d5f565b8355505b6001600288020188555050505b505050505050565b5f82825260208201905092915050565b7f547265617375727920616464726573732063616e6e6f74206265207a65726f005f82015250565b5f62000ec4601f8362000e7e565b915062000ed18262000e8e565b602082019050919050565b5f6020820190508181035f83015262000ef58162000eb6565b9050919050565b7f4465762077616c6c65742063616e6e6f74206265207a65726f000000000000005f82015250565b5f62000f3260198362000e7e565b915062000f3f8262000efc565b602082019050919050565b5f6020820190508181035f83015262000f638162000f24565b9050919050565b5f6020828403121562000f825762000f8162000a8c565b5b5f62000f918482850162000adb565b91505092915050565b62000fa58162000aaf565b82525050565b5f60408201905062000fc05f83018562000f9a565b62000fcf602083018462000f9a565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6200100f8262000c50565b91506200101c8362000c50565b92508282026200102c8162000c50565b9150828204841483151762001046576200104562000fd6565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f620010868262000c50565b9150620010938362000c50565b925082620010a657620010a56200104d565b5b828204905092915050565b5f8115159050919050565b620010c781620010b1565b82525050565b5f602082019050620010e25f830184620010bc565b92915050565b7f45524332303a206d696e7420746f20746865207a65726f2061646472657373005f82015250565b5f6200111e601f8362000e7e565b91506200112b82620010e8565b602082019050919050565b5f6020820190508181035f8301526200114f8162001110565b9050919050565b5f620011628262000c50565b91506200116f8362000c50565b92508282019050808211156200118a576200118962000fd6565b5b92915050565b6200119b8162000c50565b82525050565b5f602082019050620011b65f83018462001190565b92915050565b60805160a051614da46200120f5f395f8181610de001528181611223015261164401525f8181610b45015281816116ec0152818161171301528181613307015281816133e6015261340d0152614da45ff3fe60806040526004361061028b575f3560e01c80637571336a11610159578063c0246668116100c0578063dd62ed3e11610079578063dd62ed3e1461099e578063e2f45605146109da578063ee40166e14610a04578063f2fde38b14610a2e578063f5648a4f14610a56578063fabb0b4f14610a6c57610292565b8063c0246668146108aa578063c18bc195146108d2578063c5f956af146108fa578063cc274b2914610924578063cc2ffe7c1461094c578063dc3f0d0f1461097657610292565b80639cd441da116101125780639cd441da1461077a578063a457c2d7146107a2578063a9059cbb146107de578063aa4bde281461081a578063b62496f514610844578063bbc0c7421461088057610292565b80637571336a146106705780638366e79a1461069857806388e765ff146106d45780638da5cb5b146106fe57806395d89b41146107285780639a7a23d61461075257610292565b806347062402116101fd5780636605bfda116101b65780636605bfda1461058c57806366d602ae146105b45780636ddd1713146105de57806370a0823114610608578063715018a614610644578063751039fc1461065a57610292565b8063470624021461049457806349bd5a5e146104be5780634a62bb65146104e85780634bb2c7851461051257806351bc3c851461054e5780635e83ae761461056457610292565b806323b872dd1161024f57806323b872dd146103785780632b14ca56146103b45780632be32b61146103de578063313ce567146104065780633950935114610430578063467abe0a1461046c57610292565b806306fdde0314610296578063095ea7b3146102c05780631694505e146102fc57806318160ddd146103265780631d933a4a1461035057610292565b3661029257005b5f80fd5b3480156102a1575f80fd5b506102aa610a96565b6040516102b79190613527565b60405180910390f35b3480156102cb575f80fd5b506102e660048036038101906102e191906135d8565b610b26565b6040516102f39190613630565b60405180910390f35b348015610307575f80fd5b50610310610b43565b60405161031d91906136a4565b60405180910390f35b348015610331575f80fd5b5061033a610b67565b60405161034791906136cc565b60405180910390f35b34801561035b575f80fd5b50610376600480360381019061037191906136e5565b610b70565b005b348015610383575f80fd5b5061039e60048036038101906103999190613710565b610bc6565b6040516103ab9190613630565b60405180910390f35b3480156103bf575f80fd5b506103c8610bf4565b6040516103d591906136cc565b60405180910390f35b3480156103e9575f80fd5b5061040460048036038101906103ff91906136e5565b610bfa565b005b348015610411575f80fd5b5061041a610cd3565b604051610427919061377b565b60405180910390f35b34801561043b575f80fd5b50610456600480360381019061045191906135d8565b610cdb565b6040516104639190613630565b60405180910390f35b348015610477575f80fd5b50610492600480360381019061048d91906136e5565b610d82565b005b34801561049f575f80fd5b506104a8610dd8565b6040516104b591906136cc565b60405180910390f35b3480156104c9575f80fd5b506104d2610dde565b6040516104df91906137a3565b60405180910390f35b3480156104f3575f80fd5b506104fc610e02565b6040516105099190613630565b60405180910390f35b34801561051d575f80fd5b50610538600480360381019061053391906137bc565b610e15565b6040516105459190613630565b60405180910390f35b348015610559575f80fd5b50610562610e32565b005b34801561056f575f80fd5b5061058a60048036038101906105859190613811565b610f4d565b005b348015610597575f80fd5b506105b260048036038101906105ad91906137bc565b611057565b005b3480156105bf575f80fd5b506105c8611153565b6040516105d591906136cc565b60405180910390f35b3480156105e9575f80fd5b506105f2611159565b6040516105ff9190613630565b60405180910390f35b348015610613575f80fd5b5061062e600480360381019061062991906137bc565b61116c565b60405161063b91906136cc565b60405180910390f35b34801561064f575f80fd5b506106586111b1565b005b348015610665575f80fd5b5061066e6111c4565b005b34801561067b575f80fd5b506106966004803603810190610691919061384f565b611214565b005b3480156106a3575f80fd5b506106be60048036038101906106b9919061388d565b6112be565b6040516106cb9190613630565b60405180910390f35b3480156106df575f80fd5b506106e861157c565b6040516106f591906136cc565b60405180910390f35b348015610709575f80fd5b50610712611582565b60405161071f91906137a3565b60405180910390f35b348015610733575f80fd5b5061073c6115aa565b6040516107499190613527565b60405180910390f35b34801561075d575f80fd5b506107786004803603810190610773919061384f565b61163a565b005b348015610785575f80fd5b506107a0600480360381019061079b91906138cb565b6116de565b005b3480156107ad575f80fd5b506107c860048036038101906107c391906135d8565b6117c4565b6040516107d59190613630565b60405180910390f35b3480156107e9575f80fd5b5061080460048036038101906107ff91906135d8565b6118aa565b6040516108119190613630565b60405180910390f35b348015610825575f80fd5b5061082e6118c7565b60405161083b91906136cc565b60405180910390f35b34801561084f575f80fd5b5061086a600480360381019061086591906137bc565b6118cd565b6040516108779190613630565b60405180910390f35b34801561088b575f80fd5b506108946118ea565b6040516108a19190613630565b60405180910390f35b3480156108b5575f80fd5b506108d060048036038101906108cb919061384f565b6118fd565b005b3480156108dd575f80fd5b506108f860048036038101906108f391906136e5565b6119ab565b005b348015610905575f80fd5b5061090e611a84565b60405161091b91906137a3565b60405180910390f35b34801561092f575f80fd5b5061094a600480360381019061094591906136e5565b611aa9565b005b348015610957575f80fd5b50610960611b55565b60405161096d91906136cc565b60405180910390f35b348015610981575f80fd5b5061099c600480360381019061099791906136e5565b611b5b565b005b3480156109a9575f80fd5b506109c460048036038101906109bf919061388d565b611c34565b6040516109d191906136cc565b60405180910390f35b3480156109e5575f80fd5b506109ee611cb6565b6040516109fb91906136cc565b60405180910390f35b348015610a0f575f80fd5b50610a18611cbc565b604051610a2591906136cc565b60405180910390f35b348015610a39575f80fd5b50610a546004803603810190610a4f91906137bc565b611cc2565b005b348015610a61575f80fd5b50610a6a611d44565b005b348015610a77575f80fd5b50610a80611f3b565b604051610a8d91906136cc565b60405180910390f35b606060038054610aa590613936565b80601f0160208091040260200160405190810160405280929190818152602001828054610ad190613936565b8015610b1c5780601f10610af357610100808354040283529160200191610b1c565b820191905f5260205f20905b815481529060010190602001808311610aff57829003601f168201915b5050505050905090565b5f610b39610b32611f41565b8484611f48565b6001905092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b5f600254905090565b610b7861210b565b601e811115610bbc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bb3906139b0565b60405180910390fd5b80600d8190555050565b5f80610bd0611f41565b9050610bdd858285612189565b610be8858585612214565b60019150509392505050565b600d5481565b610c0261210b565b670de0b6b3a76400006103e860016b204fce5e3e25026110000000610c2791906139fb565b610c319190613a69565b610c3b9190613a69565b811015610c7d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7490613b09565b60405180910390fd5b670de0b6b3a764000081610c9191906139fb565b6007819055507ffcc0366804aaa8dbf88a2924100c733b70dec8445957a5d5f8ff92898de41009600754604051610cc891906136cc565b60405180910390a150565b5f6012905090565b5f610d78610ce7611f41565b848460015f610cf4611f41565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610d739190613b27565b611f48565b6001905092915050565b610d8a61210b565b601e811115610dce576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dc5906139b0565b60405180910390fd5b80600c8190555050565b600c5481565b7f000000000000000000000000000000000000000000000000000000000000000081565b600b60019054906101000a900460ff1681565b6013602052805f5260405f205f915054906101000a900460ff1681565b60115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610ec1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eb890613ba4565b60405180910390fd5b5f610ecb3061116c565b90505f8111610f0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f0690613c0c565b60405180910390fd5b6001600b5f6101000a81548160ff021916908315150217905550610f316126f3565b5f600b5f6101000a81548160ff02191690831515021790555050565b610f5561210b565b600b60029054906101000a900460ff1615610fa5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9c90613c74565b60405180910390fd5b81600b60026101000a81548160ff0219169083151502179055506001600b60036101000a81548160ff02191690831515021790555080601081905550600b60029054906101000a900460ff168015610ffe57505f600f54145b1561100b5743600f819055505b7fe185248899f361d51a48833938ab33493ebd7272d195abf7f51a833ea8138812600b60029054906101000a900460ff168260405161104b929190613c92565b60405180910390a15050565b61105f61210b565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036110cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110c490613d03565b60405180910390fd5b8060115f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff167f2e1e696cfb265fa16e1170d24ef04cb2262772bde00ecf34d80bae6722487b7f60405160405180910390a250565b60085481565b600b60039054906101000a900460ff1681565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6111b961210b565b6111c25f612833565b565b6111cc61210b565b5f600b60016101000a81548160ff0219169083151502179055507fa4ffae85e880608d5d4365c2b682786545d136145537788e7e0940dff9f0b98c60405160405180910390a1565b61121c61210b565b806112b0577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036112af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112a690613d91565b60405180910390fd5b5b6112ba82826128f6565b5050565b5f60115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461134e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134590613ba4565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036113bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113b390613df9565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361142a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142190613e61565b60405180910390fd5b5f8373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b815260040161146491906137a3565b602060405180830381865afa15801561147f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114a39190613e93565b90505f8473ffffffffffffffffffffffffffffffffffffffff1663a9059cbb85846040518363ffffffff1660e01b81526004016114e1929190613ebe565b6020604051808303815f875af11580156114fd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115219190613ef9565b90508473ffffffffffffffffffffffffffffffffffffffff167fdeda980967fcead7b61e78ac46a4da14274af29e894d4d61e8b81ec38ab3e4388360405161156991906136cc565b60405180910390a2809250505092915050565b60075481565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600480546115b990613936565b80601f01602080910402602001604051908101604052809291908181526020018280546115e590613936565b80156116305780601f1061160757610100808354040283529160200191611630565b820191905f5260205f20905b81548152906001019060200180831161161357829003601f168201915b5050505050905090565b61164261210b565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036116d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116c790613f94565b60405180910390fd5b6116da828261299c565b5050565b6116e661210b565b611711307f000000000000000000000000000000000000000000000000000000000000000084611f48565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f305d7198230855f8061175a611582565b426040518863ffffffff1660e01b815260040161177c96959493929190613feb565b60606040518083038185885af1158015611798573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906117bd919061404a565b5050505050565b5f8060015f6117d1611f41565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508281101561188b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118829061410a565b60405180910390fd5b61189f611896611f41565b85858403611f48565b600191505092915050565b5f6118bd6118b6611f41565b8484612214565b6001905092915050565b60095481565b6014602052805f5260405f205f915054906101000a900460ff1681565b600b60029054906101000a900460ff1681565b61190561210b565b8060125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df78260405161199f9190613630565b60405180910390a25050565b6119b361210b565b670de0b6b3a76400006103e860036b204fce5e3e250261100000006119d891906139fb565b6119e29190613a69565b6119ec9190613a69565b811015611a2e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a2590614198565b60405180910390fd5b670de0b6b3a764000081611a4291906139fb565b6009819055507fefc9add9a9b7382de284ef5ad69d8ea863e2680492b21a81948c2d5f04a442bc600954604051611a7991906136cc565b60405180910390a150565b60115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611b38576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b2f90613ba4565b60405180910390fd5b670de0b6b3a764000081611b4c91906139fb565b600a8190555050565b600e5481565b611b6361210b565b670de0b6b3a76400006103e860016b204fce5e3e25026110000000611b8891906139fb565b611b929190613a69565b611b9c9190613a69565b811015611bde576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bd590614226565b60405180910390fd5b670de0b6b3a764000081611bf291906139fb565b6008819055507f53c4eb831d8cfeb750f1c62590d8cd30f4c6f0380d29a05caa09f0d92588560e600854604051611c2991906136cc565b60405180910390a150565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b600a5481565b600f5481565b611cca61210b565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611d38576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d2f906142b4565b60405180910390fd5b611d4181612833565b50565b60115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611dd3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dca90613ba4565b60405180910390fd5b600260065403611e18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e0f9061431c565b60405180910390fd5b60026006819055505f4790505f8111611e66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e5d90614384565b60405180910390fd5b5f60115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682604051611eac906143cf565b5f6040518083038185875af1925050503d805f8114611ee6576040519150601f19603f3d011682016040523d82523d5f602084013e611eeb565b606091505b5050905080611f2f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f269061442d565b60405180910390fd5b50506001600681905550565b60105481565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611fb6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fad906144bb565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612024576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161201b90614549565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516120fe91906136cc565b60405180910390a3505050565b612113611f41565b73ffffffffffffffffffffffffffffffffffffffff16612131611582565b73ffffffffffffffffffffffffffffffffffffffff1614612187576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161217e906145b1565b60405180910390fd5b565b5f6121948484611c34565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461220e5781811015612200576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121f790614619565b60405180910390fd5b61220d8484848403611f48565b5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612282576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612279906146a7565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036122f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122e790614735565b60405180910390fd5b5f8111612332576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123299061479d565b60405180910390fd5b600b60019054906101000a900460ff161561235357612352838383612a44565b5b5f61235d3061116c565b90505f600a5482101590508080156123815750600b60039054906101000a900460ff165b80156123995750600b5f9054906101000a900460ff16155b80156123ec575060145f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b801561243f575060125f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015612492575060125f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b156124d3576001600b5f6101000a81548160ff0219169083151502179055506124b96126f3565b5f600b5f6101000a81548160ff0219169083151502179055505b5f60125f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015612572575060125f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b90505f81801561258357505f600f54115b80156125905750600f5443115b156126df5760145f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680156125ec57505f600d54115b1561262a576064600d548661260191906139fb565b61260b9190613a69565b905080600e5f82825461261e9190613b27565b925050819055506126bc565b60145f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16801561268157505f600c54115b156126bb576064600c548661269691906139fb565b6126a09190613a69565b905080600e5f8282546126b39190613b27565b925050819055505b5b5f8111156126de576126cf873083612fc9565b80856126db91906147bb565b94505b5b6126ea878787612fc9565b50505050505050565b5f6126fd3061116c565b90505f600e5490505f82148061271257505f81145b1561271e575050612831565b6005600a5461272d91906139fb565b821115612746576005600a5461274391906139fb565b91505b61274f8261326a565b5f600e819055505f4790505f81111561282d575f60115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16826040516127a8906143cf565b5f6040518083038185875af1925050503d805f81146127e2576040519150601f19603f3d011682016040523d82523d5f602084013e6127e7565b606091505b505090508061282b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161282290614838565b60405180910390fd5b505b5050505b565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8060135f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f6b4f1be9103e6cbcd38ca4a922334f2c3109b260130a6676a987f94088fd6746826040516129909190613630565b60405180910390a25050565b8060145f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506129fa82826128f6565b8015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b612a4c611582565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015612aba5750612a8a611582565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612af257505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612b2c575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15612fc457600b60029054906101000a900460ff16612c955760135f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680612be0575060135f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b612c1f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c16906148a0565b60405180910390fd5b612c27611582565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614612c94576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c8b90614908565b60405180910390fd5b5b60145f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168015612d32575060135f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15612dd957600754811115612d7c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d7390614996565b60405180910390fd5b600954612d888361116c565b82612d939190613b27565b1115612dd4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612dcb906149fe565b60405180910390fd5b612fc3565b60145f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168015612e76575060135f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15612ec557600854811115612ec0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612eb790614a8c565b60405180910390fd5b612fc2565b60135f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015612f63575060135f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15612fc157600954612f748361116c565b82612f7f9190613b27565b1115612fc0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612fb7906149fe565b60405180910390fd5b5b5b5b5b505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603613037576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161302e906146a7565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036130a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161309c90614735565b60405180910390fd5b5f81116130e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130de90614b1a565b60405180910390fd5b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508181101561316a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161316190614ba8565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550815f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546131f89190613b27565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161325c91906136cc565b60405180910390a350505050565b5f600267ffffffffffffffff81111561328657613285614bc6565b5b6040519080825280602002602001820160405280156132b45781602001602082028036833780820191505090505b50905030815f815181106132cb576132ca614bf3565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561336e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906133929190614c34565b816001815181106133a6576133a5614bf3565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061340b307f000000000000000000000000000000000000000000000000000000000000000084611f48565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b815260040161346c959493929190614d16565b5f604051808303815f87803b158015613483575f80fd5b505af1158015613495573d5f803e3d5ffd5b505050505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156134d45780820151818401526020810190506134b9565b5f8484015250505050565b5f601f19601f8301169050919050565b5f6134f98261349d565b61350381856134a7565b93506135138185602086016134b7565b61351c816134df565b840191505092915050565b5f6020820190508181035f83015261353f81846134ef565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6135748261354b565b9050919050565b6135848161356a565b811461358e575f80fd5b50565b5f8135905061359f8161357b565b92915050565b5f819050919050565b6135b7816135a5565b81146135c1575f80fd5b50565b5f813590506135d2816135ae565b92915050565b5f80604083850312156135ee576135ed613547565b5b5f6135fb85828601613591565b925050602061360c858286016135c4565b9150509250929050565b5f8115159050919050565b61362a81613616565b82525050565b5f6020820190506136435f830184613621565b92915050565b5f819050919050565b5f61366c6136676136628461354b565b613649565b61354b565b9050919050565b5f61367d82613652565b9050919050565b5f61368e82613673565b9050919050565b61369e81613684565b82525050565b5f6020820190506136b75f830184613695565b92915050565b6136c6816135a5565b82525050565b5f6020820190506136df5f8301846136bd565b92915050565b5f602082840312156136fa576136f9613547565b5b5f613707848285016135c4565b91505092915050565b5f805f6060848603121561372757613726613547565b5b5f61373486828701613591565b935050602061374586828701613591565b9250506040613756868287016135c4565b9150509250925092565b5f60ff82169050919050565b61377581613760565b82525050565b5f60208201905061378e5f83018461376c565b92915050565b61379d8161356a565b82525050565b5f6020820190506137b65f830184613794565b92915050565b5f602082840312156137d1576137d0613547565b5b5f6137de84828501613591565b91505092915050565b6137f081613616565b81146137fa575f80fd5b50565b5f8135905061380b816137e7565b92915050565b5f806040838503121561382757613826613547565b5b5f613834858286016137fd565b9250506020613845858286016135c4565b9150509250929050565b5f806040838503121561386557613864613547565b5b5f61387285828601613591565b9250506020613883858286016137fd565b9150509250929050565b5f80604083850312156138a3576138a2613547565b5b5f6138b085828601613591565b92505060206138c185828601613591565b9150509250929050565b5f80604083850312156138e1576138e0613547565b5b5f6138ee858286016135c4565b92505060206138ff858286016135c4565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061394d57607f821691505b6020821081036139605761395f613909565b5b50919050565b7f46656573206d75737420626520333025206f72206c65737300000000000000005f82015250565b5f61399a6018836134a7565b91506139a582613966565b602082019050919050565b5f6020820190508181035f8301526139c78161398e565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f613a05826135a5565b9150613a10836135a5565b9250828202613a1e816135a5565b91508282048414831517613a3557613a346139ce565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f613a73826135a5565b9150613a7e836135a5565b925082613a8e57613a8d613a3c565b5b828204905092915050565b7f43616e6e6f7420736574206d61782062757920616d6f756e74206c6f776572205f8201527f7468616e20302e31250000000000000000000000000000000000000000000000602082015250565b5f613af36029836134a7565b9150613afe82613a99565b604082019050919050565b5f6020820190508181035f830152613b2081613ae7565b9050919050565b5f613b31826135a5565b9150613b3c836135a5565b9250828201905080821115613b5457613b536139ce565b5b92915050565b7f43616c6c6572206973206e6f74207468652074726561737572790000000000005f82015250565b5f613b8e601a836134a7565b9150613b9982613b5a565b602082019050919050565b5f6020820190508181035f830152613bbb81613b82565b9050919050565b7f4e6f20746f6b656e7320746f20737761700000000000000000000000000000005f82015250565b5f613bf66011836134a7565b9150613c0182613bc2565b602082019050919050565b5f6020820190508181035f830152613c2381613bea565b9050919050565b7f54726164696e6720697320616c726561647920616374697665000000000000005f82015250565b5f613c5e6019836134a7565b9150613c6982613c2a565b602082019050919050565b5f6020820190508181035f830152613c8b81613c52565b9050919050565b5f604082019050613ca55f830185613621565b613cb260208301846136bd565b9392505050565b7f547265617375727920616464726573732063616e6e6f74206265207a65726f005f82015250565b5f613ced601f836134a7565b9150613cf882613cb9565b602082019050919050565b5f6020820190508181035f830152613d1a81613ce1565b9050919050565b7f43616e6e6f742072656d6f766520756e697377617020706169722066726f6d205f8201527f6d61782074786e00000000000000000000000000000000000000000000000000602082015250565b5f613d7b6027836134a7565b9150613d8682613d21565b604082019050919050565b5f6020820190508181035f830152613da881613d6f565b9050919050565b7f546f6b656e20616464726573732063616e6e6f74206265207a65726f000000005f82015250565b5f613de3601c836134a7565b9150613dee82613daf565b602082019050919050565b5f6020820190508181035f830152613e1081613dd7565b9050919050565b7f526563697069656e7420616464726573732063616e6e6f74206265207a65726f5f82015250565b5f613e4b6020836134a7565b9150613e5682613e17565b602082019050919050565b5f6020820190508181035f830152613e7881613e3f565b9050919050565b5f81519050613e8d816135ae565b92915050565b5f60208284031215613ea857613ea7613547565b5b5f613eb584828501613e7f565b91505092915050565b5f604082019050613ed15f830185613794565b613ede60208301846136bd565b9392505050565b5f81519050613ef3816137e7565b92915050565b5f60208284031215613f0e57613f0d613547565b5b5f613f1b84828501613ee5565b91505092915050565b7f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d205f8201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000602082015250565b5f613f7e6039836134a7565b9150613f8982613f24565b604082019050919050565b5f6020820190508181035f830152613fab81613f72565b9050919050565b5f819050919050565b5f613fd5613fd0613fcb84613fb2565b613649565b6135a5565b9050919050565b613fe581613fbb565b82525050565b5f60c082019050613ffe5f830189613794565b61400b60208301886136bd565b6140186040830187613fdc565b6140256060830186613fdc565b6140326080830185613794565b61403f60a08301846136bd565b979650505050505050565b5f805f6060848603121561406157614060613547565b5b5f61406e86828701613e7f565b935050602061407f86828701613e7f565b925050604061409086828701613e7f565b9150509250925092565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f6140f46025836134a7565b91506140ff8261409a565b604082019050919050565b5f6020820190508181035f830152614121816140e8565b9050919050565b7f43616e6e6f7420736574206d61782077616c6c657420616d6f756e74206c6f775f8201527f6572207468616e20302e33250000000000000000000000000000000000000000602082015250565b5f614182602c836134a7565b915061418d82614128565b604082019050919050565b5f6020820190508181035f8301526141af81614176565b9050919050565b7f43616e6e6f7420736574206d61782073656c6c20616d6f756e74206c6f7765725f8201527f207468616e20302e312500000000000000000000000000000000000000000000602082015250565b5f614210602a836134a7565b915061421b826141b6565b604082019050919050565b5f6020820190508181035f83015261423d81614204565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f61429e6026836134a7565b91506142a982614244565b604082019050919050565b5f6020820190508181035f8301526142cb81614292565b9050919050565b7f5265656e7472616e637947756172643a207265656e7472616e742063616c6c005f82015250565b5f614306601f836134a7565b9150614311826142d2565b602082019050919050565b5f6020820190508181035f830152614333816142fa565b9050919050565b7f4e6f2045544820746f20776974686472617700000000000000000000000000005f82015250565b5f61436e6012836134a7565b91506143798261433a565b602082019050919050565b5f6020820190508181035f83015261439b81614362565b9050919050565b5f81905092915050565b50565b5f6143ba5f836143a2565b91506143c5826143ac565b5f82019050919050565b5f6143d9826143af565b9150819050919050565b7f455448207472616e73666572206661696c6564000000000000000000000000005f82015250565b5f6144176013836134a7565b9150614422826143e3565b602082019050919050565b5f6020820190508181035f8301526144448161440b565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6144a56024836134a7565b91506144b08261444b565b604082019050919050565b5f6020820190508181035f8301526144d281614499565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f6145336022836134a7565b915061453e826144d9565b604082019050919050565b5f6020820190508181035f83015261456081614527565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f61459b6020836134a7565b91506145a682614567565b602082019050919050565b5f6020820190508181035f8301526145c88161458f565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000005f82015250565b5f614603601d836134a7565b915061460e826145cf565b602082019050919050565b5f6020820190508181035f830152614630816145f7565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6146916025836134a7565b915061469c82614637565b604082019050919050565b5f6020820190508181035f8301526146be81614685565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f61471f6023836134a7565b915061472a826146c5565b604082019050919050565b5f6020820190508181035f83015261474c81614713565b9050919050565b7f416d6f756e74206d7573742062652067726561746572207468616e20300000005f82015250565b5f614787601d836134a7565b915061479282614753565b602082019050919050565b5f6020820190508181035f8301526147b48161477b565b9050919050565b5f6147c5826135a5565b91506147d0836135a5565b92508282039050818111156147e8576147e76139ce565b5b92915050565b7f455448207472616e7366657220746f207472656173757279206661696c6564005f82015250565b5f614822601f836134a7565b915061482d826147ee565b602082019050919050565b5f6020820190508181035f83015261484f81614816565b9050919050565b7f54726164696e67206973206e6f742061637469766500000000000000000000005f82015250565b5f61488a6015836134a7565b915061489582614856565b602082019050919050565b5f6020820190508181035f8301526148b78161487e565b9050919050565b7f54726164696e67206973206e6f7420656e61626c6564000000000000000000005f82015250565b5f6148f26016836134a7565b91506148fd826148be565b602082019050919050565b5f6020820190508181035f83015261491f816148e6565b9050919050565b7f427579207472616e7366657220616d6f756e74206578636565647320746865205f8201527f6d61782062757900000000000000000000000000000000000000000000000000602082015250565b5f6149806027836134a7565b915061498b82614926565b604082019050919050565b5f6020820190508181035f8301526149ad81614974565b9050919050565b7f43616e6e6f7420657863656564206d61782077616c6c657400000000000000005f82015250565b5f6149e86018836134a7565b91506149f3826149b4565b602082019050919050565b5f6020820190508181035f830152614a15816149dc565b9050919050565b7f53656c6c207472616e7366657220616d6f756e742065786365656473207468655f8201527f206d61782073656c6c0000000000000000000000000000000000000000000000602082015250565b5f614a766029836134a7565b9150614a8182614a1c565b604082019050919050565b5f6020820190508181035f830152614aa381614a6a565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f614b046029836134a7565b9150614b0f82614aaa565b604082019050919050565b5f6020820190508181035f830152614b3181614af8565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f614b926026836134a7565b9150614b9d82614b38565b604082019050919050565b5f6020820190508181035f830152614bbf81614b86565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050614c2e8161357b565b92915050565b5f60208284031215614c4957614c48613547565b5b5f614c5684828501614c20565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b614c918161356a565b82525050565b5f614ca28383614c88565b60208301905092915050565b5f602082019050919050565b5f614cc482614c5f565b614cce8185614c69565b9350614cd983614c79565b805f5b83811015614d09578151614cf08882614c97565b9750614cfb83614cae565b925050600181019050614cdc565b5085935050505092915050565b5f60a082019050614d295f8301886136bd565b614d366020830187613fdc565b8181036040830152614d488186614cba565b9050614d576060830185613794565b614d6460808301846136bd565b969550505050505056fea264697066735822122068d518f2152aa1dd64689b9ea5ebc2f087d0bf5d8203c2a3e048293b29a5963464736f6c63430008140033000000000000000000000000e53c39b12a6c7d2891744433754643f046086022000000000000000000000000d860b6d0aeca1629d4f733ff37e35e3c3417bd47
Deployed Bytecode
0x60806040526004361061028b575f3560e01c80637571336a11610159578063c0246668116100c0578063dd62ed3e11610079578063dd62ed3e1461099e578063e2f45605146109da578063ee40166e14610a04578063f2fde38b14610a2e578063f5648a4f14610a56578063fabb0b4f14610a6c57610292565b8063c0246668146108aa578063c18bc195146108d2578063c5f956af146108fa578063cc274b2914610924578063cc2ffe7c1461094c578063dc3f0d0f1461097657610292565b80639cd441da116101125780639cd441da1461077a578063a457c2d7146107a2578063a9059cbb146107de578063aa4bde281461081a578063b62496f514610844578063bbc0c7421461088057610292565b80637571336a146106705780638366e79a1461069857806388e765ff146106d45780638da5cb5b146106fe57806395d89b41146107285780639a7a23d61461075257610292565b806347062402116101fd5780636605bfda116101b65780636605bfda1461058c57806366d602ae146105b45780636ddd1713146105de57806370a0823114610608578063715018a614610644578063751039fc1461065a57610292565b8063470624021461049457806349bd5a5e146104be5780634a62bb65146104e85780634bb2c7851461051257806351bc3c851461054e5780635e83ae761461056457610292565b806323b872dd1161024f57806323b872dd146103785780632b14ca56146103b45780632be32b61146103de578063313ce567146104065780633950935114610430578063467abe0a1461046c57610292565b806306fdde0314610296578063095ea7b3146102c05780631694505e146102fc57806318160ddd146103265780631d933a4a1461035057610292565b3661029257005b5f80fd5b3480156102a1575f80fd5b506102aa610a96565b6040516102b79190613527565b60405180910390f35b3480156102cb575f80fd5b506102e660048036038101906102e191906135d8565b610b26565b6040516102f39190613630565b60405180910390f35b348015610307575f80fd5b50610310610b43565b60405161031d91906136a4565b60405180910390f35b348015610331575f80fd5b5061033a610b67565b60405161034791906136cc565b60405180910390f35b34801561035b575f80fd5b50610376600480360381019061037191906136e5565b610b70565b005b348015610383575f80fd5b5061039e60048036038101906103999190613710565b610bc6565b6040516103ab9190613630565b60405180910390f35b3480156103bf575f80fd5b506103c8610bf4565b6040516103d591906136cc565b60405180910390f35b3480156103e9575f80fd5b5061040460048036038101906103ff91906136e5565b610bfa565b005b348015610411575f80fd5b5061041a610cd3565b604051610427919061377b565b60405180910390f35b34801561043b575f80fd5b50610456600480360381019061045191906135d8565b610cdb565b6040516104639190613630565b60405180910390f35b348015610477575f80fd5b50610492600480360381019061048d91906136e5565b610d82565b005b34801561049f575f80fd5b506104a8610dd8565b6040516104b591906136cc565b60405180910390f35b3480156104c9575f80fd5b506104d2610dde565b6040516104df91906137a3565b60405180910390f35b3480156104f3575f80fd5b506104fc610e02565b6040516105099190613630565b60405180910390f35b34801561051d575f80fd5b50610538600480360381019061053391906137bc565b610e15565b6040516105459190613630565b60405180910390f35b348015610559575f80fd5b50610562610e32565b005b34801561056f575f80fd5b5061058a60048036038101906105859190613811565b610f4d565b005b348015610597575f80fd5b506105b260048036038101906105ad91906137bc565b611057565b005b3480156105bf575f80fd5b506105c8611153565b6040516105d591906136cc565b60405180910390f35b3480156105e9575f80fd5b506105f2611159565b6040516105ff9190613630565b60405180910390f35b348015610613575f80fd5b5061062e600480360381019061062991906137bc565b61116c565b60405161063b91906136cc565b60405180910390f35b34801561064f575f80fd5b506106586111b1565b005b348015610665575f80fd5b5061066e6111c4565b005b34801561067b575f80fd5b506106966004803603810190610691919061384f565b611214565b005b3480156106a3575f80fd5b506106be60048036038101906106b9919061388d565b6112be565b6040516106cb9190613630565b60405180910390f35b3480156106df575f80fd5b506106e861157c565b6040516106f591906136cc565b60405180910390f35b348015610709575f80fd5b50610712611582565b60405161071f91906137a3565b60405180910390f35b348015610733575f80fd5b5061073c6115aa565b6040516107499190613527565b60405180910390f35b34801561075d575f80fd5b506107786004803603810190610773919061384f565b61163a565b005b348015610785575f80fd5b506107a0600480360381019061079b91906138cb565b6116de565b005b3480156107ad575f80fd5b506107c860048036038101906107c391906135d8565b6117c4565b6040516107d59190613630565b60405180910390f35b3480156107e9575f80fd5b5061080460048036038101906107ff91906135d8565b6118aa565b6040516108119190613630565b60405180910390f35b348015610825575f80fd5b5061082e6118c7565b60405161083b91906136cc565b60405180910390f35b34801561084f575f80fd5b5061086a600480360381019061086591906137bc565b6118cd565b6040516108779190613630565b60405180910390f35b34801561088b575f80fd5b506108946118ea565b6040516108a19190613630565b60405180910390f35b3480156108b5575f80fd5b506108d060048036038101906108cb919061384f565b6118fd565b005b3480156108dd575f80fd5b506108f860048036038101906108f391906136e5565b6119ab565b005b348015610905575f80fd5b5061090e611a84565b60405161091b91906137a3565b60405180910390f35b34801561092f575f80fd5b5061094a600480360381019061094591906136e5565b611aa9565b005b348015610957575f80fd5b50610960611b55565b60405161096d91906136cc565b60405180910390f35b348015610981575f80fd5b5061099c600480360381019061099791906136e5565b611b5b565b005b3480156109a9575f80fd5b506109c460048036038101906109bf919061388d565b611c34565b6040516109d191906136cc565b60405180910390f35b3480156109e5575f80fd5b506109ee611cb6565b6040516109fb91906136cc565b60405180910390f35b348015610a0f575f80fd5b50610a18611cbc565b604051610a2591906136cc565b60405180910390f35b348015610a39575f80fd5b50610a546004803603810190610a4f91906137bc565b611cc2565b005b348015610a61575f80fd5b50610a6a611d44565b005b348015610a77575f80fd5b50610a80611f3b565b604051610a8d91906136cc565b60405180910390f35b606060038054610aa590613936565b80601f0160208091040260200160405190810160405280929190818152602001828054610ad190613936565b8015610b1c5780601f10610af357610100808354040283529160200191610b1c565b820191905f5260205f20905b815481529060010190602001808311610aff57829003601f168201915b5050505050905090565b5f610b39610b32611f41565b8484611f48565b6001905092915050565b7f00000000000000000000000010ed43c718714eb63d5aa57b78b54704e256024e81565b5f600254905090565b610b7861210b565b601e811115610bbc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bb3906139b0565b60405180910390fd5b80600d8190555050565b5f80610bd0611f41565b9050610bdd858285612189565b610be8858585612214565b60019150509392505050565b600d5481565b610c0261210b565b670de0b6b3a76400006103e860016b204fce5e3e25026110000000610c2791906139fb565b610c319190613a69565b610c3b9190613a69565b811015610c7d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7490613b09565b60405180910390fd5b670de0b6b3a764000081610c9191906139fb565b6007819055507ffcc0366804aaa8dbf88a2924100c733b70dec8445957a5d5f8ff92898de41009600754604051610cc891906136cc565b60405180910390a150565b5f6012905090565b5f610d78610ce7611f41565b848460015f610cf4611f41565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610d739190613b27565b611f48565b6001905092915050565b610d8a61210b565b601e811115610dce576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dc5906139b0565b60405180910390fd5b80600c8190555050565b600c5481565b7f000000000000000000000000adaaa5037ae86fcdfbba53de742a87c47361579381565b600b60019054906101000a900460ff1681565b6013602052805f5260405f205f915054906101000a900460ff1681565b60115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610ec1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eb890613ba4565b60405180910390fd5b5f610ecb3061116c565b90505f8111610f0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f0690613c0c565b60405180910390fd5b6001600b5f6101000a81548160ff021916908315150217905550610f316126f3565b5f600b5f6101000a81548160ff02191690831515021790555050565b610f5561210b565b600b60029054906101000a900460ff1615610fa5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9c90613c74565b60405180910390fd5b81600b60026101000a81548160ff0219169083151502179055506001600b60036101000a81548160ff02191690831515021790555080601081905550600b60029054906101000a900460ff168015610ffe57505f600f54145b1561100b5743600f819055505b7fe185248899f361d51a48833938ab33493ebd7272d195abf7f51a833ea8138812600b60029054906101000a900460ff168260405161104b929190613c92565b60405180910390a15050565b61105f61210b565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036110cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110c490613d03565b60405180910390fd5b8060115f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff167f2e1e696cfb265fa16e1170d24ef04cb2262772bde00ecf34d80bae6722487b7f60405160405180910390a250565b60085481565b600b60039054906101000a900460ff1681565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6111b961210b565b6111c25f612833565b565b6111cc61210b565b5f600b60016101000a81548160ff0219169083151502179055507fa4ffae85e880608d5d4365c2b682786545d136145537788e7e0940dff9f0b98c60405160405180910390a1565b61121c61210b565b806112b0577f000000000000000000000000adaaa5037ae86fcdfbba53de742a87c47361579373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036112af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112a690613d91565b60405180910390fd5b5b6112ba82826128f6565b5050565b5f60115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461134e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134590613ba4565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036113bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113b390613df9565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361142a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142190613e61565b60405180910390fd5b5f8373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b815260040161146491906137a3565b602060405180830381865afa15801561147f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114a39190613e93565b90505f8473ffffffffffffffffffffffffffffffffffffffff1663a9059cbb85846040518363ffffffff1660e01b81526004016114e1929190613ebe565b6020604051808303815f875af11580156114fd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115219190613ef9565b90508473ffffffffffffffffffffffffffffffffffffffff167fdeda980967fcead7b61e78ac46a4da14274af29e894d4d61e8b81ec38ab3e4388360405161156991906136cc565b60405180910390a2809250505092915050565b60075481565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600480546115b990613936565b80601f01602080910402602001604051908101604052809291908181526020018280546115e590613936565b80156116305780601f1061160757610100808354040283529160200191611630565b820191905f5260205f20905b81548152906001019060200180831161161357829003601f168201915b5050505050905090565b61164261210b565b7f000000000000000000000000adaaa5037ae86fcdfbba53de742a87c47361579373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036116d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116c790613f94565b60405180910390fd5b6116da828261299c565b5050565b6116e661210b565b611711307f00000000000000000000000010ed43c718714eb63d5aa57b78b54704e256024e84611f48565b7f00000000000000000000000010ed43c718714eb63d5aa57b78b54704e256024e73ffffffffffffffffffffffffffffffffffffffff1663f305d7198230855f8061175a611582565b426040518863ffffffff1660e01b815260040161177c96959493929190613feb565b60606040518083038185885af1158015611798573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906117bd919061404a565b5050505050565b5f8060015f6117d1611f41565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508281101561188b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118829061410a565b60405180910390fd5b61189f611896611f41565b85858403611f48565b600191505092915050565b5f6118bd6118b6611f41565b8484612214565b6001905092915050565b60095481565b6014602052805f5260405f205f915054906101000a900460ff1681565b600b60029054906101000a900460ff1681565b61190561210b565b8060125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df78260405161199f9190613630565b60405180910390a25050565b6119b361210b565b670de0b6b3a76400006103e860036b204fce5e3e250261100000006119d891906139fb565b6119e29190613a69565b6119ec9190613a69565b811015611a2e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a2590614198565b60405180910390fd5b670de0b6b3a764000081611a4291906139fb565b6009819055507fefc9add9a9b7382de284ef5ad69d8ea863e2680492b21a81948c2d5f04a442bc600954604051611a7991906136cc565b60405180910390a150565b60115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611b38576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b2f90613ba4565b60405180910390fd5b670de0b6b3a764000081611b4c91906139fb565b600a8190555050565b600e5481565b611b6361210b565b670de0b6b3a76400006103e860016b204fce5e3e25026110000000611b8891906139fb565b611b929190613a69565b611b9c9190613a69565b811015611bde576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bd590614226565b60405180910390fd5b670de0b6b3a764000081611bf291906139fb565b6008819055507f53c4eb831d8cfeb750f1c62590d8cd30f4c6f0380d29a05caa09f0d92588560e600854604051611c2991906136cc565b60405180910390a150565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b600a5481565b600f5481565b611cca61210b565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611d38576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d2f906142b4565b60405180910390fd5b611d4181612833565b50565b60115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611dd3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dca90613ba4565b60405180910390fd5b600260065403611e18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e0f9061431c565b60405180910390fd5b60026006819055505f4790505f8111611e66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e5d90614384565b60405180910390fd5b5f60115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682604051611eac906143cf565b5f6040518083038185875af1925050503d805f8114611ee6576040519150601f19603f3d011682016040523d82523d5f602084013e611eeb565b606091505b5050905080611f2f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f269061442d565b60405180910390fd5b50506001600681905550565b60105481565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611fb6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fad906144bb565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612024576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161201b90614549565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516120fe91906136cc565b60405180910390a3505050565b612113611f41565b73ffffffffffffffffffffffffffffffffffffffff16612131611582565b73ffffffffffffffffffffffffffffffffffffffff1614612187576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161217e906145b1565b60405180910390fd5b565b5f6121948484611c34565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461220e5781811015612200576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121f790614619565b60405180910390fd5b61220d8484848403611f48565b5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612282576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612279906146a7565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036122f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122e790614735565b60405180910390fd5b5f8111612332576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123299061479d565b60405180910390fd5b600b60019054906101000a900460ff161561235357612352838383612a44565b5b5f61235d3061116c565b90505f600a5482101590508080156123815750600b60039054906101000a900460ff165b80156123995750600b5f9054906101000a900460ff16155b80156123ec575060145f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b801561243f575060125f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015612492575060125f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b156124d3576001600b5f6101000a81548160ff0219169083151502179055506124b96126f3565b5f600b5f6101000a81548160ff0219169083151502179055505b5f60125f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015612572575060125f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b90505f81801561258357505f600f54115b80156125905750600f5443115b156126df5760145f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680156125ec57505f600d54115b1561262a576064600d548661260191906139fb565b61260b9190613a69565b905080600e5f82825461261e9190613b27565b925050819055506126bc565b60145f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16801561268157505f600c54115b156126bb576064600c548661269691906139fb565b6126a09190613a69565b905080600e5f8282546126b39190613b27565b925050819055505b5b5f8111156126de576126cf873083612fc9565b80856126db91906147bb565b94505b5b6126ea878787612fc9565b50505050505050565b5f6126fd3061116c565b90505f600e5490505f82148061271257505f81145b1561271e575050612831565b6005600a5461272d91906139fb565b821115612746576005600a5461274391906139fb565b91505b61274f8261326a565b5f600e819055505f4790505f81111561282d575f60115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16826040516127a8906143cf565b5f6040518083038185875af1925050503d805f81146127e2576040519150601f19603f3d011682016040523d82523d5f602084013e6127e7565b606091505b505090508061282b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161282290614838565b60405180910390fd5b505b5050505b565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8060135f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f6b4f1be9103e6cbcd38ca4a922334f2c3109b260130a6676a987f94088fd6746826040516129909190613630565b60405180910390a25050565b8060145f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506129fa82826128f6565b8015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b612a4c611582565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015612aba5750612a8a611582565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612af257505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612b2c575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15612fc457600b60029054906101000a900460ff16612c955760135f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680612be0575060135f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b612c1f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c16906148a0565b60405180910390fd5b612c27611582565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614612c94576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c8b90614908565b60405180910390fd5b5b60145f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168015612d32575060135f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15612dd957600754811115612d7c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d7390614996565b60405180910390fd5b600954612d888361116c565b82612d939190613b27565b1115612dd4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612dcb906149fe565b60405180910390fd5b612fc3565b60145f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168015612e76575060135f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15612ec557600854811115612ec0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612eb790614a8c565b60405180910390fd5b612fc2565b60135f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015612f63575060135f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15612fc157600954612f748361116c565b82612f7f9190613b27565b1115612fc0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612fb7906149fe565b60405180910390fd5b5b5b5b5b505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603613037576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161302e906146a7565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036130a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161309c90614735565b60405180910390fd5b5f81116130e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130de90614b1a565b60405180910390fd5b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508181101561316a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161316190614ba8565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550815f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546131f89190613b27565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161325c91906136cc565b60405180910390a350505050565b5f600267ffffffffffffffff81111561328657613285614bc6565b5b6040519080825280602002602001820160405280156132b45781602001602082028036833780820191505090505b50905030815f815181106132cb576132ca614bf3565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f00000000000000000000000010ed43c718714eb63d5aa57b78b54704e256024e73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561336e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906133929190614c34565b816001815181106133a6576133a5614bf3565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061340b307f00000000000000000000000010ed43c718714eb63d5aa57b78b54704e256024e84611f48565b7f00000000000000000000000010ed43c718714eb63d5aa57b78b54704e256024e73ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b815260040161346c959493929190614d16565b5f604051808303815f87803b158015613483575f80fd5b505af1158015613495573d5f803e3d5ffd5b505050505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156134d45780820151818401526020810190506134b9565b5f8484015250505050565b5f601f19601f8301169050919050565b5f6134f98261349d565b61350381856134a7565b93506135138185602086016134b7565b61351c816134df565b840191505092915050565b5f6020820190508181035f83015261353f81846134ef565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6135748261354b565b9050919050565b6135848161356a565b811461358e575f80fd5b50565b5f8135905061359f8161357b565b92915050565b5f819050919050565b6135b7816135a5565b81146135c1575f80fd5b50565b5f813590506135d2816135ae565b92915050565b5f80604083850312156135ee576135ed613547565b5b5f6135fb85828601613591565b925050602061360c858286016135c4565b9150509250929050565b5f8115159050919050565b61362a81613616565b82525050565b5f6020820190506136435f830184613621565b92915050565b5f819050919050565b5f61366c6136676136628461354b565b613649565b61354b565b9050919050565b5f61367d82613652565b9050919050565b5f61368e82613673565b9050919050565b61369e81613684565b82525050565b5f6020820190506136b75f830184613695565b92915050565b6136c6816135a5565b82525050565b5f6020820190506136df5f8301846136bd565b92915050565b5f602082840312156136fa576136f9613547565b5b5f613707848285016135c4565b91505092915050565b5f805f6060848603121561372757613726613547565b5b5f61373486828701613591565b935050602061374586828701613591565b9250506040613756868287016135c4565b9150509250925092565b5f60ff82169050919050565b61377581613760565b82525050565b5f60208201905061378e5f83018461376c565b92915050565b61379d8161356a565b82525050565b5f6020820190506137b65f830184613794565b92915050565b5f602082840312156137d1576137d0613547565b5b5f6137de84828501613591565b91505092915050565b6137f081613616565b81146137fa575f80fd5b50565b5f8135905061380b816137e7565b92915050565b5f806040838503121561382757613826613547565b5b5f613834858286016137fd565b9250506020613845858286016135c4565b9150509250929050565b5f806040838503121561386557613864613547565b5b5f61387285828601613591565b9250506020613883858286016137fd565b9150509250929050565b5f80604083850312156138a3576138a2613547565b5b5f6138b085828601613591565b92505060206138c185828601613591565b9150509250929050565b5f80604083850312156138e1576138e0613547565b5b5f6138ee858286016135c4565b92505060206138ff858286016135c4565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061394d57607f821691505b6020821081036139605761395f613909565b5b50919050565b7f46656573206d75737420626520333025206f72206c65737300000000000000005f82015250565b5f61399a6018836134a7565b91506139a582613966565b602082019050919050565b5f6020820190508181035f8301526139c78161398e565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f613a05826135a5565b9150613a10836135a5565b9250828202613a1e816135a5565b91508282048414831517613a3557613a346139ce565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f613a73826135a5565b9150613a7e836135a5565b925082613a8e57613a8d613a3c565b5b828204905092915050565b7f43616e6e6f7420736574206d61782062757920616d6f756e74206c6f776572205f8201527f7468616e20302e31250000000000000000000000000000000000000000000000602082015250565b5f613af36029836134a7565b9150613afe82613a99565b604082019050919050565b5f6020820190508181035f830152613b2081613ae7565b9050919050565b5f613b31826135a5565b9150613b3c836135a5565b9250828201905080821115613b5457613b536139ce565b5b92915050565b7f43616c6c6572206973206e6f74207468652074726561737572790000000000005f82015250565b5f613b8e601a836134a7565b9150613b9982613b5a565b602082019050919050565b5f6020820190508181035f830152613bbb81613b82565b9050919050565b7f4e6f20746f6b656e7320746f20737761700000000000000000000000000000005f82015250565b5f613bf66011836134a7565b9150613c0182613bc2565b602082019050919050565b5f6020820190508181035f830152613c2381613bea565b9050919050565b7f54726164696e6720697320616c726561647920616374697665000000000000005f82015250565b5f613c5e6019836134a7565b9150613c6982613c2a565b602082019050919050565b5f6020820190508181035f830152613c8b81613c52565b9050919050565b5f604082019050613ca55f830185613621565b613cb260208301846136bd565b9392505050565b7f547265617375727920616464726573732063616e6e6f74206265207a65726f005f82015250565b5f613ced601f836134a7565b9150613cf882613cb9565b602082019050919050565b5f6020820190508181035f830152613d1a81613ce1565b9050919050565b7f43616e6e6f742072656d6f766520756e697377617020706169722066726f6d205f8201527f6d61782074786e00000000000000000000000000000000000000000000000000602082015250565b5f613d7b6027836134a7565b9150613d8682613d21565b604082019050919050565b5f6020820190508181035f830152613da881613d6f565b9050919050565b7f546f6b656e20616464726573732063616e6e6f74206265207a65726f000000005f82015250565b5f613de3601c836134a7565b9150613dee82613daf565b602082019050919050565b5f6020820190508181035f830152613e1081613dd7565b9050919050565b7f526563697069656e7420616464726573732063616e6e6f74206265207a65726f5f82015250565b5f613e4b6020836134a7565b9150613e5682613e17565b602082019050919050565b5f6020820190508181035f830152613e7881613e3f565b9050919050565b5f81519050613e8d816135ae565b92915050565b5f60208284031215613ea857613ea7613547565b5b5f613eb584828501613e7f565b91505092915050565b5f604082019050613ed15f830185613794565b613ede60208301846136bd565b9392505050565b5f81519050613ef3816137e7565b92915050565b5f60208284031215613f0e57613f0d613547565b5b5f613f1b84828501613ee5565b91505092915050565b7f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d205f8201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000602082015250565b5f613f7e6039836134a7565b9150613f8982613f24565b604082019050919050565b5f6020820190508181035f830152613fab81613f72565b9050919050565b5f819050919050565b5f613fd5613fd0613fcb84613fb2565b613649565b6135a5565b9050919050565b613fe581613fbb565b82525050565b5f60c082019050613ffe5f830189613794565b61400b60208301886136bd565b6140186040830187613fdc565b6140256060830186613fdc565b6140326080830185613794565b61403f60a08301846136bd565b979650505050505050565b5f805f6060848603121561406157614060613547565b5b5f61406e86828701613e7f565b935050602061407f86828701613e7f565b925050604061409086828701613e7f565b9150509250925092565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f6140f46025836134a7565b91506140ff8261409a565b604082019050919050565b5f6020820190508181035f830152614121816140e8565b9050919050565b7f43616e6e6f7420736574206d61782077616c6c657420616d6f756e74206c6f775f8201527f6572207468616e20302e33250000000000000000000000000000000000000000602082015250565b5f614182602c836134a7565b915061418d82614128565b604082019050919050565b5f6020820190508181035f8301526141af81614176565b9050919050565b7f43616e6e6f7420736574206d61782073656c6c20616d6f756e74206c6f7765725f8201527f207468616e20302e312500000000000000000000000000000000000000000000602082015250565b5f614210602a836134a7565b915061421b826141b6565b604082019050919050565b5f6020820190508181035f83015261423d81614204565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f61429e6026836134a7565b91506142a982614244565b604082019050919050565b5f6020820190508181035f8301526142cb81614292565b9050919050565b7f5265656e7472616e637947756172643a207265656e7472616e742063616c6c005f82015250565b5f614306601f836134a7565b9150614311826142d2565b602082019050919050565b5f6020820190508181035f830152614333816142fa565b9050919050565b7f4e6f2045544820746f20776974686472617700000000000000000000000000005f82015250565b5f61436e6012836134a7565b91506143798261433a565b602082019050919050565b5f6020820190508181035f83015261439b81614362565b9050919050565b5f81905092915050565b50565b5f6143ba5f836143a2565b91506143c5826143ac565b5f82019050919050565b5f6143d9826143af565b9150819050919050565b7f455448207472616e73666572206661696c6564000000000000000000000000005f82015250565b5f6144176013836134a7565b9150614422826143e3565b602082019050919050565b5f6020820190508181035f8301526144448161440b565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6144a56024836134a7565b91506144b08261444b565b604082019050919050565b5f6020820190508181035f8301526144d281614499565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f6145336022836134a7565b915061453e826144d9565b604082019050919050565b5f6020820190508181035f83015261456081614527565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f61459b6020836134a7565b91506145a682614567565b602082019050919050565b5f6020820190508181035f8301526145c88161458f565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000005f82015250565b5f614603601d836134a7565b915061460e826145cf565b602082019050919050565b5f6020820190508181035f830152614630816145f7565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6146916025836134a7565b915061469c82614637565b604082019050919050565b5f6020820190508181035f8301526146be81614685565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f61471f6023836134a7565b915061472a826146c5565b604082019050919050565b5f6020820190508181035f83015261474c81614713565b9050919050565b7f416d6f756e74206d7573742062652067726561746572207468616e20300000005f82015250565b5f614787601d836134a7565b915061479282614753565b602082019050919050565b5f6020820190508181035f8301526147b48161477b565b9050919050565b5f6147c5826135a5565b91506147d0836135a5565b92508282039050818111156147e8576147e76139ce565b5b92915050565b7f455448207472616e7366657220746f207472656173757279206661696c6564005f82015250565b5f614822601f836134a7565b915061482d826147ee565b602082019050919050565b5f6020820190508181035f83015261484f81614816565b9050919050565b7f54726164696e67206973206e6f742061637469766500000000000000000000005f82015250565b5f61488a6015836134a7565b915061489582614856565b602082019050919050565b5f6020820190508181035f8301526148b78161487e565b9050919050565b7f54726164696e67206973206e6f7420656e61626c6564000000000000000000005f82015250565b5f6148f26016836134a7565b91506148fd826148be565b602082019050919050565b5f6020820190508181035f83015261491f816148e6565b9050919050565b7f427579207472616e7366657220616d6f756e74206578636565647320746865205f8201527f6d61782062757900000000000000000000000000000000000000000000000000602082015250565b5f6149806027836134a7565b915061498b82614926565b604082019050919050565b5f6020820190508181035f8301526149ad81614974565b9050919050565b7f43616e6e6f7420657863656564206d61782077616c6c657400000000000000005f82015250565b5f6149e86018836134a7565b91506149f3826149b4565b602082019050919050565b5f6020820190508181035f830152614a15816149dc565b9050919050565b7f53656c6c207472616e7366657220616d6f756e742065786365656473207468655f8201527f206d61782073656c6c0000000000000000000000000000000000000000000000602082015250565b5f614a766029836134a7565b9150614a8182614a1c565b604082019050919050565b5f6020820190508181035f830152614aa381614a6a565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f614b046029836134a7565b9150614b0f82614aaa565b604082019050919050565b5f6020820190508181035f830152614b3181614af8565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f614b926026836134a7565b9150614b9d82614b38565b604082019050919050565b5f6020820190508181035f830152614bbf81614b86565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050614c2e8161357b565b92915050565b5f60208284031215614c4957614c48613547565b5b5f614c5684828501614c20565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b614c918161356a565b82525050565b5f614ca28383614c88565b60208301905092915050565b5f602082019050919050565b5f614cc482614c5f565b614cce8185614c69565b9350614cd983614c79565b805f5b83811015614d09578151614cf08882614c97565b9750614cfb83614cae565b925050600181019050614cdc565b5085935050505092915050565b5f60a082019050614d295f8301886136bd565b614d366020830187613fdc565b8181036040830152614d488186614cba565b9050614d576060830185613794565b614d6460808301846136bd565b969550505050505056fea264697066735822122068d518f2152aa1dd64689b9ea5ebc2f087d0bf5d8203c2a3e048293b29a5963464736f6c63430008140033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000e53c39b12a6c7d2891744433754643f046086022000000000000000000000000d860b6d0aeca1629d4f733ff37e35e3c3417bd47
-----Decoded View---------------
Arg [0] : _treasuryAddress (address): 0xe53c39B12A6c7d2891744433754643f046086022
Arg [1] : _devWallet (address): 0xd860B6D0AecA1629d4F733Ff37e35e3c3417bd47
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000e53c39b12a6c7d2891744433754643f046086022
Arg [1] : 000000000000000000000000d860b6d0aeca1629d4f733ff37e35e3c3417bd47
Deployed Bytecode Sourcemap
7854:13828:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1611:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2525:169;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8521:43;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1932:108;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13572:158;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;16672:269;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8795:22;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12028:261;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1831:93;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3164:215;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13408:156;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8767:21;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8571:38;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8647:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9062:62;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15711:254;;;;;;;;;;;;;:::i;:::-;;15973:392;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14615:275;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8407:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8727:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2048:127;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6105:103;;;;;;;;;;;;;:::i;:::-;;12859:115;;;;;;;;;;;;;:::i;:::-;;12982:284;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14898:484;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8373:27;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5870:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1719:104;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13930:244;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14182:425;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3387:411;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16432:169;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8442:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9131:57;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8687:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13738:184;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;12572:279;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8947:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13274:126;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8824:32;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12297:267;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2366:151;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8479:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8865:37;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6216:201;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15390:313;;;;;;;;;;;;;:::i;:::-;;8909:29;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1611:100;1665:13;1698:5;1691:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1611:100;:::o;2525:169::-;2608:4;2625:39;2634:12;:10;:12::i;:::-;2648:7;2657:6;2625:8;:39::i;:::-;2682:4;2675:11;;2525:169;;;;:::o;8521:43::-;;;:::o;1932:108::-;1993:7;2020:12;;2013:19;;1932:108;:::o;13572:158::-;5829:13;:11;:13::i;:::-;8053:2:::1;13649:6;:17;;13641:54;;;;;;;;;;;;:::i;:::-;;;;;;;;;13716:6;13706:7;:16;;;;13572:158:::0;:::o;16672:269::-;16769:4;16786:15;16804:12;:10;:12::i;:::-;16786:30;;16827:38;16843:4;16849:7;16858:6;16827:15;:38::i;:::-;16876:35;16894:4;16900:2;16904:6;16876:17;:35::i;:::-;16929:4;16922:11;;;16672:269;;;;;:::o;8795:22::-;;;;:::o;12028:261::-;5829:13;:11;:13::i;:::-;12140:4:::1;8146;8142:1;7969:21;8127:16;;;;:::i;:::-;:23;;;;:::i;:::-;12126:18;;;;:::i;:::-;12113:9;:31;;12105:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;12228:4;12216:9;:16;;;;:::i;:::-;12201:12;:31;;;;12248:33;12268:12;;12248:33;;;;;;:::i;:::-;;;;;;;;12028:261:::0;:::o;1831:93::-;1889:5;1914:2;1907:9;;1831:93;:::o;3164:215::-;3252:4;3269:80;3278:12;:10;:12::i;:::-;3292:7;3338:10;3301:11;:25;3313:12;:10;:12::i;:::-;3301:25;;;;;;;;;;;;;;;:34;3327:7;3301:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;3269:8;:80::i;:::-;3367:4;3360:11;;3164:215;;;;:::o;13408:156::-;5829:13;:11;:13::i;:::-;8053:2:::1;13484:6;:17;;13476:54;;;;;;;;;;;;:::i;:::-;;;;;;;;;13550:6;13541;:15;;;;13408:156:::0;:::o;8767:21::-;;;;:::o;8571:38::-;;;:::o;8647:33::-;;;;;;;;;;;;;:::o;9062:62::-;;;;;;;;;;;;;;;;;;;;;;:::o;15711:254::-;10003:15;;;;;;;;;;;9989:29;;:10;:29;;;9981:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;15766:20:::1;15789:24;15807:4;15789:9;:24::i;:::-;15766:47;;15847:1;15832:12;:16;15824:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;15903:4;15891:9;;:16;;;;;;;;;;;;;;;;;;15918:11;:9;:11::i;:::-;15952:5;15940:9;;:17;;;;;;;;;;;;;;;;;;15755:210;15711:254::o:0;15973:392::-;5829:13;:11;:13::i;:::-;10125::::1;;;;;;;;;;;10124:14;10116:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;16093:6:::2;16077:13;;:22;;;;;;;;;;;;;;;;;;16124:4;16110:11;;:18;;;;;;;;;;;;;;;;;;16152:11;16139:10;:24;;;;16188:13;;;;;;;;;;;:40;;;;;16227:1;16205:18;;:23;16188:40;16184:106;;;16266:12;16245:18;:33;;;;16184:106;16315:42;16330:13;;;;;;;;;;;16345:11;16315:42;;;;;;;:::i;:::-;;;;;;;;15973:392:::0;;:::o;14615:275::-;5829:13;:11;:13::i;:::-;14739:1:::1;14709:32;;:18;:32;;::::0;14701:76:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;14806:18;14788:15;;:36;;;;;;;;;;;;;;;;;;14863:18;14840:42;;;;;;;;;;;;14615:275:::0;:::o;8407:28::-;;;;:::o;8727:31::-;;;;;;;;;;;;;:::o;2048:127::-;2122:7;2149:9;:18;2159:7;2149:18;;;;;;;;;;;;;;;;2142:25;;2048:127;;;:::o;6105:103::-;5829:13;:11;:13::i;:::-;6170:30:::1;6197:1;6170:18;:30::i;:::-;6105:103::o:0;12859:115::-;5829:13;:11;:13::i;:::-;12930:5:::1;12913:14;;:22;;;;;;;;;;;;;;;;;;12951:15;;;;;;;;;;12859:115::o:0;12982:284::-;5829:13;:11;:13::i;:::-;13086:10:::1;13081:120;;13132:13;13121:24;;:7;:24;;::::0;13113:76:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;13081:120;13211:47;13238:7;13247:10;13211:26;:47::i;:::-;12982:284:::0;;:::o;14898:484::-;14986:4;10003:15;;;;;;;;;;;9989:29;;:10;:29;;;9981:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;15028:1:::1;15011:19;;:5;:19;;::::0;15003:60:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;15096:1;15082:16;;:2;:16;;::::0;15074:61:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;15156:23;15189:5;15182:23;;;15214:4;15182:38;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15156:64;;15231:12;15253:5;15246:22;;;15269:2;15273:15;15246:43;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15231:58;;15326:5;15305:44;;;15333:15;15305:44;;;;;;:::i;:::-;;;;;;;;15367:7;15360:14;;;;14898:484:::0;;;;:::o;8373:27::-;;;;:::o;5870:87::-;5916:7;5943:6;;;;;;;;;;;5936:13;;5870:87;:::o;1719:104::-;1775:13;1808:7;1801:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1719:104;:::o;13930:244::-;5829:13;:11;:13::i;:::-;14039::::1;14031:21;;:4;:21;;::::0;14023:91:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;14125:41;14154:4;14160:5;14125:28;:41::i;:::-;13930:244:::0;;:::o;14182:425::-;5829:13;:11;:13::i;:::-;14274:62:::1;14291:4;14306:15;14324:11;14274:8;:62::i;:::-;14347:15;:31;;;14386:9;14419:4;14439:11;14465:1;14508::::0;14551:7:::1;:5;:7::i;:::-;14573:15;14347:252;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;14182:425:::0;;:::o;3387:411::-;3480:4;3497:24;3524:11;:25;3536:12;:10;:12::i;:::-;3524:25;;;;;;;;;;;;;;;:34;3550:7;3524:34;;;;;;;;;;;;;;;;3497:61;;3597:15;3577:16;:35;;3569:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;3690:67;3699:12;:10;:12::i;:::-;3713:7;3741:15;3722:16;:34;3690:8;:67::i;:::-;3786:4;3779:11;;;3387:411;;;;:::o;16432:169::-;16511:4;16528:43;16546:12;:10;:12::i;:::-;16560:2;16564:6;16528:17;:43::i;:::-;16589:4;16582:11;;16432:169;;;;:::o;8442:30::-;;;;:::o;9131:57::-;;;;;;;;;;;;;;;;;;;;;;:::o;8687:33::-;;;;;;;;;;;;;:::o;13738:184::-;5829:13;:11;:13::i;:::-;13856:8:::1;13825:19;:28;13845:7;13825:28;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;13896:7;13880:34;;;13905:8;13880:34;;;;;;:::i;:::-;;;;;;;;13738:184:::0;;:::o;12572:279::-;5829:13;:11;:13::i;:::-;12690:4:::1;8320;8316:1;7969:21;8301:16;;;;:::i;:::-;:23;;;;:::i;:::-;12673:21;;;;:::i;:::-;12660:9;:34;;12652:91;;;;;;;;;;;;:::i;:::-;;;;;;;;;12784:4;12772:9;:16;;;;:::i;:::-;12754:15;:34;;;;12804:39;12827:15;;12804:39;;;;;;:::i;:::-;;;;;;;;12572:279:::0;:::o;8947:30::-;;;;;;;;;;;;;:::o;13274:126::-;10003:15;;;;;;;;;;;9989:29;;:10;:29;;;9981:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;13388:4:::1;13376:9;:16;;;;:::i;:::-;13355:18;:37;;;;13274:126:::0;:::o;8824:32::-;;;;:::o;12297:267::-;5829:13;:11;:13::i;:::-;12411:4:::1;8232;8228:1;7969:21;8213:16;;;;:::i;:::-;:23;;;;:::i;:::-;12396:19;;;;:::i;:::-;12383:9;:32;;12375:87;;;;;;;;;;;;:::i;:::-;;;;;;;;;12501:4;12489:9;:16;;;;:::i;:::-;12473:13;:32;;;;12521:35;12542:13;;12521:35;;;;;;:::i;:::-;;;;;;;;12297:267:::0;:::o;2366:151::-;2455:7;2482:11;:18;2494:5;2482:18;;;;;;;;;;;;;;;:27;2501:7;2482:27;;;;;;;;;;;;;;;;2475:34;;2366:151;;;;:::o;8479:33::-;;;;:::o;8865:37::-;;;;:::o;6216:201::-;5829:13;:11;:13::i;:::-;6325:1:::1;6305:22;;:8;:22;;::::0;6297:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;6381:28;6400:8;6381:18;:28::i;:::-;6216:201:::0;:::o;15390:313::-;10003:15;;;;;;;;;;;9989:29;;:10;:29;;;9981:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6748:1:::1;6894:7;;:19:::0;6886:63:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;6748:1;6960:7;:18;;;;15464:15:::2;15482:21;15464:39;;15532:1;15522:7;:11;15514:42;;;;;;;;;;;;:::i;:::-;;;;;;;;;15578:12;15604:15;;;;;;;;;;;15596:29;;15633:7;15596:49;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15577:68;;;15664:7;15656:39;;;;;;;;;;;;:::i;:::-;;;;;;;;;15453:250;;6704:1:::1;7001:7;:22;;;;15390:313::o:0;8909:29::-;;;;:::o;93:98::-;146:7;173:10;166:17;;93:98;:::o;4761:344::-;4880:1;4863:19;;:5;:19;;;4855:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;4961:1;4942:21;;:7;:21;;;4934:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5043:6;5013:11;:18;5025:5;5013:18;;;;;;;;;;;;;;;:27;5032:7;5013:27;;;;;;;;;;;;;;;:36;;;;5081:7;5065:32;;5074:5;5065:32;;;5090:6;5065:32;;;;;;:::i;:::-;;;;;;;;4761:344;;;:::o;5965:132::-;6040:12;:10;:12::i;:::-;6029:23;;:7;:5;:7::i;:::-;:23;;;6021:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5965:132::o;5113:419::-;5214:24;5241:25;5251:5;5258:7;5241:9;:25::i;:::-;5214:52;;5301:17;5281:16;:37;5277:248;;5363:6;5343:16;:26;;5335:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5447:51;5456:5;5463:7;5491:6;5472:16;:25;5447:8;:51::i;:::-;5277:248;5203:329;5113:419;;;:::o;16976:1550::-;17123:1;17107:18;;:4;:18;;;17099:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;17200:1;17186:16;;:2;:16;;;17178:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;17270:1;17261:6;:10;17253:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;17322:14;;;;;;;;;;;17318:79;;;17353:32;17368:4;17374:2;17378:6;17353:14;:32::i;:::-;17318:79;17409:28;17440:24;17458:4;17440:9;:24::i;:::-;17409:55;;17475:12;17514:18;;17490:20;:42;;17475:57;;17549:7;:22;;;;;17560:11;;;;;;;;;;;17549:22;:36;;;;;17576:9;;;;;;;;;;;17575:10;17549:36;:72;;;;;17590:25;:31;17616:4;17590:31;;;;;;;;;;;;;;;;;;;;;;;;;17589:32;17549:72;:116;;;;;17640:19;:25;17660:4;17640:25;;;;;;;;;;;;;;;;;;;;;;;;;17639:26;17549:116;:144;;;;;17670:19;:23;17690:2;17670:23;;;;;;;;;;;;;;;;;;;;;;;;;17669:24;17549:144;17545:251;;;17722:4;17710:9;;:16;;;;;;;;;;;;;;;;;;17741:11;:9;:11::i;:::-;17779:5;17767:9;;:17;;;;;;;;;;;;;;;;;;17545:251;17808:12;17824:19;:25;17844:4;17824:25;;;;;;;;;;;;;;;;;;;;;;;;;17823:26;:54;;;;;17854:19;:23;17874:2;17854:23;;;;;;;;;;;;;;;;;;;;;;;;;17853:24;17823:54;17808:69;;17888:12;17921:7;:33;;;;;17953:1;17932:18;;:22;17921:33;:70;;;;;17973:18;;17958:12;:33;17921:70;17917:562;;;18012:25;:29;18038:2;18012:29;;;;;;;;;;;;;;;;;;;;;;;;;:44;;;;;18055:1;18045:7;;:11;18012:44;18008:326;;;18105:3;18094:7;;18085:6;:16;;;;:::i;:::-;18084:24;;;;:::i;:::-;18077:31;;18148:4;18127:17;;:25;;;;;;;:::i;:::-;;;;;;;;18008:326;;;18178:25;:31;18204:4;18178:31;;;;;;;;;;;;;;;;;;;;;;;;;:45;;;;;18222:1;18213:6;;:10;18178:45;18174:160;;;18271:3;18261:6;;18252;:15;;;;:::i;:::-;18251:23;;;;:::i;:::-;18244:30;;18314:4;18293:17;;:25;;;;;;;:::i;:::-;;;;;;;;18174:160;18008:326;18361:1;18354:4;:8;18350:118;;;18383:36;18393:4;18407;18414;18383:9;:36::i;:::-;18448:4;18438:14;;;;;:::i;:::-;;;18350:118;17917:562;18491:27;18501:4;18507:2;18511:6;18491:9;:27::i;:::-;17088:1438;;;;16976:1550;;;:::o;19846:678::-;19886:23;19912:24;19930:4;19912:9;:24::i;:::-;19886:50;;19947:25;19975:17;;19947:45;;20028:1;20009:15;:20;:46;;;;20054:1;20033:17;:22;20009:46;20005:59;;;20057:7;;;;20005:59;20119:1;20098:18;;:22;;;;:::i;:::-;20080:15;:40;20076:113;;;20176:1;20155:18;;:22;;;;:::i;:::-;20137:40;;20076:113;20201:34;20219:15;20201:17;:34::i;:::-;20266:1;20246:17;:21;;;;20280:18;20301:21;20280:42;;20350:1;20337:10;:14;20333:184;;;20369:12;20395:15;;;;;;;;;;;20387:29;;20424:10;20387:52;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20368:71;;;20462:7;20454:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;20353:164;20333:184;19875:649;;;19846:678;:::o;6425:191::-;6499:16;6518:6;;;;;;;;;;;6499:25;;6544:8;6535:6;;:17;;;;;;;;;;;;;;;;;;6599:8;6568:40;;6589:8;6568:40;;;;;;;;;;;;6488:128;6425:191;:::o;21288:209::-;21419:10;21377:30;:39;21408:7;21377:39;;;;;;;;;;;;;;;;:52;;;;;;;;;;;;;;;;;;21469:7;21445:44;;;21478:10;21445:44;;;;;;:::i;:::-;;;;;;;;21288:209;;:::o;21044:236::-;21161:5;21127:25;:31;21153:4;21127:31;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;21177;21204:4;21210:5;21177:26;:39::i;:::-;21266:5;21232:40;;21260:4;21232:40;;;;;;;;;;;;21044:236;;:::o;18534:1304::-;18637:7;:5;:7::i;:::-;18629:15;;:4;:15;;;;:32;;;;;18654:7;:5;:7::i;:::-;18648:13;;:2;:13;;;;18629:32;:52;;;;;18679:1;18665:16;;:2;:16;;;;18629:52;:77;;;;;18699:6;18685:21;;:2;:21;;;;18629:77;18625:1206;;;18728:13;;;;;;;;;;;18723:293;;18792:30;:36;18823:4;18792:36;;;;;;;;;;;;;;;;;;;;;;;;;:74;;;;18832:30;:34;18863:2;18832:34;;;;;;;;;;;;;;;;;;;;;;;;;18792:74;18762:169;;;;;;;;;;;;:::i;:::-;;;;;;;;;18966:7;:5;:7::i;:::-;18958:15;;:4;:15;;;18950:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;18723:293;19063:25;:31;19089:4;19063:31;;;;;;;;;;;;;;;;;;;;;;;;;:70;;;;;19099:30;:34;19130:2;19099:34;;;;;;;;;;;;;;;;;;;;;;;;;19098:35;19063:70;19059:761;;;19172:12;;19162:6;:22;;19154:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;19281:15;;19264:13;19274:2;19264:9;:13::i;:::-;19255:6;:22;;;;:::i;:::-;:41;;19247:78;;;;;;;;;;;;:::i;:::-;;;;;;;;;19059:761;;;19392:25;:29;19418:2;19392:29;;;;;;;;;;;;;;;;;;;;;;;;;:70;;;;;19426:30;:36;19457:4;19426:36;;;;;;;;;;;;;;;;;;;;;;;;;19425:37;19392:70;19388:432;;;19501:13;;19491:6;:23;;19483:77;;;;;;;;;;;;:::i;:::-;;;;;;;;;19388:432;;;19630:30;:34;19661:2;19630:34;;;;;;;;;;;;;;;;;;;;;;;;;19629:35;:76;;;;;19669:30;:36;19700:4;19669:36;;;;;;;;;;;;;;;;;;;;;;;;;19668:37;19629:76;19625:195;;;19760:15;;19743:13;19753:2;19743:9;:13::i;:::-;19734:6;:22;;;;:::i;:::-;:41;;19726:78;;;;;;;;;;;;:::i;:::-;;;;;;;;;19625:195;19388:432;19059:761;18625:1206;18534:1304;;;:::o;3806:665::-;3930:1;3912:20;;:6;:20;;;3904:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;4014:1;3993:23;;:9;:23;;;3985:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;4084:1;4075:6;:10;4067:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;4144:21;4168:9;:17;4178:6;4168:17;;;;;;;;;;;;;;;;4144:41;;4221:6;4204:13;:23;;4196:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;4352:6;4336:13;:22;4316:9;:17;4326:6;4316:17;;;;;;;;;;;;;;;:42;;;;4404:6;4380:9;:20;4390:9;4380:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;4445:9;4428:35;;4437:6;4428:35;;;4456:6;4428:35;;;;;;:::i;:::-;;;;;;;;3893:578;3806:665;;;:::o;20532:504::-;20599:21;20637:1;20623:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20599:40;;20668:4;20650;20655:1;20650:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;20694:15;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20684:4;20689:1;20684:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;;;20729:62;20746:4;20761:15;20779:11;20729:8;:62::i;:::-;20804:15;:66;;;20885:11;20911:1;20955:4;20982;21002:15;20804:224;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20588:448;20532:504;:::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:144::-;3860:9;3893:37;3924:5;3893:37;:::i;:::-;3880:50;;3792:144;;;:::o;3942:167::-;4047:55;4096:5;4047:55;:::i;:::-;4042:3;4035:68;3942:167;;:::o;4115:258::-;4226:4;4264:2;4253:9;4249:18;4241:26;;4277:89;4363:1;4352:9;4348:17;4339:6;4277:89;:::i;:::-;4115:258;;;;:::o;4379:118::-;4466:24;4484:5;4466:24;:::i;:::-;4461:3;4454:37;4379:118;;:::o;4503:222::-;4596:4;4634:2;4623:9;4619:18;4611:26;;4647:71;4715:1;4704:9;4700:17;4691:6;4647:71;:::i;:::-;4503:222;;;;:::o;4731:329::-;4790:6;4839:2;4827:9;4818:7;4814:23;4810:32;4807:119;;;4845:79;;:::i;:::-;4807:119;4965:1;4990:53;5035:7;5026:6;5015:9;5011:22;4990:53;:::i;:::-;4980:63;;4936:117;4731:329;;;;:::o;5066:619::-;5143:6;5151;5159;5208:2;5196:9;5187:7;5183:23;5179:32;5176:119;;;5214:79;;:::i;:::-;5176:119;5334:1;5359:53;5404:7;5395:6;5384:9;5380:22;5359:53;:::i;:::-;5349:63;;5305:117;5461:2;5487:53;5532:7;5523:6;5512:9;5508:22;5487:53;:::i;:::-;5477:63;;5432:118;5589:2;5615:53;5660:7;5651:6;5640:9;5636:22;5615:53;:::i;:::-;5605:63;;5560:118;5066:619;;;;;:::o;5691:86::-;5726:7;5766:4;5759:5;5755:16;5744:27;;5691:86;;;:::o;5783:112::-;5866:22;5882:5;5866:22;:::i;:::-;5861:3;5854:35;5783:112;;:::o;5901:214::-;5990:4;6028:2;6017:9;6013:18;6005:26;;6041:67;6105:1;6094:9;6090:17;6081:6;6041:67;:::i;:::-;5901:214;;;;:::o;6121:118::-;6208:24;6226:5;6208:24;:::i;:::-;6203:3;6196:37;6121:118;;:::o;6245:222::-;6338:4;6376:2;6365:9;6361:18;6353:26;;6389:71;6457:1;6446:9;6442:17;6433:6;6389:71;:::i;:::-;6245:222;;;;:::o;6473:329::-;6532:6;6581:2;6569:9;6560:7;6556:23;6552:32;6549:119;;;6587:79;;:::i;:::-;6549:119;6707:1;6732:53;6777:7;6768:6;6757:9;6753:22;6732:53;:::i;:::-;6722:63;;6678:117;6473:329;;;;:::o;6808:116::-;6878:21;6893:5;6878:21;:::i;:::-;6871:5;6868:32;6858:60;;6914:1;6911;6904:12;6858:60;6808:116;:::o;6930:133::-;6973:5;7011:6;6998:20;6989:29;;7027:30;7051:5;7027:30;:::i;:::-;6930:133;;;;:::o;7069:468::-;7134:6;7142;7191:2;7179:9;7170:7;7166:23;7162:32;7159:119;;;7197:79;;:::i;:::-;7159:119;7317:1;7342:50;7384:7;7375:6;7364:9;7360:22;7342:50;:::i;:::-;7332:60;;7288:114;7441:2;7467:53;7512:7;7503:6;7492:9;7488:22;7467:53;:::i;:::-;7457:63;;7412:118;7069:468;;;;;:::o;7543:::-;7608:6;7616;7665:2;7653:9;7644:7;7640:23;7636:32;7633:119;;;7671:79;;:::i;:::-;7633:119;7791:1;7816:53;7861:7;7852:6;7841:9;7837:22;7816:53;:::i;:::-;7806:63;;7762:117;7918:2;7944:50;7986:7;7977:6;7966:9;7962:22;7944:50;:::i;:::-;7934:60;;7889:115;7543:468;;;;;:::o;8017:474::-;8085:6;8093;8142:2;8130:9;8121:7;8117:23;8113:32;8110:119;;;8148:79;;:::i;:::-;8110:119;8268:1;8293:53;8338:7;8329:6;8318:9;8314:22;8293:53;:::i;:::-;8283:63;;8239:117;8395:2;8421:53;8466:7;8457:6;8446:9;8442:22;8421:53;:::i;:::-;8411:63;;8366:118;8017:474;;;;;:::o;8497:::-;8565:6;8573;8622:2;8610:9;8601:7;8597:23;8593:32;8590:119;;;8628:79;;:::i;:::-;8590:119;8748:1;8773:53;8818:7;8809:6;8798:9;8794:22;8773:53;:::i;:::-;8763:63;;8719:117;8875:2;8901:53;8946:7;8937:6;8926:9;8922:22;8901:53;:::i;:::-;8891:63;;8846:118;8497:474;;;;;:::o;8977:180::-;9025:77;9022:1;9015:88;9122:4;9119:1;9112:15;9146:4;9143:1;9136:15;9163:320;9207:6;9244:1;9238:4;9234:12;9224:22;;9291:1;9285:4;9281:12;9312:18;9302:81;;9368:4;9360:6;9356:17;9346:27;;9302:81;9430:2;9422:6;9419:14;9399:18;9396:38;9393:84;;9449:18;;:::i;:::-;9393:84;9214:269;9163:320;;;:::o;9489:174::-;9629:26;9625:1;9617:6;9613:14;9606:50;9489:174;:::o;9669:366::-;9811:3;9832:67;9896:2;9891:3;9832:67;:::i;:::-;9825:74;;9908:93;9997:3;9908:93;:::i;:::-;10026:2;10021:3;10017:12;10010:19;;9669:366;;;:::o;10041:419::-;10207:4;10245:2;10234:9;10230:18;10222:26;;10294:9;10288:4;10284:20;10280:1;10269:9;10265:17;10258:47;10322:131;10448:4;10322:131;:::i;:::-;10314:139;;10041:419;;;:::o;10466:180::-;10514:77;10511:1;10504:88;10611:4;10608:1;10601:15;10635:4;10632:1;10625:15;10652:410;10692:7;10715:20;10733:1;10715:20;:::i;:::-;10710:25;;10749:20;10767:1;10749:20;:::i;:::-;10744:25;;10804:1;10801;10797:9;10826:30;10844:11;10826:30;:::i;:::-;10815:41;;11005:1;10996:7;10992:15;10989:1;10986:22;10966:1;10959:9;10939:83;10916:139;;11035:18;;:::i;:::-;10916:139;10700:362;10652:410;;;;:::o;11068:180::-;11116:77;11113:1;11106:88;11213:4;11210:1;11203:15;11237:4;11234:1;11227:15;11254:185;11294:1;11311:20;11329:1;11311:20;:::i;:::-;11306:25;;11345:20;11363:1;11345:20;:::i;:::-;11340:25;;11384:1;11374:35;;11389:18;;:::i;:::-;11374:35;11431:1;11428;11424:9;11419:14;;11254:185;;;;:::o;11445:228::-;11585:34;11581:1;11573:6;11569:14;11562:58;11654:11;11649:2;11641:6;11637:15;11630:36;11445:228;:::o;11679:366::-;11821:3;11842:67;11906:2;11901:3;11842:67;:::i;:::-;11835:74;;11918:93;12007:3;11918:93;:::i;:::-;12036:2;12031:3;12027:12;12020:19;;11679:366;;;:::o;12051:419::-;12217:4;12255:2;12244:9;12240:18;12232:26;;12304:9;12298:4;12294:20;12290:1;12279:9;12275:17;12268:47;12332:131;12458:4;12332:131;:::i;:::-;12324:139;;12051:419;;;:::o;12476:191::-;12516:3;12535:20;12553:1;12535:20;:::i;:::-;12530:25;;12569:20;12587:1;12569:20;:::i;:::-;12564:25;;12612:1;12609;12605:9;12598:16;;12633:3;12630:1;12627:10;12624:36;;;12640:18;;:::i;:::-;12624:36;12476:191;;;;:::o;12673:176::-;12813:28;12809:1;12801:6;12797:14;12790:52;12673:176;:::o;12855:366::-;12997:3;13018:67;13082:2;13077:3;13018:67;:::i;:::-;13011:74;;13094:93;13183:3;13094:93;:::i;:::-;13212:2;13207:3;13203:12;13196:19;;12855:366;;;:::o;13227:419::-;13393:4;13431:2;13420:9;13416:18;13408:26;;13480:9;13474:4;13470:20;13466:1;13455:9;13451:17;13444:47;13508:131;13634:4;13508:131;:::i;:::-;13500:139;;13227:419;;;:::o;13652:167::-;13792:19;13788:1;13780:6;13776:14;13769:43;13652:167;:::o;13825:366::-;13967:3;13988:67;14052:2;14047:3;13988:67;:::i;:::-;13981:74;;14064:93;14153:3;14064:93;:::i;:::-;14182:2;14177:3;14173:12;14166:19;;13825:366;;;:::o;14197:419::-;14363:4;14401:2;14390:9;14386:18;14378:26;;14450:9;14444:4;14440:20;14436:1;14425:9;14421:17;14414:47;14478:131;14604:4;14478:131;:::i;:::-;14470:139;;14197:419;;;:::o;14622:175::-;14762:27;14758:1;14750:6;14746:14;14739:51;14622:175;:::o;14803:366::-;14945:3;14966:67;15030:2;15025:3;14966:67;:::i;:::-;14959:74;;15042:93;15131:3;15042:93;:::i;:::-;15160:2;15155:3;15151:12;15144:19;;14803:366;;;:::o;15175:419::-;15341:4;15379:2;15368:9;15364:18;15356:26;;15428:9;15422:4;15418:20;15414:1;15403:9;15399:17;15392:47;15456:131;15582:4;15456:131;:::i;:::-;15448:139;;15175:419;;;:::o;15600:320::-;15715:4;15753:2;15742:9;15738:18;15730:26;;15766:65;15828:1;15817:9;15813:17;15804:6;15766:65;:::i;:::-;15841:72;15909:2;15898:9;15894:18;15885:6;15841:72;:::i;:::-;15600:320;;;;;:::o;15926:181::-;16066:33;16062:1;16054:6;16050:14;16043:57;15926:181;:::o;16113:366::-;16255:3;16276:67;16340:2;16335:3;16276:67;:::i;:::-;16269:74;;16352:93;16441:3;16352:93;:::i;:::-;16470:2;16465:3;16461:12;16454:19;;16113:366;;;:::o;16485:419::-;16651:4;16689:2;16678:9;16674:18;16666:26;;16738:9;16732:4;16728:20;16724:1;16713:9;16709:17;16702:47;16766:131;16892:4;16766:131;:::i;:::-;16758:139;;16485:419;;;:::o;16910:226::-;17050:34;17046:1;17038:6;17034:14;17027:58;17119:9;17114:2;17106:6;17102:15;17095:34;16910:226;:::o;17142:366::-;17284:3;17305:67;17369:2;17364:3;17305:67;:::i;:::-;17298:74;;17381:93;17470:3;17381:93;:::i;:::-;17499:2;17494:3;17490:12;17483:19;;17142:366;;;:::o;17514:419::-;17680:4;17718:2;17707:9;17703:18;17695:26;;17767:9;17761:4;17757:20;17753:1;17742:9;17738:17;17731:47;17795:131;17921:4;17795:131;:::i;:::-;17787:139;;17514:419;;;:::o;17939:178::-;18079:30;18075:1;18067:6;18063:14;18056:54;17939:178;:::o;18123:366::-;18265:3;18286:67;18350:2;18345:3;18286:67;:::i;:::-;18279:74;;18362:93;18451:3;18362:93;:::i;:::-;18480:2;18475:3;18471:12;18464:19;;18123:366;;;:::o;18495:419::-;18661:4;18699:2;18688:9;18684:18;18676:26;;18748:9;18742:4;18738:20;18734:1;18723:9;18719:17;18712:47;18776:131;18902:4;18776:131;:::i;:::-;18768:139;;18495:419;;;:::o;18920:182::-;19060:34;19056:1;19048:6;19044:14;19037:58;18920:182;:::o;19108:366::-;19250:3;19271:67;19335:2;19330:3;19271:67;:::i;:::-;19264:74;;19347:93;19436:3;19347:93;:::i;:::-;19465:2;19460:3;19456:12;19449:19;;19108:366;;;:::o;19480:419::-;19646:4;19684:2;19673:9;19669:18;19661:26;;19733:9;19727:4;19723:20;19719:1;19708:9;19704:17;19697:47;19761:131;19887:4;19761:131;:::i;:::-;19753:139;;19480:419;;;:::o;19905:143::-;19962:5;19993:6;19987:13;19978:22;;20009:33;20036:5;20009:33;:::i;:::-;19905:143;;;;:::o;20054:351::-;20124:6;20173:2;20161:9;20152:7;20148:23;20144:32;20141:119;;;20179:79;;:::i;:::-;20141:119;20299:1;20324:64;20380:7;20371:6;20360:9;20356:22;20324:64;:::i;:::-;20314:74;;20270:128;20054:351;;;;:::o;20411:332::-;20532:4;20570:2;20559:9;20555:18;20547:26;;20583:71;20651:1;20640:9;20636:17;20627:6;20583:71;:::i;:::-;20664:72;20732:2;20721:9;20717:18;20708:6;20664:72;:::i;:::-;20411:332;;;;;:::o;20749:137::-;20803:5;20834:6;20828:13;20819:22;;20850:30;20874:5;20850:30;:::i;:::-;20749:137;;;;:::o;20892:345::-;20959:6;21008:2;20996:9;20987:7;20983:23;20979:32;20976:119;;;21014:79;;:::i;:::-;20976:119;21134:1;21159:61;21212:7;21203:6;21192:9;21188:22;21159:61;:::i;:::-;21149:71;;21105:125;20892:345;;;;:::o;21243:244::-;21383:34;21379:1;21371:6;21367:14;21360:58;21452:27;21447:2;21439:6;21435:15;21428:52;21243:244;:::o;21493:366::-;21635:3;21656:67;21720:2;21715:3;21656:67;:::i;:::-;21649:74;;21732:93;21821:3;21732:93;:::i;:::-;21850:2;21845:3;21841:12;21834:19;;21493:366;;;:::o;21865:419::-;22031:4;22069:2;22058:9;22054:18;22046:26;;22118:9;22112:4;22108:20;22104:1;22093:9;22089:17;22082:47;22146:131;22272:4;22146:131;:::i;:::-;22138:139;;21865:419;;;:::o;22290:85::-;22335:7;22364:5;22353:16;;22290:85;;;:::o;22381:158::-;22439:9;22472:61;22490:42;22499:32;22525:5;22499:32;:::i;:::-;22490:42;:::i;:::-;22472:61;:::i;:::-;22459:74;;22381:158;;;:::o;22545:147::-;22640:45;22679:5;22640:45;:::i;:::-;22635:3;22628:58;22545:147;;:::o;22698:807::-;22947:4;22985:3;22974:9;22970:19;22962:27;;22999:71;23067:1;23056:9;23052:17;23043:6;22999:71;:::i;:::-;23080:72;23148:2;23137:9;23133:18;23124:6;23080:72;:::i;:::-;23162:80;23238:2;23227:9;23223:18;23214:6;23162:80;:::i;:::-;23252;23328:2;23317:9;23313:18;23304:6;23252:80;:::i;:::-;23342:73;23410:3;23399:9;23395:19;23386:6;23342:73;:::i;:::-;23425;23493:3;23482:9;23478:19;23469:6;23425:73;:::i;:::-;22698:807;;;;;;;;;:::o;23511:663::-;23599:6;23607;23615;23664:2;23652:9;23643:7;23639:23;23635:32;23632:119;;;23670:79;;:::i;:::-;23632:119;23790:1;23815:64;23871:7;23862:6;23851:9;23847:22;23815:64;:::i;:::-;23805:74;;23761:128;23928:2;23954:64;24010:7;24001:6;23990:9;23986:22;23954:64;:::i;:::-;23944:74;;23899:129;24067:2;24093:64;24149:7;24140:6;24129:9;24125:22;24093:64;:::i;:::-;24083:74;;24038:129;23511:663;;;;;:::o;24180:224::-;24320:34;24316:1;24308:6;24304:14;24297:58;24389:7;24384:2;24376:6;24372:15;24365:32;24180:224;:::o;24410:366::-;24552:3;24573:67;24637:2;24632:3;24573:67;:::i;:::-;24566:74;;24649:93;24738:3;24649:93;:::i;:::-;24767:2;24762:3;24758:12;24751:19;;24410:366;;;:::o;24782:419::-;24948:4;24986:2;24975:9;24971:18;24963:26;;25035:9;25029:4;25025:20;25021:1;25010:9;25006:17;24999:47;25063:131;25189:4;25063:131;:::i;:::-;25055:139;;24782:419;;;:::o;25207:231::-;25347:34;25343:1;25335:6;25331:14;25324:58;25416:14;25411:2;25403:6;25399:15;25392:39;25207:231;:::o;25444:366::-;25586:3;25607:67;25671:2;25666:3;25607:67;:::i;:::-;25600:74;;25683:93;25772:3;25683:93;:::i;:::-;25801:2;25796:3;25792:12;25785:19;;25444:366;;;:::o;25816:419::-;25982:4;26020:2;26009:9;26005:18;25997:26;;26069:9;26063:4;26059:20;26055:1;26044:9;26040:17;26033:47;26097:131;26223:4;26097:131;:::i;:::-;26089:139;;25816:419;;;:::o;26241:229::-;26381:34;26377:1;26369:6;26365:14;26358:58;26450:12;26445:2;26437:6;26433:15;26426:37;26241:229;:::o;26476:366::-;26618:3;26639:67;26703:2;26698:3;26639:67;:::i;:::-;26632:74;;26715:93;26804:3;26715:93;:::i;:::-;26833:2;26828:3;26824:12;26817:19;;26476:366;;;:::o;26848:419::-;27014:4;27052:2;27041:9;27037:18;27029:26;;27101:9;27095:4;27091:20;27087:1;27076:9;27072:17;27065:47;27129:131;27255:4;27129:131;:::i;:::-;27121:139;;26848:419;;;:::o;27273:225::-;27413:34;27409:1;27401:6;27397:14;27390:58;27482:8;27477:2;27469:6;27465:15;27458:33;27273:225;:::o;27504:366::-;27646:3;27667:67;27731:2;27726:3;27667:67;:::i;:::-;27660:74;;27743:93;27832:3;27743:93;:::i;:::-;27861:2;27856:3;27852:12;27845:19;;27504:366;;;:::o;27876:419::-;28042:4;28080:2;28069:9;28065:18;28057:26;;28129:9;28123:4;28119:20;28115:1;28104:9;28100:17;28093:47;28157:131;28283:4;28157:131;:::i;:::-;28149:139;;27876:419;;;:::o;28301:181::-;28441:33;28437:1;28429:6;28425:14;28418:57;28301:181;:::o;28488:366::-;28630:3;28651:67;28715:2;28710:3;28651:67;:::i;:::-;28644:74;;28727:93;28816:3;28727:93;:::i;:::-;28845:2;28840:3;28836:12;28829:19;;28488:366;;;:::o;28860:419::-;29026:4;29064:2;29053:9;29049:18;29041:26;;29113:9;29107:4;29103:20;29099:1;29088:9;29084:17;29077:47;29141:131;29267:4;29141:131;:::i;:::-;29133:139;;28860:419;;;:::o;29285:168::-;29425:20;29421:1;29413:6;29409:14;29402:44;29285:168;:::o;29459:366::-;29601:3;29622:67;29686:2;29681:3;29622:67;:::i;:::-;29615:74;;29698:93;29787:3;29698:93;:::i;:::-;29816:2;29811:3;29807:12;29800:19;;29459:366;;;:::o;29831:419::-;29997:4;30035:2;30024:9;30020:18;30012:26;;30084:9;30078:4;30074:20;30070:1;30059:9;30055:17;30048:47;30112:131;30238:4;30112:131;:::i;:::-;30104:139;;29831:419;;;:::o;30256:147::-;30357:11;30394:3;30379:18;;30256:147;;;;:::o;30409:114::-;;:::o;30529:398::-;30688:3;30709:83;30790:1;30785:3;30709:83;:::i;:::-;30702:90;;30801:93;30890:3;30801:93;:::i;:::-;30919:1;30914:3;30910:11;30903:18;;30529:398;;;:::o;30933:379::-;31117:3;31139:147;31282:3;31139:147;:::i;:::-;31132:154;;31303:3;31296:10;;30933:379;;;:::o;31318:169::-;31458:21;31454:1;31446:6;31442:14;31435:45;31318:169;:::o;31493:366::-;31635:3;31656:67;31720:2;31715:3;31656:67;:::i;:::-;31649:74;;31732:93;31821:3;31732:93;:::i;:::-;31850:2;31845:3;31841:12;31834:19;;31493:366;;;:::o;31865:419::-;32031:4;32069:2;32058:9;32054:18;32046:26;;32118:9;32112:4;32108:20;32104:1;32093:9;32089:17;32082:47;32146:131;32272:4;32146:131;:::i;:::-;32138:139;;31865:419;;;:::o;32290:223::-;32430:34;32426:1;32418:6;32414:14;32407:58;32499:6;32494:2;32486:6;32482:15;32475:31;32290:223;:::o;32519:366::-;32661:3;32682:67;32746:2;32741:3;32682:67;:::i;:::-;32675:74;;32758:93;32847:3;32758:93;:::i;:::-;32876:2;32871:3;32867:12;32860:19;;32519:366;;;:::o;32891:419::-;33057:4;33095:2;33084:9;33080:18;33072:26;;33144:9;33138:4;33134:20;33130:1;33119:9;33115:17;33108:47;33172:131;33298:4;33172:131;:::i;:::-;33164:139;;32891:419;;;:::o;33316:221::-;33456:34;33452:1;33444:6;33440:14;33433:58;33525:4;33520:2;33512:6;33508:15;33501:29;33316:221;:::o;33543:366::-;33685:3;33706:67;33770:2;33765:3;33706:67;:::i;:::-;33699:74;;33782:93;33871:3;33782:93;:::i;:::-;33900:2;33895:3;33891:12;33884:19;;33543:366;;;:::o;33915:419::-;34081:4;34119:2;34108:9;34104:18;34096:26;;34168:9;34162:4;34158:20;34154:1;34143:9;34139:17;34132:47;34196:131;34322:4;34196:131;:::i;:::-;34188:139;;33915:419;;;:::o;34340:182::-;34480:34;34476:1;34468:6;34464:14;34457:58;34340:182;:::o;34528:366::-;34670:3;34691:67;34755:2;34750:3;34691:67;:::i;:::-;34684:74;;34767:93;34856:3;34767:93;:::i;:::-;34885:2;34880:3;34876:12;34869:19;;34528:366;;;:::o;34900:419::-;35066:4;35104:2;35093:9;35089:18;35081:26;;35153:9;35147:4;35143:20;35139:1;35128:9;35124:17;35117:47;35181:131;35307:4;35181:131;:::i;:::-;35173:139;;34900:419;;;:::o;35325:179::-;35465:31;35461:1;35453:6;35449:14;35442:55;35325:179;:::o;35510:366::-;35652:3;35673:67;35737:2;35732:3;35673:67;:::i;:::-;35666:74;;35749:93;35838:3;35749:93;:::i;:::-;35867:2;35862:3;35858:12;35851:19;;35510:366;;;:::o;35882:419::-;36048:4;36086:2;36075:9;36071:18;36063:26;;36135:9;36129:4;36125:20;36121:1;36110:9;36106:17;36099:47;36163:131;36289:4;36163:131;:::i;:::-;36155:139;;35882:419;;;:::o;36307:224::-;36447:34;36443:1;36435:6;36431:14;36424:58;36516:7;36511:2;36503:6;36499:15;36492:32;36307:224;:::o;36537:366::-;36679:3;36700:67;36764:2;36759:3;36700:67;:::i;:::-;36693:74;;36776:93;36865:3;36776:93;:::i;:::-;36894:2;36889:3;36885:12;36878:19;;36537:366;;;:::o;36909:419::-;37075:4;37113:2;37102:9;37098:18;37090:26;;37162:9;37156:4;37152:20;37148:1;37137:9;37133:17;37126:47;37190:131;37316:4;37190:131;:::i;:::-;37182:139;;36909:419;;;:::o;37334:222::-;37474:34;37470:1;37462:6;37458:14;37451:58;37543:5;37538:2;37530:6;37526:15;37519:30;37334:222;:::o;37562:366::-;37704:3;37725:67;37789:2;37784:3;37725:67;:::i;:::-;37718:74;;37801:93;37890:3;37801:93;:::i;:::-;37919:2;37914:3;37910:12;37903:19;;37562:366;;;:::o;37934:419::-;38100:4;38138:2;38127:9;38123:18;38115:26;;38187:9;38181:4;38177:20;38173:1;38162:9;38158:17;38151:47;38215:131;38341:4;38215:131;:::i;:::-;38207:139;;37934:419;;;:::o;38359:179::-;38499:31;38495:1;38487:6;38483:14;38476:55;38359:179;:::o;38544:366::-;38686:3;38707:67;38771:2;38766:3;38707:67;:::i;:::-;38700:74;;38783:93;38872:3;38783:93;:::i;:::-;38901:2;38896:3;38892:12;38885:19;;38544:366;;;:::o;38916:419::-;39082:4;39120:2;39109:9;39105:18;39097:26;;39169:9;39163:4;39159:20;39155:1;39144:9;39140:17;39133:47;39197:131;39323:4;39197:131;:::i;:::-;39189:139;;38916:419;;;:::o;39341:194::-;39381:4;39401:20;39419:1;39401:20;:::i;:::-;39396:25;;39435:20;39453:1;39435:20;:::i;:::-;39430:25;;39479:1;39476;39472:9;39464:17;;39503:1;39497:4;39494:11;39491:37;;;39508:18;;:::i;:::-;39491:37;39341:194;;;;:::o;39541:181::-;39681:33;39677:1;39669:6;39665:14;39658:57;39541:181;:::o;39728:366::-;39870:3;39891:67;39955:2;39950:3;39891:67;:::i;:::-;39884:74;;39967:93;40056:3;39967:93;:::i;:::-;40085:2;40080:3;40076:12;40069:19;;39728:366;;;:::o;40100:419::-;40266:4;40304:2;40293:9;40289:18;40281:26;;40353:9;40347:4;40343:20;40339:1;40328:9;40324:17;40317:47;40381:131;40507:4;40381:131;:::i;:::-;40373:139;;40100:419;;;:::o;40525:171::-;40665:23;40661:1;40653:6;40649:14;40642:47;40525:171;:::o;40702:366::-;40844:3;40865:67;40929:2;40924:3;40865:67;:::i;:::-;40858:74;;40941:93;41030:3;40941:93;:::i;:::-;41059:2;41054:3;41050:12;41043:19;;40702:366;;;:::o;41074:419::-;41240:4;41278:2;41267:9;41263:18;41255:26;;41327:9;41321:4;41317:20;41313:1;41302:9;41298:17;41291:47;41355:131;41481:4;41355:131;:::i;:::-;41347:139;;41074:419;;;:::o;41499:172::-;41639:24;41635:1;41627:6;41623:14;41616:48;41499:172;:::o;41677:366::-;41819:3;41840:67;41904:2;41899:3;41840:67;:::i;:::-;41833:74;;41916:93;42005:3;41916:93;:::i;:::-;42034:2;42029:3;42025:12;42018:19;;41677:366;;;:::o;42049:419::-;42215:4;42253:2;42242:9;42238:18;42230:26;;42302:9;42296:4;42292:20;42288:1;42277:9;42273:17;42266:47;42330:131;42456:4;42330:131;:::i;:::-;42322:139;;42049:419;;;:::o;42474:226::-;42614:34;42610:1;42602:6;42598:14;42591:58;42683:9;42678:2;42670:6;42666:15;42659:34;42474:226;:::o;42706:366::-;42848:3;42869:67;42933:2;42928:3;42869:67;:::i;:::-;42862:74;;42945:93;43034:3;42945:93;:::i;:::-;43063:2;43058:3;43054:12;43047:19;;42706:366;;;:::o;43078:419::-;43244:4;43282:2;43271:9;43267:18;43259:26;;43331:9;43325:4;43321:20;43317:1;43306:9;43302:17;43295:47;43359:131;43485:4;43359:131;:::i;:::-;43351:139;;43078:419;;;:::o;43503:174::-;43643:26;43639:1;43631:6;43627:14;43620:50;43503:174;:::o;43683:366::-;43825:3;43846:67;43910:2;43905:3;43846:67;:::i;:::-;43839:74;;43922:93;44011:3;43922:93;:::i;:::-;44040:2;44035:3;44031:12;44024:19;;43683:366;;;:::o;44055:419::-;44221:4;44259:2;44248:9;44244:18;44236:26;;44308:9;44302:4;44298:20;44294:1;44283:9;44279:17;44272:47;44336:131;44462:4;44336:131;:::i;:::-;44328:139;;44055:419;;;:::o;44480:228::-;44620:34;44616:1;44608:6;44604:14;44597:58;44689:11;44684:2;44676:6;44672:15;44665:36;44480:228;:::o;44714:366::-;44856:3;44877:67;44941:2;44936:3;44877:67;:::i;:::-;44870:74;;44953:93;45042:3;44953:93;:::i;:::-;45071:2;45066:3;45062:12;45055:19;;44714:366;;;:::o;45086:419::-;45252:4;45290:2;45279:9;45275:18;45267:26;;45339:9;45333:4;45329:20;45325:1;45314:9;45310:17;45303:47;45367:131;45493:4;45367:131;:::i;:::-;45359:139;;45086:419;;;:::o;45511:228::-;45651:34;45647:1;45639:6;45635:14;45628:58;45720:11;45715:2;45707:6;45703:15;45696:36;45511:228;:::o;45745:366::-;45887:3;45908:67;45972:2;45967:3;45908:67;:::i;:::-;45901:74;;45984:93;46073:3;45984:93;:::i;:::-;46102:2;46097:3;46093:12;46086:19;;45745:366;;;:::o;46117:419::-;46283:4;46321:2;46310:9;46306:18;46298:26;;46370:9;46364:4;46360:20;46356:1;46345:9;46341:17;46334:47;46398:131;46524:4;46398:131;:::i;:::-;46390:139;;46117:419;;;:::o;46542:225::-;46682:34;46678:1;46670:6;46666:14;46659:58;46751:8;46746:2;46738:6;46734:15;46727:33;46542:225;:::o;46773:366::-;46915:3;46936:67;47000:2;46995:3;46936:67;:::i;:::-;46929:74;;47012:93;47101:3;47012:93;:::i;:::-;47130:2;47125:3;47121:12;47114:19;;46773:366;;;:::o;47145:419::-;47311:4;47349:2;47338:9;47334:18;47326:26;;47398:9;47392:4;47388:20;47384:1;47373:9;47369:17;47362:47;47426:131;47552:4;47426:131;:::i;:::-;47418:139;;47145:419;;;:::o;47570:180::-;47618:77;47615:1;47608:88;47715:4;47712:1;47705:15;47739:4;47736:1;47729:15;47756:180;47804:77;47801:1;47794:88;47901:4;47898:1;47891:15;47925:4;47922:1;47915:15;47942:143;47999:5;48030:6;48024:13;48015:22;;48046:33;48073:5;48046:33;:::i;:::-;47942:143;;;;:::o;48091:351::-;48161:6;48210:2;48198:9;48189:7;48185:23;48181:32;48178:119;;;48216:79;;:::i;:::-;48178:119;48336:1;48361:64;48417:7;48408:6;48397:9;48393:22;48361:64;:::i;:::-;48351:74;;48307:128;48091:351;;;;:::o;48448:114::-;48515:6;48549:5;48543:12;48533:22;;48448:114;;;:::o;48568:184::-;48667:11;48701:6;48696:3;48689:19;48741:4;48736:3;48732:14;48717:29;;48568:184;;;;:::o;48758:132::-;48825:4;48848:3;48840:11;;48878:4;48873:3;48869:14;48861:22;;48758:132;;;:::o;48896:108::-;48973:24;48991:5;48973:24;:::i;:::-;48968:3;48961:37;48896:108;;:::o;49010:179::-;49079:10;49100:46;49142:3;49134:6;49100:46;:::i;:::-;49178:4;49173:3;49169:14;49155:28;;49010:179;;;;:::o;49195:113::-;49265:4;49297;49292:3;49288:14;49280:22;;49195:113;;;:::o;49344:732::-;49463:3;49492:54;49540:5;49492:54;:::i;:::-;49562:86;49641:6;49636:3;49562:86;:::i;:::-;49555:93;;49672:56;49722:5;49672:56;:::i;:::-;49751:7;49782:1;49767:284;49792:6;49789:1;49786:13;49767:284;;;49868:6;49862:13;49895:63;49954:3;49939:13;49895:63;:::i;:::-;49888:70;;49981:60;50034:6;49981:60;:::i;:::-;49971:70;;49827:224;49814:1;49811;49807:9;49802:14;;49767:284;;;49771:14;50067:3;50060:10;;49468:608;;;49344:732;;;;:::o;50082:831::-;50345:4;50383:3;50372:9;50368:19;50360:27;;50397:71;50465:1;50454:9;50450:17;50441:6;50397:71;:::i;:::-;50478:80;50554:2;50543:9;50539:18;50530:6;50478:80;:::i;:::-;50605:9;50599:4;50595:20;50590:2;50579:9;50575:18;50568:48;50633:108;50736:4;50727:6;50633:108;:::i;:::-;50625:116;;50751:72;50819:2;50808:9;50804:18;50795:6;50751:72;:::i;:::-;50833:73;50901:3;50890:9;50886:19;50877:6;50833:73;:::i;:::-;50082:831;;;;;;;;:::o
Swarm Source
ipfs://68d518f2152aa1dd64689b9ea5ebc2f087d0bf5d8203c2a3e048293b29a59634
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.
Add Token to MetaMask (Web3)