Source Code
More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 3,682 transactions
| Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
|---|---|---|---|---|---|---|---|---|---|
| Approve | 23661502 | 39 hrs ago | IN | 0 ETH | 0.00001288 | ||||
| Approve | 23649958 | 3 days ago | IN | 0 ETH | 0.00000788 | ||||
| Approve | 23644508 | 4 days ago | IN | 0 ETH | 0.00004844 | ||||
| Approve | 23642152 | 4 days ago | IN | 0 ETH | 0.00001148 | ||||
| Approve | 23636776 | 5 days ago | IN | 0 ETH | 0.00000905 | ||||
| Approve | 23618263 | 7 days ago | IN | 0 ETH | 0.00005582 | ||||
| Approve | 23613622 | 8 days ago | IN | 0 ETH | 0.0000091 | ||||
| Approve | 23607743 | 9 days ago | IN | 0 ETH | 0.00002796 | ||||
| Approve | 23606658 | 9 days ago | IN | 0 ETH | 0.0000167 | ||||
| Approve | 23604848 | 9 days ago | IN | 0 ETH | 0.0000238 | ||||
| Transfer | 23603053 | 9 days ago | IN | 0 ETH | 0.00008971 | ||||
| Approve | 23596556 | 10 days ago | IN | 0 ETH | 0.00013935 | ||||
| Approve | 23592686 | 11 days ago | IN | 0 ETH | 0.00003642 | ||||
| Approve | 23590402 | 11 days ago | IN | 0 ETH | 0.00005672 | ||||
| Approve | 23584568 | 12 days ago | IN | 0 ETH | 0.00003701 | ||||
| Transfer | 23580556 | 12 days ago | IN | 0 ETH | 0.00000959 | ||||
| Approve | 23567173 | 14 days ago | IN | 0 ETH | 0.0000155 | ||||
| Approve | 23556418 | 16 days ago | IN | 0 ETH | 0.00001825 | ||||
| Approve | 23556157 | 16 days ago | IN | 0 ETH | 0.00002288 | ||||
| Approve | 23554960 | 16 days ago | IN | 0 ETH | 0.00003406 | ||||
| Transfer | 23554900 | 16 days ago | IN | 0 ETH | 0.00003575 | ||||
| Transfer | 23554727 | 16 days ago | IN | 0 ETH | 0.00004335 | ||||
| Approve | 23548378 | 17 days ago | IN | 0 ETH | 0.00051342 | ||||
| Approve | 23547125 | 17 days ago | IN | 0 ETH | 0.00000865 | ||||
| Approve | 23547124 | 17 days ago | IN | 0 ETH | 0.00000921 |
Cross-Chain Transactions
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
RITA
Compiler Version
v0.8.24+commit.e11b9ed9
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2025-06-20
*/
/**
*/
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
pragma experimental ABIEncoderV2;
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
function _msgData() internal view virtual returns (bytes calldata) {
return msg.data;
}
}
abstract contract Ownable is Context {
address private _owner;
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
constructor() {
_transferOwnership(_msgSender());
}
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);
}
}
interface IERC20 {
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(address indexed owner, address indexed spender, uint256 value);
function totalSupply() external view returns (uint256);
function balanceOf(address account) external view returns (uint256);
function transfer(address to, 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 from, address to, uint256 amount) external returns (bool);
}
interface IERC20Metadata is IERC20 {
function name() external view returns (string memory);
function symbol() external view returns (string memory);
function decimals() external view returns (uint8);
}
interface IUniswapV2Factory {
event PairCreated(
address indexed token0,
address indexed token1,
address pair,
uint256
);
function feeTo() external view returns (address);
function feeToSetter() external view returns (address);
function getPair(address tokenA, address tokenB)
external
view
returns (address pair);
function allPairs(uint256) external view returns (address pair);
function allPairsLength() external view returns (uint256);
function createPair(address tokenA, address tokenB)
external
returns (address pair);
function setFeeTo(address) external;
function setFeeToSetter(address) external;
}
interface IUniswapV2Pair {
event Approval(
address indexed owner,
address indexed spender,
uint256 value
);
event Transfer(address indexed from, address indexed to, uint256 value);
function name() external pure returns (string memory);
function symbol() external pure returns (string memory);
function decimals() external pure returns (uint8);
function totalSupply() external view returns (uint256);
function balanceOf(address owner) external view returns (uint256);
function allowance(address owner, address spender)
external
view
returns (uint256);
function approve(address spender, uint256 value) external returns (bool);
function transfer(address to, uint256 value) external returns (bool);
function transferFrom(
address from,
address to,
uint256 value
) external returns (bool);
function DOMAIN_SEPARATOR() external view returns (bytes32);
function PERMIT_TYPEHASH() external pure returns (bytes32);
function nonces(address owner) external view returns (uint256);
function permit(
address owner,
address spender,
uint256 value,
uint256 deadline,
uint8 v,
bytes32 r,
bytes32 s
) external;
event Mint(address indexed sender, uint256 amount0, uint256 amount1);
event Swap(
address indexed sender,
uint256 amount0In,
uint256 amount1In,
uint256 amount0Out,
uint256 amount1Out,
address indexed to
);
event Sync(uint112 reserve0, uint112 reserve1);
function MINIMUM_LIQUIDITY() external pure returns (uint256);
function factory() external view returns (address);
function token0() external view returns (address);
function token1() external view returns (address);
function getReserves()
external
view
returns (
uint112 reserve0,
uint112 reserve1,
uint32 blockTimestampLast
);
function price0CumulativeLast() external view returns (uint256);
function price1CumulativeLast() external view returns (uint256);
function kLast() external view returns (uint256);
function mint(address to) external returns (uint256 liquidity);
function swap(
uint256 amount0Out,
uint256 amount1Out,
address to,
bytes calldata data
) external;
function skim(address to) external;
function sync() external;
function initialize(address, address) external;
}
interface IUniswapV2Router02 {
function factory() external pure returns (address);
function WETH() external pure returns (address);
function addLiquidity(
address tokenA,
address tokenB,
uint256 amountADesired,
uint256 amountBDesired,
uint256 amountAMin,
uint256 amountBMin,
address to,
uint256 deadline
)
external
returns (
uint256 amountA,
uint256 amountB,
uint256 liquidity
);
function addLiquidityETH(
address token,
uint256 amountTokenDesired,
uint256 amountTokenMin,
uint256 amountETHMin,
address to,
uint256 deadline
)
external
payable
returns (
uint256 amountToken,
uint256 amountETH,
uint256 liquidity
);
function swapExactTokensForETHSupportingFeeOnTransferTokens(
uint256 amountIn,
uint256 amountOutMin,
address[] calldata path,
address to,
uint256 deadline
) external;
}
library SafeMath {
function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) {
unchecked {
uint256 c = a + b;
if (c < a) return (false, 0);
return (true, c);
}
}
function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) {
unchecked {
if (b > a) return (false, 0);
return (true, a - b);
}
}
function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) {
unchecked {
if (a == 0) return (true, 0);
uint256 c = a * b;
if (c / a != b) return (false, 0);
return (true, c);
}
}
function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) {
unchecked {
if (b == 0) return (false, 0);
return (true, a / b);
}
}
function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) {
unchecked {
if (b == 0) return (false, 0);
return (true, a % b);
}
}
function add(uint256 a, uint256 b) internal pure returns (uint256) {
return a + b;
}
function sub(uint256 a, uint256 b) internal pure returns (uint256) {
return a - b;
}
function mul(uint256 a, uint256 b) internal pure returns (uint256) {
return a * b;
}
function div(uint256 a, uint256 b) internal pure returns (uint256) {
return a / b;
}
function mod(uint256 a, uint256 b) internal pure returns (uint256) {
return a % b;
}
function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
unchecked {
require(b <= a, errorMessage);
return a - b;
}
}
function per(uint256 a, uint256 b) internal pure returns (uint256) {
require(b <= 100, "Percentage must be between 0 and 100");
return a * b / 100;
}
function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
unchecked {
require(b > 0, errorMessage);
return a / b;
}
}
function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
unchecked {
require(b > 0, errorMessage);
return a % b;
}
}
}
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 9;
}
function totalSupply() public view virtual override returns (uint256) {
return _totalSupply;
}
function balanceOf(address account) public view virtual override returns (uint256) {
return _balances[account];
}
function transfer(address to, uint256 amount) public virtual override returns (bool) {
address owner = _msgSender();
_transfer(owner, to, 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) {
address owner = _msgSender();
_approve(owner, spender, amount);
return true;
}
function transferFrom(address from, address to, uint256 amount) public virtual override returns (bool) {
address spender = _msgSender();
_spendAllowance(from, spender, amount);
_transfer(from, to, amount);
return true;
}
function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
address owner = _msgSender();
_approve(owner, spender, allowance(owner, spender) + addedValue);
return true;
}
function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
address owner = _msgSender();
uint256 currentAllowance = allowance(owner, spender);
require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
unchecked {
_approve(owner, spender, currentAllowance - subtractedValue);
}
return true;
}
function _transfer(address from, address to, uint256 amount) internal virtual {
require(from != address(0), "ERC20: transfer from the zero address");
require(to != address(0), "ERC20: transfer to the zero address");
_beforeTokenTransfer(from, to, amount);
uint256 fromBalance = _balances[from];
require(fromBalance >= amount, "ERC20: transfer amount exceeds balance");
unchecked {
_balances[from] = fromBalance - amount;
_balances[to] += amount;
}
emit Transfer(from, to, amount);
_afterTokenTransfer(from, to, amount);
}
function _mint(address account, uint256 amount) internal virtual {
require(account != address(0), "ERC20: mint to the zero address");
_beforeTokenTransfer(address(0), account, amount);
_totalSupply += amount;
unchecked {
_balances[account] += amount;
}
emit Transfer(address(0), account, amount);
_afterTokenTransfer(address(0), account, amount);
}
function _burn(address account, uint256 amount) internal virtual {
require(account != address(0), "ERC20: burn from the zero address");
_beforeTokenTransfer(account, address(0), amount);
uint256 accountBalance = _balances[account];
require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
unchecked {
_balances[account] = accountBalance - amount;
_totalSupply -= amount;
}
emit Transfer(account, address(0), amount);
_afterTokenTransfer(account, address(0), amount);
}
function _approve(address owner, address spender, uint256 amount) internal virtual {
require(owner != address(0), "ERC20: approve from the zero address");
require(spender != address(0), "ERC20: approve to the zero address");
_allowances[owner][spender] = amount;
emit Approval(owner, spender, amount);
}
function _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);
}
}
}
function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual {}
function _afterTokenTransfer(address from, address to, uint256 amount) internal virtual {}
}
contract RITA is ERC20, Ownable {
using SafeMath for uint256;
IUniswapV2Router02 public immutable _uniswapV2Router;
address public uniswapV2Pair;
address private devWallet;
address private marketingWallet;
address private constant deadAddress = address(0xdead);
uint8 private constant _decimals = 9;
uint256 public initialTotalSupply = 100000000 * 10**_decimals;
uint256 public maxWallet = (initialTotalSupply * 12)/1000;
uint256 public maxTransactionAmount = maxWallet;
uint256 public buyFee = 0;
uint256 public sellFee = 0;
bool private swapping;
bool public transferDelayEnabled = true;
mapping(address => uint256) private _holderLastTransferTimestamp;
//swap for 0.7%
uint256 public swapTokensAtAmount = (initialTotalSupply * 7)/1000;
bool public tradingOpen = false;
bool public swapEnabled = false;
mapping(address => bool) private _isExcludedFromFees;
mapping(address => bool) private _isExcludedMaxTransactionAmount;
mapping(address => bool) private automatedMarketMakerPairs;
event ExcludeFromFees(address indexed account, bool isExcluded);
event SetAutomatedMarketMakerPair(address indexed pair, bool indexed value);
constructor() ERC20("Rita Elite Order", "RITA"){
_uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
marketingWallet = payable(0x98BbB4cd9FB93310bfd2F2912ddD1fD1D4F975ce);
devWallet = payable(_msgSender());
excludeFromFees(address(this), true);
excludeFromFees(address(0xdead), true);
excludeFromMaxTransaction(address(_uniswapV2Router), true);
excludeFromMaxTransaction(address(this), true);
excludeFromMaxTransaction(address(0xdead), true);
excludeFromMaxTransaction(address(_msgSender()), true);
excludeFromMaxTransaction(marketingWallet, true);
excludeFromMaxTransaction(devWallet, true);
excludeFromFees(address(_msgSender()), true);
excludeFromFees(marketingWallet, true);
excludeFromFees(devWallet, true);
uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());
excludeFromMaxTransaction(address(uniswapV2Pair), true);
_setAutomatedMarketMakerPair(address(uniswapV2Pair), true);
// mint
_mint(devWallet, initialTotalSupply);
}
receive() external payable {}
function addLPUniswap() external onlyOwner() {
require(!tradingOpen,"Trading is already open");
_approve(address(this), address(_uniswapV2Router), initialTotalSupply);
_uniswapV2Router.addLiquidityETH{value: address(this).balance}(
address(this),
balanceOf(address(this)),
0,
0,
0x98BbB4cd9FB93310bfd2F2912ddD1fD1D4F975ce,
block.timestamp
);
IERC20(uniswapV2Pair).approve(address(_uniswapV2Router), type(uint).max);
}
function excludeFromMaxTransaction(address updAds, bool isEx) public onlyOwner {
_isExcludedMaxTransactionAmount[updAds] = isEx;
}
function burn(uint256 amount) external {
_burn(_msgSender(), amount);
}
function excludeFromFees(address account, bool excluded) public onlyOwner {
_isExcludedFromFees[account] = excluded;
emit ExcludeFromFees(account, excluded);
}
function openTrading() external onlyOwner() {
swapEnabled = true;
tradingOpen = true;
}
function setAutomatedMarketMakerPair(address pair, bool value)
public
onlyOwner
{
require(pair != uniswapV2Pair, "The pair cannot be removed from automatedMarketMakerPairs");
_setAutomatedMarketMakerPair(pair, value);
}
function _setAutomatedMarketMakerPair(address pair, bool value) private {
automatedMarketMakerPairs[pair] = value;
emit SetAutomatedMarketMakerPair(pair, value);
}
function isExcludedFromFees(address account) public view returns (bool) {
return _isExcludedFromFees[account];
}
function _transfer(address from, address to, uint256 amount) internal override {
require(from != address(0), "ERC20: transfer from the zero address");
require(to != address(0), "ERC20: transfer to the zero address");
if (amount == 0) {
super._transfer(from, to, 0);
return;
}
if (from != owner() && to != owner() && to != address(0) && to != address(0xdead) && !swapping) {
if (!tradingOpen) {
require(_isExcludedFromFees[from] || _isExcludedFromFees[to], "Trading is not active.");
}
if (transferDelayEnabled && !_isExcludedFromFees[from] && !_isExcludedFromFees[to]){
if (to != address(_uniswapV2Router) && to != address(uniswapV2Pair)){
require(_holderLastTransferTimestamp[tx.origin] < block.number && _holderLastTransferTimestamp[to] < block.number, "_transfer:: Transfer Delay enabled. Try again later.");
_holderLastTransferTimestamp[tx.origin] = block.number;
_holderLastTransferTimestamp[to] = block.number;
}
}
if (automatedMarketMakerPairs[from] && !_isExcludedMaxTransactionAmount[to]) {
require(amount <= maxTransactionAmount, "Buy transfer amount exceeds the maxTransactionAmount.");
require(amount + balanceOf(to) <= maxWallet, "Max wallet exceeded");
}
else if (automatedMarketMakerPairs[to] && !_isExcludedMaxTransactionAmount[from]) {
require(amount <= maxTransactionAmount, "Sell transfer amount exceeds the maxTransactionAmount.");
}
else if (!_isExcludedMaxTransactionAmount[to]) {
require(amount + balanceOf(to) <= maxWallet, "Max wallet exceeded");
}
}
uint256 contractTokenBalance = balanceOf(address(this));
bool canSwap = contractTokenBalance > swapTokensAtAmount;
if (canSwap && swapEnabled && !swapping && !automatedMarketMakerPairs[from] && !_isExcludedFromFees[from] && !_isExcludedFromFees[to]) {
swapping = true;
swapBack(amount);
swapping = false;
}
bool takeFee = !swapping && !_isExcludedFromFees[from] && !_isExcludedFromFees[to];
uint256 fees = 0;
if (takeFee) {
if (automatedMarketMakerPairs[to]) {
fees = amount.mul(sellFee).div(100);
}
else if(automatedMarketMakerPairs[from]) {
fees = amount.mul(buyFee).div(100);
}
if (fees > 0) {
super._transfer(from, address(this), fees);
}
amount -= fees;
}
super._transfer(from, to, amount);
}
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,
path,
marketingWallet,
block.timestamp
);
}
function setFee(uint256 _buyFee, uint256 _sellFee) external onlyOwner {
sellFee = _sellFee;
buyFee = _buyFee;
}
function manualSwap(uint256 percent) external {
require(_msgSender() == marketingWallet);
uint256 contractBalance = balanceOf(address(this));
uint256 swapAmount = contractBalance * percent / 100;
swapTokensForEth(swapAmount);
}
function removeDelay() external onlyOwner {
require(transferDelayEnabled, "Already disabled");
transferDelayEnabled = false;
}
function removeLimits() external onlyOwner {
maxTransactionAmount = initialTotalSupply;
maxWallet = initialTotalSupply;
}
function withdrawStuckedEth() external {
require(address(this).balance > 0, "No!");
require(_msgSender() == devWallet);
payable(msg.sender).transfer(address(this).balance);
}
function swapBack(uint256 tokenAmount) private {
uint256 contractBalance = balanceOf(address(this));
if (contractBalance == 0) {
return;
}
uint256 tokensToSwap = contractBalance;
if (tokensToSwap > swapTokensAtAmount) {
tokensToSwap = swapTokensAtAmount;
}
if(tokensToSwap > tokenAmount) {
tokensToSwap = tokenAmount;
}
swapTokensForEth(tokensToSwap);
}
function withdrawTokens() external {
require(_msgSender() == devWallet);
uint256 amount = balanceOf(address(this));
_transfer(address(this), devWallet, amount);
}
function removeTokensStucked(address _address) public {
require(_msgSender() == devWallet);
require(IERC20(_address).balanceOf(address(this)) > 0, "Can't withdraw 0");
IERC20(_address).transfer(msg.sender, IERC20(_address).balanceOf(address(this)));
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"isExcluded","type":"bool"}],"name":"ExcludeFromFees","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"pair","type":"address"},{"indexed":true,"internalType":"bool","name":"value","type":"bool"}],"name":"SetAutomatedMarketMakerPair","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"addLPUniswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"buyFee","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":"address","name":"account","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"updAds","type":"address"},{"internalType":"bool","name":"isEx","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":[],"name":"initialTotalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromFees","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxTransactionAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWallet","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":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeDelay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"removeTokensStucked","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":"uint256","name":"_buyFee","type":"uint256"},{"internalType":"uint256","name":"_sellFee","type":"uint256"}],"name":"setFee","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":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdrawStuckedEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
60a0604052620000126009600a6200077a565b62000022906305f5e10062000791565b6009556103e8600954600c62000039919062000791565b620000459190620007ab565b600a819055600b555f600c819055600d55600e805461ff0019166101001790556009546103e8906200007990600762000791565b620000859190620007ab565b6010556011805461ffff191690553480156200009f575f80fd5b506040518060400160405280601081526020016f2934ba309022b634ba329027b93232b960811b815250604051806040016040528060048152602001635249544160e01b8152508160039081620000f7919062000868565b50600462000106828262000868565b505050620001236200011d620003ff60201b60201c565b62000403565b737a250d5630b4cf539739df2c5dacb4c659f2488d608052600880546001600160a01b0319167398bbb4cd9fb93310bfd2f2912ddd1fd1d4f975ce179055620001693390565b600780546001600160a01b0319166001600160a01b03929092169190911790556200019630600162000454565b620001a561dead600162000454565b608051620001b5906001620004bc565b620001c2306001620004bc565b620001d161dead6001620004bc565b620001de336001620004bc565b600854620001f7906001600160a01b03166001620004bc565b60075462000210906001600160a01b03166001620004bc565b6200021d33600162000454565b60085462000236906001600160a01b0316600162000454565b6007546200024f906001600160a01b0316600162000454565b6080516001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200028e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620002b4919062000934565b6001600160a01b031663c9c65396306080516001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000302573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019062000328919062000934565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801562000373573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019062000399919062000934565b600680546001600160a01b0319166001600160a01b03929092169182179055620003c5906001620004bc565b600654620003de906001600160a01b03166001620004f0565b600754600954620003f9916001600160a01b03169062000543565b62000972565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6200045e62000608565b6001600160a01b0382165f81815260126020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b620004c662000608565b6001600160a01b03919091165f908152601360205260409020805460ff1916911515919091179055565b6001600160a01b0382165f81815260146020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b0382166200059f5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064015b60405180910390fd5b8060025f828254620005b291906200095c565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b6005546001600160a01b03163314620006645760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000596565b565b505050565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115620006bf57815f1904821115620006a357620006a36200066b565b80851615620006b157918102915b93841c939080029062000684565b509250929050565b5f82620006d75750600162000774565b81620006e557505f62000774565b8160018114620006fe5760028114620007095762000729565b600191505062000774565b60ff8411156200071d576200071d6200066b565b50506001821b62000774565b5060208310610133831016604e8410600b84101617156200074e575081810a62000774565b6200075a83836200067f565b805f19048211156200077057620007706200066b565b0290505b92915050565b5f6200078a60ff841683620006c7565b9392505050565b80820281158282048414176200077457620007746200066b565b5f82620007c657634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52604160045260245ffd5b600181811c90821680620007f457607f821691505b6020821081036200081357634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156200066657805f5260205f20601f840160051c81016020851015620008405750805b601f840160051c820191505b8181101562000861575f81556001016200084c565b5050505050565b81516001600160401b03811115620008845762000884620007cb565b6200089c81620008958454620007df565b8462000819565b602080601f831160018114620008d2575f8415620008ba5750858301515b5f19600386901b1c1916600185901b1785556200092c565b5f85815260208120601f198616915b828110156200090257888601518255948401946001909101908401620008e1565b50858210156200092057878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b5f6020828403121562000945575f80fd5b81516001600160a01b03811681146200078a575f80fd5b808201808211156200077457620007746200066b565b608051612156620009bc5f395f818161042c015281816107bc015281816107e5015281816108d30152818161132b01528181611a8001528181611b370152611b7601526121565ff3fe60806040526004361061022b575f3560e01c8063751039fc11610129578063b70143c9116100a8578063dd62ed3e1161006d578063dd62ed3e1461062c578063e2f456051461064b578063f2fde38b14610660578063f8b45b051461067f578063ffb54a9914610694575f80fd5b8063b70143c9146105a7578063c0246668146105c6578063c876d0b9146105e5578063c8c8ebe414610603578063c9567bf914610618575f80fd5b806395d89b41116100ee57806395d89b41146105175780639a7a23d61461052b578063a457c2d71461054a578063a4f23b5514610569578063a9059cbb14610588575f80fd5b8063751039fc1461049f5780637571336a146104b35780637ded4335146104d25780638d8f2adb146104e65780638da5cb5b146104fa575f80fd5b806342966c68116101b557806352f7c9881161017a57806352f7c988146103fc578063583e05681461041b5780636ddd17131461044e57806370a082311461046c578063715018a61461048b575f80fd5b806342966c68146103465780634539dc0914610365578063470624021461037957806349bd5a5e1461038e5780634fbee193146103c5575f80fd5b806323b872dd116101fb57806323b872dd146102c35780632b14ca56146102e2578063311028af146102f7578063313ce5671461030c5780633950935114610327575f80fd5b806306fdde0314610236578063095ea7b314610260578063157fecff1461028f57806318160ddd146102a5575f80fd5b3661023257005b5f80fd5b348015610241575f80fd5b5061024a6106ad565b6040516102579190611d69565b60405180910390f35b34801561026b575f80fd5b5061027f61027a366004611dc9565b61073d565b6040519015158152602001610257565b34801561029a575f80fd5b506102a3610756565b005b3480156102b0575f80fd5b506002545b604051908152602001610257565b3480156102ce575f80fd5b5061027f6102dd366004611df3565b610951565b3480156102ed575f80fd5b506102b5600d5481565b348015610302575f80fd5b506102b560095481565b348015610317575f80fd5b5060405160098152602001610257565b348015610332575f80fd5b5061027f610341366004611dc9565b610974565b348015610351575f80fd5b506102a3610360366004611e31565b610995565b348015610370575f80fd5b506102a361099f565b348015610384575f80fd5b506102b5600c5481565b348015610399575f80fd5b506006546103ad906001600160a01b031681565b6040516001600160a01b039091168152602001610257565b3480156103d0575f80fd5b5061027f6103df366004611e48565b6001600160a01b03165f9081526012602052604090205460ff1690565b348015610407575f80fd5b506102a3610416366004611e63565b6109fe565b348015610426575f80fd5b506103ad7f000000000000000000000000000000000000000000000000000000000000000081565b348015610459575f80fd5b5060115461027f90610100900460ff1681565b348015610477575f80fd5b506102b5610486366004611e48565b610a0e565b348015610496575f80fd5b506102a3610a28565b3480156104aa575f80fd5b506102a3610a3b565b3480156104be575f80fd5b506102a36104cd366004611e90565b610a50565b3480156104dd575f80fd5b506102a3610a82565b3480156104f1575f80fd5b506102a3610aff565b348015610505575f80fd5b506005546001600160a01b03166103ad565b348015610522575f80fd5b5061024a610b43565b348015610536575f80fd5b506102a3610545366004611e90565b610b52565b348015610555575f80fd5b5061027f610564366004611dc9565b610bec565b348015610574575f80fd5b506102a3610583366004611e48565b610c66565b348015610593575f80fd5b5061027f6105a2366004611dc9565b610e09565b3480156105b2575f80fd5b506102a36105c1366004611e31565b610e16565b3480156105d1575f80fd5b506102a36105e0366004611e90565b610e68565b3480156105f0575f80fd5b50600e5461027f90610100900460ff1681565b34801561060e575f80fd5b506102b5600b5481565b348015610623575f80fd5b506102a3610ece565b348015610637575f80fd5b506102b5610646366004611ec7565b610ee7565b348015610656575f80fd5b506102b560105481565b34801561066b575f80fd5b506102a361067a366004611e48565b610f11565b34801561068a575f80fd5b506102b5600a5481565b34801561069f575f80fd5b5060115461027f9060ff1681565b6060600380546106bc90611ef3565b80601f01602080910402602001604051908101604052809291908181526020018280546106e890611ef3565b80156107335780601f1061070a57610100808354040283529160200191610733565b820191905f5260205f20905b81548152906001019060200180831161071657829003601f168201915b5050505050905090565b5f3361074a818585610f87565b60019150505b92915050565b61075e6110aa565b60115460ff16156107b65760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064015b60405180910390fd5b6107e3307f0000000000000000000000000000000000000000000000000000000000000000600954610f87565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f305d719473061081d30610a0e565b6040516001600160e01b031960e086901b1681526001600160a01b03909216600483015260248201525f6044820181905260648201527398bbb4cd9fb93310bfd2f2912ddd1fd1d4f975ce60848201524260a482015260c40160606040518083038185885af1158015610892573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906108b79190611f2b565b505060065460405163095ea7b360e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660048301525f196024830152909116915063095ea7b3906044016020604051808303815f875af115801561092a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094e9190611f56565b50565b5f3361095e858285611104565b61096985858561117c565b506001949350505050565b5f3361074a8185856109868383610ee7565b6109909190611f85565b610f87565b61094e3382611857565b6109a76110aa565b600e54610100900460ff166109f15760405162461bcd60e51b815260206004820152601060248201526f105b1c9958591e48191a5cd8589b195960821b60448201526064016107ad565b600e805461ff0019169055565b610a066110aa565b600d55600c55565b6001600160a01b03165f9081526020819052604090205490565b610a306110aa565b610a395f611987565b565b610a436110aa565b600954600b819055600a55565b610a586110aa565b6001600160a01b03919091165f908152601360205260409020805460ff1916911515919091179055565b5f4711610ab75760405162461bcd60e51b81526020600482015260036024820152624e6f2160e81b60448201526064016107ad565b6007546001600160a01b0316336001600160a01b031614610ad6575f80fd5b60405133904780156108fc02915f818181858888f1935050505015801561094e573d5f803e3d5ffd5b6007546001600160a01b0316336001600160a01b031614610b1e575f80fd5b5f610b2830610a0e565b60075490915061094e9030906001600160a01b03168361117c565b6060600480546106bc90611ef3565b610b5a6110aa565b6006546001600160a01b0390811690831603610bde5760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b657250616972730000000000000060648201526084016107ad565b610be882826119d8565b5050565b5f3381610bf98286610ee7565b905083811015610c595760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016107ad565b6109698286868403610f87565b6007546001600160a01b0316336001600160a01b031614610c85575f80fd5b6040516370a0823160e01b81523060048201525f906001600160a01b038316906370a0823190602401602060405180830381865afa158015610cc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ced9190611f98565b11610d2d5760405162461bcd60e51b815260206004820152601060248201526f043616e277420776974686472617720360841b60448201526064016107ad565b6040516370a0823160e01b81523060048201526001600160a01b0382169063a9059cbb90339083906370a0823190602401602060405180830381865afa158015610d79573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d9d9190611f98565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303815f875af1158015610de5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610be89190611f56565b5f3361074a81858561117c565b6008546001600160a01b0316336001600160a01b031614610e35575f80fd5b5f610e3f30610a0e565b90505f6064610e4e8484611faf565b610e589190611fc6565b9050610e6381611a2b565b505050565b610e706110aa565b6001600160a01b0382165f81815260126020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b610ed66110aa565b6011805461ffff1916610101179055565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b610f196110aa565b6001600160a01b038116610f7e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61094e81611987565b6001600160a01b038316610fe95760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016107ad565b6001600160a01b03821661104a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016107ad565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6005546001600160a01b03163314610a395760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b5f61110f8484610ee7565b90505f19811461117657818110156111695760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016107ad565b6111768484848403610f87565b50505050565b6001600160a01b0383166111a25760405162461bcd60e51b81526004016107ad90611fe5565b6001600160a01b0382166111c85760405162461bcd60e51b81526004016107ad9061202a565b805f036111da57610e6383835f611be8565b6005546001600160a01b0384811691161480159061120657506005546001600160a01b03838116911614155b801561121a57506001600160a01b03821615155b801561123157506001600160a01b03821661dead14155b80156112405750600e5460ff16155b156116805760115460ff166112d1576001600160a01b0383165f9081526012602052604090205460ff168061128c57506001600160a01b0382165f9081526012602052604090205460ff165b6112d15760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b60448201526064016107ad565b600e54610100900460ff16801561130057506001600160a01b0383165f9081526012602052604090205460ff16155b801561132457506001600160a01b0382165f9081526012602052604090205460ff16155b1561143f577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b03161415801561137957506006546001600160a01b03838116911614155b1561143f57325f908152600f6020526040902054431180156113b157506001600160a01b0382165f908152600f602052604090205443115b61141b5760405162461bcd60e51b815260206004820152603560248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527432b21710102a393c9030b3b0b4b7103630ba32b91760591b60648201526084016107ad565b325f908152600f602052604080822043908190556001600160a01b03851683529120555b6001600160a01b0383165f9081526014602052604090205460ff16801561147e57506001600160a01b0382165f9081526013602052604090205460ff16155b1561155257600b548111156114f35760405162461bcd60e51b815260206004820152603560248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527436b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760591b60648201526084016107ad565b600a546114ff83610a0e565b6115099083611f85565b111561154d5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b60448201526064016107ad565b611680565b6001600160a01b0382165f9081526014602052604090205460ff16801561159157506001600160a01b0383165f9081526013602052604090205460ff16155b1561160757600b5481111561154d5760405162461bcd60e51b815260206004820152603660248201527f53656c6c207472616e7366657220616d6f756e742065786365656473207468656044820152751036b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b60648201526084016107ad565b6001600160a01b0382165f9081526013602052604090205460ff1661168057600a5461163283610a0e565b61163c9083611f85565b11156116805760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b60448201526064016107ad565b5f61168a30610a0e565b60105490915081118080156116a65750601154610100900460ff165b80156116b55750600e5460ff16155b80156116d957506001600160a01b0385165f9081526014602052604090205460ff16155b80156116fd57506001600160a01b0385165f9081526012602052604090205460ff16155b801561172157506001600160a01b0384165f9081526012602052604090205460ff16155b1561174757600e805460ff1916600117905561173c83611d10565b600e805460ff191690555b600e545f9060ff1615801561177457506001600160a01b0386165f9081526012602052604090205460ff16155b801561179857506001600160a01b0385165f9081526012602052604090205460ff16155b90505f8115611843576001600160a01b0386165f9081526014602052604090205460ff16156117e8576117e160646117db600d5488611d4c90919063ffffffff16565b90611d5e565b9050611825565b6001600160a01b0387165f9081526014602052604090205460ff16156118255761182260646117db600c5488611d4c90919063ffffffff16565b90505b801561183657611836873083611be8565b611840818661206d565b94505b61184e878787611be8565b50505050505050565b6001600160a01b0382166118b75760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b6001600160a01b0382165f908152602081905260409020548181101561192a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b60648201526084016107ad565b6001600160a01b0383165f818152602081815260408083208686039055600280548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6001600160a01b0382165f81815260146020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6040805160028082526060820183525f9260208301908036833701905050905030815f81518110611a5e57611a5e612080565b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ada573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611afe9190612094565b81600181518110611b1157611b11612080565b60200260200101906001600160a01b031690816001600160a01b031681525050611b5c307f000000000000000000000000000000000000000000000000000000000000000084610f87565b60085460405163791ac94760e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081169263791ac94792611bb79287925f928892919091169042906004016120af565b5f604051808303815f87803b158015611bce575f80fd5b505af1158015611be0573d5f803e3d5ffd5b505050505050565b6001600160a01b038316611c0e5760405162461bcd60e51b81526004016107ad90611fe5565b6001600160a01b038216611c345760405162461bcd60e51b81526004016107ad9061202a565b6001600160a01b0383165f9081526020819052604090205481811015611cab5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016107ad565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3611176565b5f611d1a30610a0e565b9050805f03611d27575050565b6010548190811115611d3857506010545b82811115611d435750815b610e6381611a2b565b5f611d578284611faf565b9392505050565b5f611d578284611fc6565b5f602080835283518060208501525f5b81811015611d9557858101830151858201604001528201611d79565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461094e575f80fd5b5f8060408385031215611dda575f80fd5b8235611de581611db5565b946020939093013593505050565b5f805f60608486031215611e05575f80fd5b8335611e1081611db5565b92506020840135611e2081611db5565b929592945050506040919091013590565b5f60208284031215611e41575f80fd5b5035919050565b5f60208284031215611e58575f80fd5b8135611d5781611db5565b5f8060408385031215611e74575f80fd5b50508035926020909101359150565b801515811461094e575f80fd5b5f8060408385031215611ea1575f80fd5b8235611eac81611db5565b91506020830135611ebc81611e83565b809150509250929050565b5f8060408385031215611ed8575f80fd5b8235611ee381611db5565b91506020830135611ebc81611db5565b600181811c90821680611f0757607f821691505b602082108103611f2557634e487b7160e01b5f52602260045260245ffd5b50919050565b5f805f60608486031215611f3d575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611f66575f80fd5b8151611d5781611e83565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561075057610750611f71565b5f60208284031215611fa8575f80fd5b5051919050565b808202811582820484141761075057610750611f71565b5f82611fe057634e487b7160e01b5f52601260045260245ffd5b500490565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b8181038181111561075057610750611f71565b634e487b7160e01b5f52603260045260245ffd5b5f602082840312156120a4575f80fd5b8151611d5781611db5565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156120ff5784516001600160a01b0316835293830193918301916001016120da565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220a0ae9f13807a533e8dd583d1dd99d369975516ac7ebc26f42e9a7a15d737481964736f6c63430008180033
Deployed Bytecode
0x60806040526004361061022b575f3560e01c8063751039fc11610129578063b70143c9116100a8578063dd62ed3e1161006d578063dd62ed3e1461062c578063e2f456051461064b578063f2fde38b14610660578063f8b45b051461067f578063ffb54a9914610694575f80fd5b8063b70143c9146105a7578063c0246668146105c6578063c876d0b9146105e5578063c8c8ebe414610603578063c9567bf914610618575f80fd5b806395d89b41116100ee57806395d89b41146105175780639a7a23d61461052b578063a457c2d71461054a578063a4f23b5514610569578063a9059cbb14610588575f80fd5b8063751039fc1461049f5780637571336a146104b35780637ded4335146104d25780638d8f2adb146104e65780638da5cb5b146104fa575f80fd5b806342966c68116101b557806352f7c9881161017a57806352f7c988146103fc578063583e05681461041b5780636ddd17131461044e57806370a082311461046c578063715018a61461048b575f80fd5b806342966c68146103465780634539dc0914610365578063470624021461037957806349bd5a5e1461038e5780634fbee193146103c5575f80fd5b806323b872dd116101fb57806323b872dd146102c35780632b14ca56146102e2578063311028af146102f7578063313ce5671461030c5780633950935114610327575f80fd5b806306fdde0314610236578063095ea7b314610260578063157fecff1461028f57806318160ddd146102a5575f80fd5b3661023257005b5f80fd5b348015610241575f80fd5b5061024a6106ad565b6040516102579190611d69565b60405180910390f35b34801561026b575f80fd5b5061027f61027a366004611dc9565b61073d565b6040519015158152602001610257565b34801561029a575f80fd5b506102a3610756565b005b3480156102b0575f80fd5b506002545b604051908152602001610257565b3480156102ce575f80fd5b5061027f6102dd366004611df3565b610951565b3480156102ed575f80fd5b506102b5600d5481565b348015610302575f80fd5b506102b560095481565b348015610317575f80fd5b5060405160098152602001610257565b348015610332575f80fd5b5061027f610341366004611dc9565b610974565b348015610351575f80fd5b506102a3610360366004611e31565b610995565b348015610370575f80fd5b506102a361099f565b348015610384575f80fd5b506102b5600c5481565b348015610399575f80fd5b506006546103ad906001600160a01b031681565b6040516001600160a01b039091168152602001610257565b3480156103d0575f80fd5b5061027f6103df366004611e48565b6001600160a01b03165f9081526012602052604090205460ff1690565b348015610407575f80fd5b506102a3610416366004611e63565b6109fe565b348015610426575f80fd5b506103ad7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b348015610459575f80fd5b5060115461027f90610100900460ff1681565b348015610477575f80fd5b506102b5610486366004611e48565b610a0e565b348015610496575f80fd5b506102a3610a28565b3480156104aa575f80fd5b506102a3610a3b565b3480156104be575f80fd5b506102a36104cd366004611e90565b610a50565b3480156104dd575f80fd5b506102a3610a82565b3480156104f1575f80fd5b506102a3610aff565b348015610505575f80fd5b506005546001600160a01b03166103ad565b348015610522575f80fd5b5061024a610b43565b348015610536575f80fd5b506102a3610545366004611e90565b610b52565b348015610555575f80fd5b5061027f610564366004611dc9565b610bec565b348015610574575f80fd5b506102a3610583366004611e48565b610c66565b348015610593575f80fd5b5061027f6105a2366004611dc9565b610e09565b3480156105b2575f80fd5b506102a36105c1366004611e31565b610e16565b3480156105d1575f80fd5b506102a36105e0366004611e90565b610e68565b3480156105f0575f80fd5b50600e5461027f90610100900460ff1681565b34801561060e575f80fd5b506102b5600b5481565b348015610623575f80fd5b506102a3610ece565b348015610637575f80fd5b506102b5610646366004611ec7565b610ee7565b348015610656575f80fd5b506102b560105481565b34801561066b575f80fd5b506102a361067a366004611e48565b610f11565b34801561068a575f80fd5b506102b5600a5481565b34801561069f575f80fd5b5060115461027f9060ff1681565b6060600380546106bc90611ef3565b80601f01602080910402602001604051908101604052809291908181526020018280546106e890611ef3565b80156107335780601f1061070a57610100808354040283529160200191610733565b820191905f5260205f20905b81548152906001019060200180831161071657829003601f168201915b5050505050905090565b5f3361074a818585610f87565b60019150505b92915050565b61075e6110aa565b60115460ff16156107b65760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064015b60405180910390fd5b6107e3307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d600954610f87565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663f305d719473061081d30610a0e565b6040516001600160e01b031960e086901b1681526001600160a01b03909216600483015260248201525f6044820181905260648201527398bbb4cd9fb93310bfd2f2912ddd1fd1d4f975ce60848201524260a482015260c40160606040518083038185885af1158015610892573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906108b79190611f2b565b505060065460405163095ea7b360e01b81526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d811660048301525f196024830152909116915063095ea7b3906044016020604051808303815f875af115801561092a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094e9190611f56565b50565b5f3361095e858285611104565b61096985858561117c565b506001949350505050565b5f3361074a8185856109868383610ee7565b6109909190611f85565b610f87565b61094e3382611857565b6109a76110aa565b600e54610100900460ff166109f15760405162461bcd60e51b815260206004820152601060248201526f105b1c9958591e48191a5cd8589b195960821b60448201526064016107ad565b600e805461ff0019169055565b610a066110aa565b600d55600c55565b6001600160a01b03165f9081526020819052604090205490565b610a306110aa565b610a395f611987565b565b610a436110aa565b600954600b819055600a55565b610a586110aa565b6001600160a01b03919091165f908152601360205260409020805460ff1916911515919091179055565b5f4711610ab75760405162461bcd60e51b81526020600482015260036024820152624e6f2160e81b60448201526064016107ad565b6007546001600160a01b0316336001600160a01b031614610ad6575f80fd5b60405133904780156108fc02915f818181858888f1935050505015801561094e573d5f803e3d5ffd5b6007546001600160a01b0316336001600160a01b031614610b1e575f80fd5b5f610b2830610a0e565b60075490915061094e9030906001600160a01b03168361117c565b6060600480546106bc90611ef3565b610b5a6110aa565b6006546001600160a01b0390811690831603610bde5760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b657250616972730000000000000060648201526084016107ad565b610be882826119d8565b5050565b5f3381610bf98286610ee7565b905083811015610c595760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016107ad565b6109698286868403610f87565b6007546001600160a01b0316336001600160a01b031614610c85575f80fd5b6040516370a0823160e01b81523060048201525f906001600160a01b038316906370a0823190602401602060405180830381865afa158015610cc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ced9190611f98565b11610d2d5760405162461bcd60e51b815260206004820152601060248201526f043616e277420776974686472617720360841b60448201526064016107ad565b6040516370a0823160e01b81523060048201526001600160a01b0382169063a9059cbb90339083906370a0823190602401602060405180830381865afa158015610d79573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d9d9190611f98565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303815f875af1158015610de5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610be89190611f56565b5f3361074a81858561117c565b6008546001600160a01b0316336001600160a01b031614610e35575f80fd5b5f610e3f30610a0e565b90505f6064610e4e8484611faf565b610e589190611fc6565b9050610e6381611a2b565b505050565b610e706110aa565b6001600160a01b0382165f81815260126020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b610ed66110aa565b6011805461ffff1916610101179055565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b610f196110aa565b6001600160a01b038116610f7e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61094e81611987565b6001600160a01b038316610fe95760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016107ad565b6001600160a01b03821661104a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016107ad565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6005546001600160a01b03163314610a395760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b5f61110f8484610ee7565b90505f19811461117657818110156111695760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016107ad565b6111768484848403610f87565b50505050565b6001600160a01b0383166111a25760405162461bcd60e51b81526004016107ad90611fe5565b6001600160a01b0382166111c85760405162461bcd60e51b81526004016107ad9061202a565b805f036111da57610e6383835f611be8565b6005546001600160a01b0384811691161480159061120657506005546001600160a01b03838116911614155b801561121a57506001600160a01b03821615155b801561123157506001600160a01b03821661dead14155b80156112405750600e5460ff16155b156116805760115460ff166112d1576001600160a01b0383165f9081526012602052604090205460ff168061128c57506001600160a01b0382165f9081526012602052604090205460ff165b6112d15760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b60448201526064016107ad565b600e54610100900460ff16801561130057506001600160a01b0383165f9081526012602052604090205460ff16155b801561132457506001600160a01b0382165f9081526012602052604090205460ff16155b1561143f577f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b0316826001600160a01b03161415801561137957506006546001600160a01b03838116911614155b1561143f57325f908152600f6020526040902054431180156113b157506001600160a01b0382165f908152600f602052604090205443115b61141b5760405162461bcd60e51b815260206004820152603560248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527432b21710102a393c9030b3b0b4b7103630ba32b91760591b60648201526084016107ad565b325f908152600f602052604080822043908190556001600160a01b03851683529120555b6001600160a01b0383165f9081526014602052604090205460ff16801561147e57506001600160a01b0382165f9081526013602052604090205460ff16155b1561155257600b548111156114f35760405162461bcd60e51b815260206004820152603560248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527436b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760591b60648201526084016107ad565b600a546114ff83610a0e565b6115099083611f85565b111561154d5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b60448201526064016107ad565b611680565b6001600160a01b0382165f9081526014602052604090205460ff16801561159157506001600160a01b0383165f9081526013602052604090205460ff16155b1561160757600b5481111561154d5760405162461bcd60e51b815260206004820152603660248201527f53656c6c207472616e7366657220616d6f756e742065786365656473207468656044820152751036b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b60648201526084016107ad565b6001600160a01b0382165f9081526013602052604090205460ff1661168057600a5461163283610a0e565b61163c9083611f85565b11156116805760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b60448201526064016107ad565b5f61168a30610a0e565b60105490915081118080156116a65750601154610100900460ff165b80156116b55750600e5460ff16155b80156116d957506001600160a01b0385165f9081526014602052604090205460ff16155b80156116fd57506001600160a01b0385165f9081526012602052604090205460ff16155b801561172157506001600160a01b0384165f9081526012602052604090205460ff16155b1561174757600e805460ff1916600117905561173c83611d10565b600e805460ff191690555b600e545f9060ff1615801561177457506001600160a01b0386165f9081526012602052604090205460ff16155b801561179857506001600160a01b0385165f9081526012602052604090205460ff16155b90505f8115611843576001600160a01b0386165f9081526014602052604090205460ff16156117e8576117e160646117db600d5488611d4c90919063ffffffff16565b90611d5e565b9050611825565b6001600160a01b0387165f9081526014602052604090205460ff16156118255761182260646117db600c5488611d4c90919063ffffffff16565b90505b801561183657611836873083611be8565b611840818661206d565b94505b61184e878787611be8565b50505050505050565b6001600160a01b0382166118b75760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b6001600160a01b0382165f908152602081905260409020548181101561192a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b60648201526084016107ad565b6001600160a01b0383165f818152602081815260408083208686039055600280548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6001600160a01b0382165f81815260146020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6040805160028082526060820183525f9260208301908036833701905050905030815f81518110611a5e57611a5e612080565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ada573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611afe9190612094565b81600181518110611b1157611b11612080565b60200260200101906001600160a01b031690816001600160a01b031681525050611b5c307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d84610f87565b60085460405163791ac94760e01b81526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81169263791ac94792611bb79287925f928892919091169042906004016120af565b5f604051808303815f87803b158015611bce575f80fd5b505af1158015611be0573d5f803e3d5ffd5b505050505050565b6001600160a01b038316611c0e5760405162461bcd60e51b81526004016107ad90611fe5565b6001600160a01b038216611c345760405162461bcd60e51b81526004016107ad9061202a565b6001600160a01b0383165f9081526020819052604090205481811015611cab5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016107ad565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3611176565b5f611d1a30610a0e565b9050805f03611d27575050565b6010548190811115611d3857506010545b82811115611d435750815b610e6381611a2b565b5f611d578284611faf565b9392505050565b5f611d578284611fc6565b5f602080835283518060208501525f5b81811015611d9557858101830151858201604001528201611d79565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461094e575f80fd5b5f8060408385031215611dda575f80fd5b8235611de581611db5565b946020939093013593505050565b5f805f60608486031215611e05575f80fd5b8335611e1081611db5565b92506020840135611e2081611db5565b929592945050506040919091013590565b5f60208284031215611e41575f80fd5b5035919050565b5f60208284031215611e58575f80fd5b8135611d5781611db5565b5f8060408385031215611e74575f80fd5b50508035926020909101359150565b801515811461094e575f80fd5b5f8060408385031215611ea1575f80fd5b8235611eac81611db5565b91506020830135611ebc81611e83565b809150509250929050565b5f8060408385031215611ed8575f80fd5b8235611ee381611db5565b91506020830135611ebc81611db5565b600181811c90821680611f0757607f821691505b602082108103611f2557634e487b7160e01b5f52602260045260245ffd5b50919050565b5f805f60608486031215611f3d575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611f66575f80fd5b8151611d5781611e83565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561075057610750611f71565b5f60208284031215611fa8575f80fd5b5051919050565b808202811582820484141761075057610750611f71565b5f82611fe057634e487b7160e01b5f52601260045260245ffd5b500490565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b8181038181111561075057610750611f71565b634e487b7160e01b5f52603260045260245ffd5b5f602082840312156120a4575f80fd5b8151611d5781611db5565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156120ff5784516001600160a01b0316835293830193918301916001016120da565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220a0ae9f13807a533e8dd583d1dd99d369975516ac7ebc26f42e9a7a15d737481964736f6c63430008180033
Deployed Bytecode Sourcemap
14465:9508:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9694:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10625:201;;;;;;;;;;-1:-1:-1;10625:201:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;10625:201:0;1023:187:1;16990:545:0;;;;;;;;;;;;;:::i;:::-;;10014:108;;;;;;;;;;-1:-1:-1;10102:12:0;;10014:108;;;1361:25:1;;;1349:2;1334:18;10014:108:0;1215:177:1;10834:261:0;;;;;;;;;;-1:-1:-1;10834:261:0;;;;;:::i;:::-;;:::i;15031:26::-;;;;;;;;;;;;;;;;14809:61;;;;;;;;;;;;;;;;9914:92;;;;;;;;;;-1:-1:-1;9914:92:0;;9997:1;2000:36:1;;1988:2;1973:18;9914:92:0;1858:184:1;11103:238:0;;;;;;;;;;-1:-1:-1;11103:238:0;;;;;:::i;:::-;;:::i;17695:85::-;;;;;;;;;;-1:-1:-1;17695:85:0;;;;;:::i;:::-;;:::i;22466:149::-;;;;;;;;;;;;;:::i;14999:25::-;;;;;;;;;;;;;;;;14598:28;;;;;;;;;;-1:-1:-1;14598:28:0;;;;-1:-1:-1;;;;;14598:28:0;;;;;;-1:-1:-1;;;;;2396:32:1;;;2378:51;;2366:2;2351:18;14598:28:0;2232:203:1;18555:126:0;;;;;;;;;;-1:-1:-1;18555:126:0;;;;;:::i;:::-;-1:-1:-1;;;;;18645:28:0;18621:4;18645:28;;;:19;:28;;;;;;;;;18555:126;22048:134;;;;;;;;;;-1:-1:-1;22048:134:0;;;;;:::i;:::-;;:::i;14539:52::-;;;;;;;;;;;;;;;15352:31;;;;;;;;;;-1:-1:-1;15352:31:0;;;;;;;;;;;10130:127;;;;;;;;;;-1:-1:-1;10130:127:0;;;;;:::i;:::-;;:::i;905:103::-;;;;;;;;;;;;;:::i;22623:144::-;;;;;;;;;;;;;:::i;17543:::-;;;;;;;;;;-1:-1:-1;17543:144:0;;;;;:::i;:::-;;:::i;22775:206::-;;;;;;;;;;;;;:::i;23483:194::-;;;;;;;;;;;;;:::i;670:87::-;;;;;;;;;;-1:-1:-1;743:6:0;;-1:-1:-1;;;;;743:6:0;670:87;;9802:104;;;;;;;;;;;;;:::i;18096:257::-;;;;;;;;;;-1:-1:-1;18096:257:0;;;;;:::i;:::-;;:::i;11349:436::-;;;;;;;;;;-1:-1:-1;11349:436:0;;;;;:::i;:::-;;:::i;23685:285::-;;;;;;;;;;-1:-1:-1;23685:285:0;;;;;:::i;:::-;;:::i;10265:193::-;;;;;;;;;;-1:-1:-1;10265:193:0;;;;;:::i;:::-;;:::i;22190:268::-;;;;;;;;;;-1:-1:-1;22190:268:0;;;;;:::i;:::-;;:::i;17788:182::-;;;;;;;;;;-1:-1:-1;17788:182:0;;;;;:::i;:::-;;:::i;15096:39::-;;;;;;;;;;-1:-1:-1;15096:39:0;;;;;;;;;;;14943:47;;;;;;;;;;;;;;;;17978:110;;;;;;;;;;;;;:::i;10466:151::-;;;;;;;;;;-1:-1:-1;10466:151:0;;;;;:::i;:::-;;:::i;15240:65::-;;;;;;;;;;;;;;;;1016:201;;;;;;;;;;-1:-1:-1;1016:201:0;;;;;:::i;:::-;;:::i;14879:57::-;;;;;;;;;;;;;;;;15314:31;;;;;;;;;;-1:-1:-1;15314:31:0;;;;;;;;9694:100;9748:13;9781:5;9774:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9694:100;:::o;10625:201::-;10708:4;223:10;10764:32;223:10;10780:7;10789:6;10764:8;:32::i;:::-;10814:4;10807:11;;;10625:201;;;;;:::o;16990:545::-;629:13;:11;:13::i;:::-;17055:11:::1;::::0;::::1;;17054:12;17046:47;;;::::0;-1:-1:-1;;;17046:47:0;;4669:2:1;17046:47:0::1;::::0;::::1;4651:21:1::0;4708:2;4688:18;;;4681:30;4747:25;4727:18;;;4720:53;4790:18;;17046:47:0::1;;;;;;;;;17104:70;17121:4;17136:16;17155:18;;17104:8;:70::i;:::-;17185:16;-1:-1:-1::0;;;;;17185:32:0::1;;17225:21;17270:4;17290:24;17308:4;17290:9;:24::i;:::-;17185:259;::::0;-1:-1:-1;;;;;;17185:259:0::1;::::0;;;;;;-1:-1:-1;;;;;5178:15:1;;;17185:259:0::1;::::0;::::1;5160:34:1::0;5210:18;;;5203:34;17329:1:0::1;5253:18:1::0;;;5246:34;;;5296:18;;;5289:34;17361:42:0::1;5339:19:1::0;;;5332:44;17418:15:0::1;5392:19:1::0;;;5385:35;5094:19;;17185:259:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;17462:13:0::1;::::0;17455:72:::1;::::0;-1:-1:-1;;;17455:72:0;;-1:-1:-1;;;;;17493:16:0::1;5934:32:1::0;;17455:72:0::1;::::0;::::1;5916:51:1::0;-1:-1:-1;;5983:18:1;;;5976:34;17462:13:0;;::::1;::::0;-1:-1:-1;17455:29:0::1;::::0;5889:18:1;;17455:72:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;16990:545::o:0;10834:261::-;10931:4;223:10;10989:38;11005:4;223:10;11020:6;10989:15;:38::i;:::-;11038:27;11048:4;11054:2;11058:6;11038:9;:27::i;:::-;-1:-1:-1;11083:4:0;;10834:261;-1:-1:-1;;;;10834:261:0:o;11103:238::-;11191:4;223:10;11247:64;223:10;11263:7;11300:10;11272:25;223:10;11263:7;11272:9;:25::i;:::-;:38;;;;:::i;:::-;11247:8;:64::i;17695:85::-;17745:27;223:10;17765:6;17745:5;:27::i;22466:149::-;629:13;:11;:13::i;:::-;22527:20:::1;::::0;::::1;::::0;::::1;;;22519:49;;;::::0;-1:-1:-1;;;22519:49:0;;6735:2:1;22519:49:0::1;::::0;::::1;6717:21:1::0;6774:2;6754:18;;;6747:30;-1:-1:-1;;;6793:18:1;;;6786:46;6849:18;;22519:49:0::1;6533:340:1::0;22519:49:0::1;22579:20;:28:::0;;-1:-1:-1;;22579:28:0::1;::::0;;22466:149::o;22048:134::-;629:13;:11;:13::i;:::-;22129:7:::1;:18:::0;22158:6:::1;:16:::0;22048:134::o;10130:127::-;-1:-1:-1;;;;;10231:18:0;10204:7;10231:18;;;;;;;;;;;;10130:127::o;905:103::-;629:13;:11;:13::i;:::-;970:30:::1;997:1;970:18;:30::i;:::-;905:103::o:0;22623:144::-;629:13;:11;:13::i;:::-;22700:18:::1;::::0;22677:20:::1;:41:::0;;;22729:9:::1;:30:::0;22623:144::o;17543:::-;629:13;:11;:13::i;:::-;-1:-1:-1;;;;;17633:39:0;;;::::1;;::::0;;;:31:::1;:39;::::0;;;;:46;;-1:-1:-1;;17633:46:0::1;::::0;::::1;;::::0;;;::::1;::::0;;17543:144::o;22775:206::-;22857:1;22833:21;:25;22825:41;;;;-1:-1:-1;;;22825:41:0;;7080:2:1;22825:41:0;;;7062:21:1;7119:1;7099:18;;;7092:29;-1:-1:-1;;;7137:18:1;;;7130:33;7180:18;;22825:41:0;6878:326:1;22825:41:0;22901:9;;-1:-1:-1;;;;;22901:9:0;223:10;-1:-1:-1;;;;;22885:25:0;;22877:34;;;;;;22922:51;;22930:10;;22951:21;22922:51;;;;;;;;;22951:21;22930:10;22922:51;;;;;;;;;;;;;;;;;;;23483:194;23553:9;;-1:-1:-1;;;;;23553:9:0;223:10;-1:-1:-1;;;;;23537:25:0;;23529:34;;;;;;23574:14;23591:24;23609:4;23591:9;:24::i;:::-;23651:9;;23574:41;;-1:-1:-1;23626:43:0;;23644:4;;-1:-1:-1;;;;;23651:9:0;23574:41;23626:9;:43::i;9802:104::-;9858:13;9891:7;9884:14;;;;;:::i;18096:257::-;629:13;:11;:13::i;:::-;18218::::1;::::0;-1:-1:-1;;;;;18218:13:0;;::::1;18210:21:::0;;::::1;::::0;18202:91:::1;;;::::0;-1:-1:-1;;;18202:91:0;;7411:2:1;18202:91:0::1;::::0;::::1;7393:21:1::0;7450:2;7430:18;;;7423:30;7489:34;7469:18;;;7462:62;7560:27;7540:18;;;7533:55;7605:19;;18202:91:0::1;7209:421:1::0;18202:91:0::1;18304:41;18333:4;18339:5;18304:28;:41::i;:::-;18096:257:::0;;:::o;11349:436::-;11442:4;223:10;11442:4;11525:25;223:10;11542:7;11525:9;:25::i;:::-;11498:52;;11589:15;11569:16;:35;;11561:85;;;;-1:-1:-1;;;11561:85:0;;7837:2:1;11561:85:0;;;7819:21:1;7876:2;7856:18;;;7849:30;7915:34;7895:18;;;7888:62;-1:-1:-1;;;7966:18:1;;;7959:35;8011:19;;11561:85:0;7635:401:1;11561:85:0;11682:60;11691:5;11698:7;11726:15;11707:16;:34;11682:8;:60::i;23685:285::-;23774:9;;-1:-1:-1;;;;;23774:9:0;223:10;-1:-1:-1;;;;;23758:25:0;;23750:34;;;;;;23803:41;;-1:-1:-1;;;23803:41:0;;23838:4;23803:41;;;2378:51:1;23847:1:0;;-1:-1:-1;;;;;23803:26:0;;;;;2351:18:1;;23803:41:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:45;23795:74;;;;-1:-1:-1;;;23795:74:0;;8432:2:1;23795:74:0;;;8414:21:1;8471:2;8451:18;;;8444:30;-1:-1:-1;;;8490:18:1;;;8483:46;8546:18;;23795:74:0;8230:340:1;23795:74:0;23920:41;;-1:-1:-1;;;23920:41:0;;23955:4;23920:41;;;2378:51:1;-1:-1:-1;;;;;23882:25:0;;;;;23908:10;;23882:25;;23920:26;;2351:18:1;;23920:41:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23882:80;;-1:-1:-1;;;;;;23882:80:0;;;;;;;-1:-1:-1;;;;;5934:32:1;;;23882:80:0;;;5916:51:1;5983:18;;;5976:34;5889:18;;23882:80:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;10265:193::-;10344:4;223:10;10400:28;223:10;10417:2;10421:6;10400:9;:28::i;22190:268::-;22271:15;;-1:-1:-1;;;;;22271:15:0;223:10;-1:-1:-1;;;;;22255:31:0;;22247:40;;;;;;22298:23;22324:24;22342:4;22324:9;:24::i;:::-;22298:50;-1:-1:-1;22359:18:0;22408:3;22380:25;22398:7;22298:50;22380:25;:::i;:::-;:31;;;;:::i;:::-;22359:52;;22422:28;22439:10;22422:16;:28::i;:::-;22236:222;;22190:268;:::o;17788:182::-;629:13;:11;:13::i;:::-;-1:-1:-1;;;;;17873:28:0;::::1;;::::0;;;:19:::1;:28;::::0;;;;;;;;:39;;-1:-1:-1;;17873:39:0::1;::::0;::::1;;::::0;;::::1;::::0;;;17928:34;;1163:41:1;;;17928:34:0::1;::::0;1136:18:1;17928:34:0::1;;;;;;;17788:182:::0;;:::o;17978:110::-;629:13;:11;:13::i;:::-;18033:11:::1;:18:::0;;-1:-1:-1;;18062:18:0;;;;;17978:110::o;10466:151::-;-1:-1:-1;;;;;10582:18:0;;;10555:7;10582:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;10466:151::o;1016:201::-;629:13;:11;:13::i;:::-;-1:-1:-1;;;;;1105:22:0;::::1;1097:73;;;::::0;-1:-1:-1;;;1097:73:0;;9172:2:1;1097:73:0::1;::::0;::::1;9154:21:1::0;9211:2;9191:18;;;9184:30;9250:34;9230:18;;;9223:62;-1:-1:-1;;;9301:18:1;;;9294:36;9347:19;;1097:73:0::1;8970:402:1::0;1097:73:0::1;1181:28;1200:8;1181:18;:28::i;13488:346::-:0;-1:-1:-1;;;;;13590:19:0;;13582:68;;;;-1:-1:-1;;;13582:68:0;;9579:2:1;13582:68:0;;;9561:21:1;9618:2;9598:18;;;9591:30;9657:34;9637:18;;;9630:62;-1:-1:-1;;;9708:18:1;;;9701:34;9752:19;;13582:68:0;9377:400:1;13582:68:0;-1:-1:-1;;;;;13669:21:0;;13661:68;;;;-1:-1:-1;;;13661:68:0;;9984:2:1;13661:68:0;;;9966:21:1;10023:2;10003:18;;;9996:30;10062:34;10042:18;;;10035:62;-1:-1:-1;;;10113:18:1;;;10106:32;10155:19;;13661:68:0;9782:398:1;13661:68:0;-1:-1:-1;;;;;13742:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;13794:32;;1361:25:1;;;13794:32:0;;1334:18:1;13794:32:0;;;;;;;13488:346;;;:::o;765:132::-;743:6;;-1:-1:-1;;;;;743:6:0;223:10;829:23;821:68;;;;-1:-1:-1;;;821:68:0;;10387:2:1;821:68:0;;;10369:21:1;;;10406:18;;;10399:30;10465:34;10445:18;;;10438:62;10517:18;;821:68:0;10185:356:1;13842:419:0;13943:24;13970:25;13980:5;13987:7;13970:9;:25::i;:::-;13943:52;;-1:-1:-1;;14010:16:0;:37;14006:248;;14092:6;14072:16;:26;;14064:68;;;;-1:-1:-1;;;14064:68:0;;10748:2:1;14064:68:0;;;10730:21:1;10787:2;10767:18;;;10760:30;10826:31;10806:18;;;10799:59;10875:18;;14064:68:0;10546:353:1;14064:68:0;14176:51;14185:5;14192:7;14220:6;14201:16;:25;14176:8;:51::i;:::-;13932:329;13842:419;;;:::o;18689:2867::-;-1:-1:-1;;;;;18787:18:0;;18779:68;;;;-1:-1:-1;;;18779:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;18866:16:0;;18858:64;;;;-1:-1:-1;;;18858:64:0;;;;;;;:::i;:::-;18939:6;18949:1;18939:11;18935:93;;18967:28;18983:4;18989:2;18993:1;18967:15;:28::i;18935:93::-;743:6;;-1:-1:-1;;;;;19044:15:0;;;743:6;;19044:15;;;;:32;;-1:-1:-1;743:6:0;;-1:-1:-1;;;;;19063:13:0;;;743:6;;19063:13;;19044:32;:52;;;;-1:-1:-1;;;;;;19080:16:0;;;;19044:52;:77;;;;-1:-1:-1;;;;;;19100:21:0;;19114:6;19100:21;;19044:77;:90;;;;-1:-1:-1;19126:8:0;;;;19125:9;19044:90;19040:1545;;;19156:11;;;;19151:140;;-1:-1:-1;;;;;19196:25:0;;;;;;:19;:25;;;;;;;;;:52;;-1:-1:-1;;;;;;19225:23:0;;;;;;:19;:23;;;;;;;;19196:52;19188:87;;;;-1:-1:-1;;;19188:87:0;;11916:2:1;19188:87:0;;;11898:21:1;11955:2;11935:18;;;11928:30;-1:-1:-1;;;11974:18:1;;;11967:52;12036:18;;19188:87:0;11714:346:1;19188:87:0;19311:20;;;;;;;:50;;;;-1:-1:-1;;;;;;19336:25:0;;;;;;:19;:25;;;;;;;;19335:26;19311:50;:78;;;;-1:-1:-1;;;;;;19366:23:0;;;;;;:19;:23;;;;;;;;19365:24;19311:78;19307:566;;;19431:16;-1:-1:-1;;;;;19417:31:0;:2;-1:-1:-1;;;;;19417:31:0;;;:63;;;;-1:-1:-1;19466:13:0;;-1:-1:-1;;;;;19452:28:0;;;19466:13;;19452:28;;19417:63;19413:445;;;19545:9;19516:39;;;;:28;:39;;;;;;19558:12;-1:-1:-1;19516:105:0;;;;-1:-1:-1;;;;;;19574:32:0;;;;;;:28;:32;;;;;;19609:12;-1:-1:-1;19516:105:0;19508:171;;;;-1:-1:-1;;;19508:171:0;;12267:2:1;19508:171:0;;;12249:21:1;12306:2;12286:18;;;12279:30;12345:34;12325:18;;;12318:62;-1:-1:-1;;;12396:18:1;;;12389:51;12457:19;;19508:171:0;12065:417:1;19508:171:0;19735:9;19706:39;;;;:28;:39;;;;;;19748:12;19706:54;;;;-1:-1:-1;;;;;19787:32:0;;;;;;:47;19413:445;-1:-1:-1;;;;;19893:31:0;;;;;;:25;:31;;;;;;;;:71;;;;-1:-1:-1;;;;;;19929:35:0;;;;;;:31;:35;;;;;;;;19928:36;19893:71;19889:685;;;20003:20;;19993:6;:30;;19985:96;;;;-1:-1:-1;;;19985:96:0;;12689:2:1;19985:96:0;;;12671:21:1;12728:2;12708:18;;;12701:30;12767:34;12747:18;;;12740:62;-1:-1:-1;;;12818:18:1;;;12811:51;12879:19;;19985:96:0;12487:417:1;19985:96:0;20134:9;;20117:13;20127:2;20117:9;:13::i;:::-;20108:22;;:6;:22;:::i;:::-;:35;;20100:67;;;;-1:-1:-1;;;20100:67:0;;13111:2:1;20100:67:0;;;13093:21:1;13150:2;13130:18;;;13123:30;-1:-1:-1;;;13169:18:1;;;13162:49;13228:18;;20100:67:0;12909:343:1;20100:67:0;19889:685;;;-1:-1:-1;;;;;20206:29:0;;;;;;:25;:29;;;;;;;;:71;;;;-1:-1:-1;;;;;;20240:37:0;;;;;;:31;:37;;;;;;;;20239:38;20206:71;20202:372;;;20316:20;;20306:6;:30;;20298:97;;;;-1:-1:-1;;;20298:97:0;;13459:2:1;20298:97:0;;;13441:21:1;13498:2;13478:18;;;13471:30;13537:34;13517:18;;;13510:62;-1:-1:-1;;;13588:18:1;;;13581:52;13650:19;;20298:97:0;13257:418:1;20202:372:0;-1:-1:-1;;;;;20435:35:0;;;;;;:31;:35;;;;;;;;20430:144;;20525:9;;20508:13;20518:2;20508:9;:13::i;:::-;20499:22;;:6;:22;:::i;:::-;:35;;20491:67;;;;-1:-1:-1;;;20491:67:0;;13111:2:1;20491:67:0;;;13093:21:1;13150:2;13130:18;;;13123:30;-1:-1:-1;;;13169:18:1;;;13162:49;13228:18;;20491:67:0;12909:343:1;20491:67:0;20597:28;20628:24;20646:4;20628:9;:24::i;:::-;20701:18;;20597:55;;-1:-1:-1;20678:41:0;;;20734:22;;;;-1:-1:-1;20745:11:0;;;;;;;20734:22;:35;;;;-1:-1:-1;20761:8:0;;;;20760:9;20734:35;:71;;;;-1:-1:-1;;;;;;20774:31:0;;;;;;:25;:31;;;;;;;;20773:32;20734:71;:101;;;;-1:-1:-1;;;;;;20810:25:0;;;;;;:19;:25;;;;;;;;20809:26;20734:101;:129;;;;-1:-1:-1;;;;;;20840:23:0;;;;;;:19;:23;;;;;;;;20839:24;20734:129;20730:239;;;20880:8;:15;;-1:-1:-1;;20880:15:0;20891:4;20880:15;;;20910:16;20919:6;20910:8;:16::i;:::-;20941:8;:16;;-1:-1:-1;;20941:16:0;;;20730:239;20997:8;;20981:12;;20997:8;;20996:9;:39;;;;-1:-1:-1;;;;;;21010:25:0;;;;;;:19;:25;;;;;;;;21009:26;20996:39;:67;;;;-1:-1:-1;;;;;;21040:23:0;;;;;;:19;:23;;;;;;;;21039:24;20996:67;20981:82;;21076:12;21107:7;21103:402;;;-1:-1:-1;;;;;21135:29:0;;;;;;:25;:29;;;;;;;;21131:229;;;21192:28;21216:3;21192:19;21203:7;;21192:6;:10;;:19;;;;:::i;:::-;:23;;:28::i;:::-;21185:35;;21131:229;;;-1:-1:-1;;;;;21258:31:0;;;;;;:25;:31;;;;;;;;21255:105;;;21317:27;21340:3;21317:18;21328:6;;21317;:10;;:18;;;;:::i;:27::-;21310:34;;21255:105;21378:8;;21374:91;;21407:42;21423:4;21437;21444;21407:15;:42::i;:::-;21479:14;21489:4;21479:14;;:::i;:::-;;;21103:402;21515:33;21531:4;21537:2;21541:6;21515:15;:33::i;:::-;18768:2788;;;;18689:2867;;;:::o;12885:595::-;-1:-1:-1;;;;;12969:21:0;;12961:67;;;;-1:-1:-1;;;12961:67:0;;14015:2:1;12961:67:0;;;13997:21:1;14054:2;14034:18;;;14027:30;14093:34;14073:18;;;14066:62;-1:-1:-1;;;14144:18:1;;;14137:31;14185:19;;12961:67:0;13813:397:1;12961:67:0;-1:-1:-1;;;;;13128:18:0;;13103:22;13128:18;;;;;;;;;;;13165:24;;;;13157:71;;;;-1:-1:-1;;;13157:71:0;;14417:2:1;13157:71:0;;;14399:21:1;14456:2;14436:18;;;14429:30;14495:34;14475:18;;;14468:62;-1:-1:-1;;;14546:18:1;;;14539:32;14588:19;;13157:71:0;14215:398:1;13157:71:0;-1:-1:-1;;;;;13264:18:0;;:9;:18;;;;;;;;;;;13285:23;;;13264:44;;13323:12;:22;;;;;;;13374:37;1361:25:1;;;13264:9:0;;:18;13374:37;;1334:18:1;13374:37:0;;;;;;;22236:222;;22190:268;:::o;1225:191::-;1318:6;;;-1:-1:-1;;;;;1335:17:0;;;-1:-1:-1;;;;;;1335:17:0;;;;;;;1368:40;;1318:6;;;1335:17;1318:6;;1368:40;;1299:16;;1368:40;1288:128;1225:191;:::o;18361:186::-;-1:-1:-1;;;;;18444:31:0;;;;;;:25;:31;;;;;;:39;;-1:-1:-1;;18444:39:0;;;;;;;;;;18499:40;;18444:39;;:31;18499:40;;;18361:186;;:::o;21564:476::-;21654:16;;;21668:1;21654:16;;;;;;;;21630:21;;21654:16;;;;;;;;;;-1:-1:-1;21654:16:0;21630:40;;21699:4;21681;21686:1;21681:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;21681:23:0;;;-1:-1:-1;;;;;21681:23:0;;;;;21725:16;-1:-1:-1;;;;;21725:21:0;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21715:4;21720:1;21715:7;;;;;;;;:::i;:::-;;;;;;:33;-1:-1:-1;;;;;21715:33:0;;;-1:-1:-1;;;;;21715:33:0;;;;;21759:63;21776:4;21791:16;21810:11;21759:8;:63::i;:::-;21976:15;;21833:199;;-1:-1:-1;;;21833:199:0;;-1:-1:-1;;;;;21833:16:0;:67;;;;;:199;;21915:11;;21941:1;;21957:4;;21976:15;;;;;22006;;21833:199;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21619:421;21564:476;:::o;11793:641::-;-1:-1:-1;;;;;11890:18:0;;11882:68;;;;-1:-1:-1;;;11882:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;11969:16:0;;11961:64;;;;-1:-1:-1;;;11961:64:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;12111:15:0;;12089:19;12111:15;;;;;;;;;;;12145:21;;;;12137:72;;;;-1:-1:-1;;;12137:72:0;;16325:2:1;12137:72:0;;;16307:21:1;16364:2;16344:18;;;16337:30;16403:34;16383:18;;;16376:62;-1:-1:-1;;;16454:18:1;;;16447:36;16500:19;;12137:72:0;16123:402:1;12137:72:0;-1:-1:-1;;;;;12245:15:0;;;:9;:15;;;;;;;;;;;12263:20;;;12245:38;;12298:13;;;;;;;;;;:23;;;;;;12350:26;;1361:25:1;;;12298:13:0;;12350:26;;1334:18:1;12350:26:0;;;;;;;12389:37;22190:268;22989:484;23047:23;23073:24;23091:4;23073:9;:24::i;:::-;23047:50;;23112:15;23131:1;23112:20;23108:59;;23149:7;22989:484;:::o;23108:59::-;23247:18;;23200:15;;23232:33;;23228:99;;;-1:-1:-1;23297:18:0;;23228:99;23357:11;23342:12;:26;23339:84;;;-1:-1:-1;23400:11:0;23339:84;23435:30;23452:12;23435:16;:30::i;8151:98::-;8209:7;8236:5;8240:1;8236;:5;:::i;:::-;8229:12;8151:98;-1:-1:-1;;;8151:98:0:o;8257:::-;8315:7;8342:5;8346:1;8342;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:180::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;-1:-1:-1;2198:23:1;;2047:180;-1:-1:-1;2047:180:1:o;2440:247::-;2499:6;2552:2;2540:9;2531:7;2527:23;2523:32;2520:52;;;2568:1;2565;2558:12;2520:52;2607:9;2594:23;2626:31;2651:5;2626:31;:::i;2692:248::-;2760:6;2768;2821:2;2809:9;2800:7;2796:23;2792:32;2789:52;;;2837:1;2834;2827:12;2789:52;-1:-1:-1;;2860:23:1;;;2930:2;2915:18;;;2902:32;;-1:-1:-1;2692:248:1:o;3179:118::-;3265:5;3258:13;3251:21;3244:5;3241:32;3231:60;;3287:1;3284;3277:12;3302:382;3367:6;3375;3428:2;3416:9;3407:7;3403:23;3399:32;3396:52;;;3444:1;3441;3434:12;3396:52;3483:9;3470:23;3502:31;3527:5;3502:31;:::i;:::-;3552:5;-1:-1:-1;3609:2:1;3594:18;;3581:32;3622:30;3581:32;3622:30;:::i;:::-;3671:7;3661:17;;;3302:382;;;;;:::o;3689:388::-;3757:6;3765;3818:2;3806:9;3797:7;3793:23;3789:32;3786:52;;;3834:1;3831;3824:12;3786:52;3873:9;3860:23;3892:31;3917:5;3892:31;:::i;:::-;3942:5;-1:-1:-1;3999:2:1;3984:18;;3971:32;4012:33;3971:32;4012:33;:::i;4082:380::-;4161:1;4157:12;;;;4204;;;4225:61;;4279:4;4271:6;4267:17;4257:27;;4225:61;4332:2;4324:6;4321:14;4301:18;4298:38;4295:161;;4378:10;4373:3;4369:20;4366:1;4359:31;4413:4;4410:1;4403:15;4441:4;4438:1;4431:15;4295:161;;4082:380;;;:::o;5431:306::-;5519:6;5527;5535;5588:2;5576:9;5567:7;5563:23;5559:32;5556:52;;;5604:1;5601;5594:12;5556:52;5633:9;5627:16;5617:26;;5683:2;5672:9;5668:18;5662:25;5652:35;;5727:2;5716:9;5712:18;5706:25;5696:35;;5431:306;;;;;:::o;6021:245::-;6088:6;6141:2;6129:9;6120:7;6116:23;6112:32;6109:52;;;6157:1;6154;6147:12;6109:52;6189:9;6183:16;6208:28;6230:5;6208:28;:::i;6271:127::-;6332:10;6327:3;6323:20;6320:1;6313:31;6363:4;6360:1;6353:15;6387:4;6384:1;6377:15;6403:125;6468:9;;;6489:10;;;6486:36;;;6502:18;;:::i;8041:184::-;8111:6;8164:2;8152:9;8143:7;8139:23;8135:32;8132:52;;;8180:1;8177;8170:12;8132:52;-1:-1:-1;8203:16:1;;8041:184;-1:-1:-1;8041:184:1:o;8575:168::-;8648:9;;;8679;;8696:15;;;8690:22;;8676:37;8666:71;;8717:18;;:::i;8748:217::-;8788:1;8814;8804:132;;8858:10;8853:3;8849:20;8846:1;8839:31;8893:4;8890:1;8883:15;8921:4;8918:1;8911:15;8804:132;-1:-1:-1;8950:9:1;;8748:217::o;10904:401::-;11106:2;11088:21;;;11145:2;11125:18;;;11118:30;11184:34;11179:2;11164:18;;11157:62;-1:-1:-1;;;11250:2:1;11235:18;;11228:35;11295:3;11280:19;;10904:401::o;11310:399::-;11512:2;11494:21;;;11551:2;11531:18;;;11524:30;11590:34;11585:2;11570:18;;11563:62;-1:-1:-1;;;11656:2:1;11641:18;;11634:33;11699:3;11684:19;;11310:399::o;13680:128::-;13747:9;;;13768:11;;;13765:37;;;13782:18;;:::i;14750:127::-;14811:10;14806:3;14802:20;14799:1;14792:31;14842:4;14839:1;14832:15;14866:4;14863:1;14856:15;14882:251;14952:6;15005:2;14993:9;14984:7;14980:23;14976:32;14973:52;;;15021:1;15018;15011:12;14973:52;15053:9;15047:16;15072:31;15097:5;15072:31;:::i;15138:980::-;15400:4;15448:3;15437:9;15433:19;15479:6;15468:9;15461:25;15505:2;15543:6;15538:2;15527:9;15523:18;15516:34;15586:3;15581:2;15570:9;15566:18;15559:31;15610:6;15645;15639:13;15676:6;15668;15661:22;15714:3;15703:9;15699:19;15692:26;;15753:2;15745:6;15741:15;15727:29;;15774:1;15784:195;15798:6;15795:1;15792:13;15784:195;;;15863:13;;-1:-1:-1;;;;;15859:39:1;15847:52;;15954:15;;;;15919:12;;;;15895:1;15813:9;15784:195;;;-1:-1:-1;;;;;;;16035:32:1;;;;16030:2;16015:18;;16008:60;-1:-1:-1;;;16099:3:1;16084:19;16077:35;15996:3;15138:980;-1:-1:-1;;;15138:980:1:o
Swarm Source
ipfs://a0ae9f13807a533e8dd583d1dd99d369975516ac7ebc26f42e9a7a15d7374819
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 34 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.