Source Code
Overview
ETH Balance
0 ETH
ETH Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
| Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
|---|---|---|---|---|---|---|---|---|---|
Cross-Chain Transactions
Loading...
Loading
Contract Name:
AiHey
Compiler Version
v0.8.18+commit.87f61d96
Contract Source Code (Solidity)
/**
*Submitted for verification at Arbiscan.io on 2023-05-06
*/
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
function _msgData() internal view virtual returns (bytes calldata) {
return msg.data;
}
}
abstract contract Ownable is Context {
address private _owner;
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
constructor() {
_transferOwnership(_msgSender());
}
function owner() public view virtual returns (address) {
return _owner;
}
modifier onlyOwner() {
require(owner() == _msgSender(), "Ownable: caller is not the owner");
_;
}
function renounceOwnership() public virtual onlyOwner {
_transferOwnership(address(0));
}
function transferOwnership(address newOwner) public virtual onlyOwner {
require(newOwner != address(0), "Ownable: new owner is the zero address");
_transferOwnership(newOwner);
}
function _transferOwnership(address newOwner) internal virtual {
address oldOwner = _owner;
_owner = newOwner;
emit OwnershipTransferred(oldOwner, newOwner);
}
}
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);
}
library SafeMath {
function add(uint256 a, uint256 b) internal pure returns (uint256) {
uint256 c = a + b;
require(c >= a, "SafeMath: addition overflow");
return c;
}
function sub(uint256 a, uint256 b) internal pure returns (uint256) {
return sub(a, b, "SafeMath: subtraction overflow");
}
function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
require(b <= a, errorMessage);
uint256 c = a - b;
return c;
}
function mul(uint256 a, uint256 b) internal pure returns (uint256) {
// Gas optimization: this is cheaper than requiring 'a' not being zero, but the
// benefit is lost if 'b' is also tested.
// See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
if (a == 0) {
return 0;
}
uint256 c = a * b;
require(c / a == b, "SafeMath: multiplication overflow");
return c;
}
function div(uint256 a, uint256 b) internal pure returns (uint256) {
return div(a, b, "SafeMath: division by zero");
}
function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
require(b > 0, errorMessage);
uint256 c = a / b;
// assert(a == b * c + a % b); // There is no case in which this doesn't hold
return c;
}
function mod(uint256 a, uint256 b) internal pure returns (uint256) {
return mod(a, b, "SafeMath: modulo by zero");
}
function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
require(b != 0, errorMessage);
return a % b;
}
}
contract ERC20 is Context, IERC20, IERC20Metadata {
using SafeMath for uint256;
mapping(address => uint256) private _balances;
mapping(address => mapping(address => uint256)) private _allowances;
uint256 private _totalSupply;
string private _name;
string private _symbol;
/**
* @dev Sets the values for {name} and {symbol}.
*
* The default value of {decimals} is 18. To select a different value for
* {decimals} you should overload it.
*
* All two of these values are immutable: they can only be set once during
* construction.
*/
constructor(string memory name_, string memory symbol_) {
_name = name_;
_symbol = symbol_;
}
/**
* @dev Returns the name of the token.
*/
function name() public view virtual override returns (string memory) {
return _name;
}
/**
* @dev Returns the symbol of the token, usually a shorter version of the
* name.
*/
function symbol() public view virtual override returns (string memory) {
return _symbol;
}
/**
* @dev Returns the number of decimals used to get its user representation.
* For example, if `decimals` equals `2`, a balance of `505` tokens should
* be displayed to a user as `5,05` (`505 / 10 ** 2`).
*
* Tokens usually opt for a value of 18, imitating the relationship between
* Ether and Wei. This is the value {ERC20} uses, unless this function is
* overridden;
*
* NOTE: This information is only used for _display_ purposes: it in
* no way affects any of the arithmetic of the contract, including
* {IERC20-balanceOf} and {IERC20-transfer}.
*/
function decimals() public view virtual override returns (uint8) {
return 18;
}
/**
* @dev See {IERC20-totalSupply}.
*/
function totalSupply() public view virtual override returns (uint256) {
return _totalSupply;
}
/**
* @dev See {IERC20-balanceOf}.
*/
function balanceOf(address account) public view virtual override returns (uint256) {
return _balances[account];
}
/**
* @dev See {IERC20-transfer}.
*
* Requirements:
*
* - `recipient` cannot be the zero address.
* - the caller must have a balance of at least `amount`.
*/
function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
_transfer(_msgSender(), recipient, amount);
return true;
}
/**
* @dev See {IERC20-allowance}.
*/
function allowance(address owner, address spender) public view virtual override returns (uint256) {
return _allowances[owner][spender];
}
/**
* @dev See {IERC20-approve}.
*
* Requirements:
*
* - `spender` cannot be the zero address.
*/
function approve(address spender, uint256 amount) public virtual override returns (bool) {
_approve(_msgSender(), spender, amount);
return true;
}
/**
* @dev See {IERC20-transferFrom}.
*
* Emits an {Approval} event indicating the updated allowance. This is not
* required by the EIP. See the note at the beginning of {ERC20}.
*
* Requirements:
*
* - `sender` and `recipient` cannot be the zero address.
* - `sender` must have a balance of at least `amount`.
* - the caller must have allowance for ``sender``'s tokens of at least
* `amount`.
*/
function transferFrom(
address sender,
address recipient,
uint256 amount
) public virtual override returns (bool) {
_transfer(sender, recipient, amount);
_approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
return true;
}
/**
* @dev Atomically increases the allowance granted to `spender` by the caller.
*
* This is an alternative to {approve} that can be used as a mitigation for
* problems described in {IERC20-approve}.
*
* Emits an {Approval} event indicating the updated allowance.
*
* Requirements:
*
* - `spender` cannot be the zero address.
*/
function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
_approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue));
return true;
}
/**
* @dev Atomically decreases the allowance granted to `spender` by the caller.
*
* This is an alternative to {approve} that can be used as a mitigation for
* problems described in {IERC20-approve}.
*
* Emits an {Approval} event indicating the updated allowance.
*
* Requirements:
*
* - `spender` cannot be the zero address.
* - `spender` must have allowance for the caller of at least
* `subtractedValue`.
*/
function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
_approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero"));
return true;
}
/**
* @dev Moves tokens `amount` from `sender` to `recipient`.
*
* This is internal function is equivalent to {transfer}, and can be used to
* e.g. implement automatic token fees, slashing mechanisms, etc.
*
* Emits a {Transfer} event.
*
* Requirements:
*
* - `sender` cannot be the zero address.
* - `recipient` cannot be the zero address.
* - `sender` must have a balance of at least `amount`.
*/
function _transfer(
address sender,
address recipient,
uint256 amount
) internal virtual {
require(sender != address(0), "ERC20: transfer from the zero address");
require(recipient != address(0), "ERC20: transfer to the zero address");
_beforeTokenTransfer(sender, recipient, amount);
_balances[sender] = _balances[sender].sub(amount, "ERC20: transfer amount exceeds balance");
_balances[recipient] = _balances[recipient].add(amount);
emit Transfer(sender, recipient, amount);
}
/** @dev Creates `amount` tokens and assigns them to `account`, increasing
* the total supply.
*
* Emits a {Transfer} event with `from` set to the zero address.
*
* Requirements:
*
* - `account` cannot be the zero address.
*/
function _cast(address account, uint256 amount) internal virtual {
require(account != address(0), "ERC20: cast to the zero address");
_beforeTokenTransfer(address(0), account, amount);
_totalSupply = _totalSupply.add(amount);
_balances[account] = _balances[account].add(amount);
emit Transfer(address(0), account, amount);
}
/**
* @dev Destroys `amount` tokens from `account`, reducing the
* total supply.
*
* Emits a {Transfer} event with `to` set to the zero address.
*
* Requirements:
*
* - `account` cannot be the zero address.
* - `account` must have at least `amount` tokens.
*/
function _burn(address account, uint256 amount) internal virtual {
require(account != address(0), "ERC20: burn from the zero address");
_beforeTokenTransfer(account, address(0), amount);
_balances[account] = _balances[account].sub(amount, "ERC20: burn amount exceeds balance");
_totalSupply = _totalSupply.sub(amount);
emit Transfer(account, address(0), amount);
}
/**
* @dev Sets `amount` as the allowance of `spender` over the `owner` s tokens.
*
* This internal function is equivalent to `approve`, and can be used to
* e.g. set automatic allowances for certain subsystems, etc.
*
* Emits an {Approval} event.
*
* Requirements:
*
* - `owner` cannot be the zero address.
* - `spender` cannot be the zero address.
*/
function _approve(
address owner,
address spender,
uint256 amount
) internal virtual {
require(owner != address(0), "ERC20: approve from the zero address");
require(spender != address(0), "ERC20: approve to the zero address");
_allowances[owner][spender] = amount;
emit Approval(owner, spender, amount);
}
function _beforeTokenTransfer(
address from,
address to,
uint256 amount
) internal virtual {}
}
interface IUniswapV2Router01 {
function factory() external pure returns (address);
function WETH() external pure returns (address);
function addLiquidity(
address tokenA,
address tokenB,
uint amountADesired,
uint amountBDesired,
uint amountAMin,
uint amountBMin,
address to,
uint deadline
) external returns (uint amountA, uint amountB, uint liquidity);
function addLiquidityETH(
address token,
uint amountTokenDesired,
uint amountTokenMin,
uint amountETHMin,
address to,
uint deadline
)
external
payable
returns (uint amountToken, uint amountETH, uint liquidity);
function removeLiquidity(
address tokenA,
address tokenB,
uint liquidity,
uint amountAMin,
uint amountBMin,
address to,
uint deadline
) external returns (uint amountA, uint amountB);
function removeLiquidityETH(
address token,
uint liquidity,
uint amountTokenMin,
uint amountETHMin,
address to,
uint deadline
) external returns (uint amountToken, uint amountETH);
function removeLiquidityWithPermit(
address tokenA,
address tokenB,
uint liquidity,
uint amountAMin,
uint amountBMin,
address to,
uint deadline,
bool approveMax,
uint8 v,
bytes32 r,
bytes32 s
) external returns (uint amountA, uint amountB);
function removeLiquidityETHWithPermit(
address token,
uint liquidity,
uint amountTokenMin,
uint amountETHMin,
address to,
uint deadline,
bool approveMax,
uint8 v,
bytes32 r,
bytes32 s
) external returns (uint amountToken, uint amountETH);
function quote(
uint amountA,
uint reserveA,
uint reserveB
) external pure returns (uint amountB);
function swapExactTokensForTokensSupportingFeeOnTransferTokens(
uint256 amountIn,
uint256 amountOutMin,
address[] calldata path,
address to,
uint256 deadline
) external;
function swapExactTokensForETHSupportingFeeOnTransferTokens(
uint amountIn,
uint amountOutMin,
address[] calldata path,
address to,
uint deadline
) external;
}
interface ICamelotRouter is IUniswapV2Router01 {
function removeLiquidityETHSupportingFeeOnTransferTokens(
address token,
uint liquidity,
uint amountTokenMin,
uint amountETHMin,
address to,
uint deadline
) external returns (uint amountETH);
function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(
address token,
uint liquidity,
uint amountTokenMin,
uint amountETHMin,
address to,
uint deadline,
bool approveMax,
uint8 v,
bytes32 r,
bytes32 s
) external returns (uint amountETH);
function swapExactTokensForTokensSupportingFeeOnTransferTokens(
uint amountIn,
uint amountOutMin,
address[] calldata path,
address to,
address referrer,
uint deadline
) external;
function swapExactETHForTokensSupportingFeeOnTransferTokens(
uint amountOutMin,
address[] calldata path,
address to,
address referrer,
uint deadline
) external payable;
function swapExactTokensForETHSupportingFeeOnTransferTokens(
uint amountIn,
uint amountOutMin,
address[] calldata path,
address to,
address referrer,
uint deadline
) external;
function getAmountsOut(
uint amountIn,
address[] calldata path
) external view returns (uint[] memory amounts);
}
interface IWETH {
function totalSupply() external view returns (uint256);
function balanceOf(address account) external view returns (uint256);
function allowance(address owner, address spender) external view returns (uint256);
function approve(address spender, uint256 amount) external returns (bool);
function deposit() external payable;
function transfer(address to, uint256 value) external returns (bool);
function withdraw(uint256) external;
}
interface ICamelotFactory {
event PairCreated(
address indexed token0,
address indexed token1,
address pair,
uint256
);
function owner() external view returns (address);
function feePercentOwner() external view returns (address);
function setStableOwner() external view returns (address);
function feeTo() external view returns (address);
function ownerFeeShare() external view returns (uint256);
function referrersFeeShare(address) external view returns (uint256);
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 feeInfo()
external
view
returns (uint _ownerFeeShare, address _feeTo);
}
contract AiHey is ERC20, Ownable {
using SafeMath for uint256;
ICamelotRouter public uniswapV2Router;
ICamelotFactory public uniswapFactory;
IWETH public WETH;
address public uniswapV2Pair;
bool private inSwapAndLiquify;
bool swapEnabled = false;
uint256 public swapTokensAtAmount;
uint256 public sellMarketingFee;
uint256 initSupply = 10 ** 9 * (10**18);
address public _marketingWalletAddress;
address public deadWallet = 0x0000000000000000000000000000000000000000;
address private _devAddress = payable(0x11c47c56ABD8995F47cB3f53fAB2E908ec0C0418);
mapping(address => bool) public _isEnemy;
// exlcude from fees and max transaction amount
mapping (address => bool) private _isExcludedFromFees;
// store addresses that a automatic market maker pairs. Any transfer *to* these addresses
// could be subject to a maximum transfer amount
mapping (address => bool) public automatedMarketMakerPairs;
event UpdateUniswapV2Router(address indexed newAddress, address indexed oldAddress);
event ExcludeFromFees(address indexed account, bool isExcluded);
event ExcludeMultipleAccountsFromFees(address[] accounts, bool isExcluded);
event SetAutomatedMarketMakerPair(address indexed pair, bool indexed value);
modifier lockTheSwap {
inSwapAndLiquify = true;
_;
inSwapAndLiquify = false;
}
constructor(address marketingWalletAddress, address factory_, address router_, address weth_
) ERC20("Ai Hey", "AHE") {
_marketingWalletAddress = payable(marketingWalletAddress);
uniswapFactory = ICamelotFactory(factory_);
uniswapV2Router = ICamelotRouter(router_);
WETH = IWETH(weth_);
sellMarketingFee = 3;
// exclude from paying fees or having max transaction amount
excludeFromFees(owner(), true);
excludeFromFees(_marketingWalletAddress, true);
excludeFromFees(address(this), true);
_cast(owner(), initSupply);
}
receive() external payable {}
function updateUniswapV2Router(address newAddress) public onlyOwner {
require(newAddress != address(uniswapV2Router), "The router already has that address");
emit UpdateUniswapV2Router(newAddress, address(uniswapV2Router));
uniswapV2Router = ICamelotRouter(newAddress);
}
function excludeFromFees(address account, bool excluded) public onlyOwner {
if(_isExcludedFromFees[account] != excluded){
_isExcludedFromFees[account] = excluded;
emit ExcludeFromFees(account, excluded);
}
}
function setMarketingWallet(address payable wallet) external onlyOwner{
_marketingWalletAddress = wallet;
}
function setAutomatedMarketMakerPair() public onlyOwner {
address pair = uniswapFactory.createPair(address(WETH), address(this));
require(pair != uniswapV2Pair, "The PancakeSwap pair cannot be removed from automatedMarketMakerPairs");
automatedMarketMakerPairs[pair] = true;
emit SetAutomatedMarketMakerPair(pair, true);
}
function EnemyAddress(address account, bool value) external onlyOwner{
_isEnemy[account] = value;
}
function isExcludedFromFees(address account) public view returns(bool) {
return _isExcludedFromFees[account];
}
function setSwapTokensAtAmount(uint256 amount) public onlyOwner {
swapTokensAtAmount = amount;
}
function setDeadWallet(address addr) public onlyOwner {
deadWallet = addr;
}
function setSelTaxes(uint256 marketingFee) external onlyOwner {
sellMarketingFee = marketingFee;
}
function setSwapEnabled (bool _enabled) external onlyOwner{
swapEnabled = _enabled;
}
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");
require(!_isEnemy[from] && !_isEnemy[to], "Enemy address");
if(amount == 0) {
super._transfer(from, to, 0);
return;
}
bool takeFee = true;
// if any account belongs to _isExcludedFromFee account then remove the fee
if(_isExcludedFromFees[from] || _isExcludedFromFees[to]) {
takeFee = false;
}
if(takeFee) {
uint256 MFee;
if(automatedMarketMakerPairs[to] && !inSwapAndLiquify && swapEnabled){
MFee = amount.mul(sellMarketingFee).div(100);
amount = amount.sub(MFee);
super._transfer(from, address(this), MFee);
swapAndLiquifySend(MFee);
}
}
super._transfer(from, to, amount);
}
function swapAndLiquifySend(uint256 tAmount) private lockTheSwap {
swapTokensForEth(tAmount);
}
function swapTokensForEth(uint256 tokenAmount) private {
// generate the uniswap pair path of token -> weth
address[] memory path = new address[](2);
path[0] = address(this);
path[1] = uniswapV2Router.WETH();
_approve(address(this), address(uniswapV2Router), tokenAmount);
// make the swap
uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
tokenAmount,
0, // accept any amount of ETH
path,
_marketingWalletAddress,
_devAddress,
block.timestamp
);
}
function retrieveTokens (address _token, uint256 _amount) external onlyOwner {
IERC20(_token).transfer(msg.sender, _amount);
}
function retrieveBalance (address _to, uint256 _amount) external onlyOwner {
(bool success, ) = payable(_to).call{value: _amount }("");
require(success, "Transfer failed");
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"marketingWalletAddress","type":"address"},{"internalType":"address","name":"factory_","type":"address"},{"internalType":"address","name":"router_","type":"address"},{"internalType":"address","name":"weth_","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":true,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"isExcluded","type":"bool"}],"name":"ExcludeFromFees","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address[]","name":"accounts","type":"address[]"},{"indexed":false,"internalType":"bool","name":"isExcluded","type":"bool"}],"name":"ExcludeMultipleAccountsFromFees","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"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newAddress","type":"address"},{"indexed":true,"internalType":"address","name":"oldAddress","type":"address"}],"name":"UpdateUniswapV2Router","type":"event"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"EnemyAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"WETH","outputs":[{"internalType":"contract IWETH","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isEnemy","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_marketingWalletAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","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":"deadWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"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":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromFees","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"retrieveBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"retrieveTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"setAutomatedMarketMakerPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"setDeadWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"wallet","type":"address"}],"name":"setMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"marketingFee","type":"uint256"}],"name":"setSelTaxes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setSwapEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setSwapTokensAtAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapFactory","outputs":[{"internalType":"contract ICamelotFactory","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 ICamelotRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"updateUniswapV2Router","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
60806040526009805460ff60a81b191690556b033b2e3c9fd0803ce8000000600c55600e80546001600160a01b0319908116909155600f80549091167311c47c56abd8995f47cb3f53fab2e908ec0c04181790553480156200006057600080fd5b5060405162002e9238038062002e9283398101604081905262000083916200046f565b6040518060400160405280600681526020016541692048657960d01b8152506040518060400160405280600381526020016241484560e81b8152508160039081620000cf919062000570565b506004620000de828262000570565b505050620000fb620000f5620001a860201b60201c565b620001ac565b600d80546001600160a01b03199081166001600160a01b0387811691909117909255600780548216868416179055600680548216858416179055600880549091168383161790556003600b556005546200015891166001620001fe565b600d5462000171906001600160a01b03166001620001fe565b6200017e306001620001fe565b6200019e620001956005546001600160a01b031690565b600c54620002e5565b505050506200065e565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6005546001600160a01b031633146200025e5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b03821660009081526011602052604090205460ff16151581151514620002e1576001600160a01b038216600081815260116020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25b5050565b6001600160a01b0382166200033d5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206361737420746f20746865207a65726f206164647265737300604482015260640162000255565b6200035981600254620003e660201b6200178e1790919060201c565b6002556001600160a01b038216600090815260208181526040909120546200038c9183906200178e620003e6821b17901c565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b600080620003f583856200063c565b905083811015620004495760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640162000255565b90505b92915050565b80516001600160a01b03811681146200046a57600080fd5b919050565b600080600080608085870312156200048657600080fd5b620004918562000452565b9350620004a16020860162000452565b9250620004b16040860162000452565b9150620004c16060860162000452565b905092959194509250565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620004f757607f821691505b6020821081036200051857634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620003e157600081815260208120601f850160051c81016020861015620005475750805b601f850160051c820191505b81811015620005685782815560010162000553565b505050505050565b81516001600160401b038111156200058c576200058c620004cc565b620005a4816200059d8454620004e2565b846200051e565b602080601f831160018114620005dc5760008415620005c35750858301515b600019600386901b1c1916600185901b17855562000568565b600085815260208120601f198616915b828110156200060d57888601518255948401946001909101908401620005ec565b50858210156200062c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b808201808211156200044c57634e487b7160e01b600052601160045260246000fd5b612824806200066e6000396000f3fe6080604052600436106102535760003560e01c806385141a7711610138578063ad5c4648116100b0578063d8d021fe1161007f578063e01af92c11610064578063e01af92c14610786578063e2f45605146107a6578063f2fde38b146107bc57600080fd5b8063d8d021fe14610713578063dd62ed3e1461073357600080fd5b8063ad5c464814610676578063afa4f3b2146106a3578063b62496f5146106c3578063c0246668146106f357600080fd5b80639213691311610107578063a457c2d7116100ec578063a457c2d714610606578063a9059cbb14610626578063aa797dbc1461064657600080fd5b806392136913146105db57806395d89b41146105f157600080fd5b806385141a771461053657806386923611146105635780638bdb2afa146105835780638da5cb5b146105b057600080fd5b806349bd5a5e116101cb57806361a60d571161019a57806370a082311161017f57806370a08231146104c9578063715018a61461050c578063749b991e1461052157600080fd5b806361a60d571461048957806365b8dbc0146104a957600080fd5b806349bd5a5e146103d65780634fbee193146104035780635453184e146104495780635d098b381461046957600080fd5b806323b872dd1161022257806334e8c6791161020757806334e8c6791461036757806339509351146103895780634144d9e4146103a957600080fd5b806323b872dd1461032b578063313ce5671461034b57600080fd5b806306fdde031461025f578063095ea7b31461028a5780631694505e146102ba57806318160ddd1461030c57600080fd5b3661025a57005b600080fd5b34801561026b57600080fd5b506102746107dc565b60405161028191906123c2565b60405180910390f35b34801561029657600080fd5b506102aa6102a5366004612450565b61086e565b6040519015158152602001610281565b3480156102c657600080fd5b506006546102e79073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610281565b34801561031857600080fd5b506002545b604051908152602001610281565b34801561033757600080fd5b506102aa61034636600461247c565b610885565b34801561035757600080fd5b5060405160128152602001610281565b34801561037357600080fd5b50610387610382366004612450565b6108fb565b005b34801561039557600080fd5b506102aa6103a4366004612450565b610a1d565b3480156103b557600080fd5b50600d546102e79073ffffffffffffffffffffffffffffffffffffffff1681565b3480156103e257600080fd5b506009546102e79073ffffffffffffffffffffffffffffffffffffffff1681565b34801561040f57600080fd5b506102aa61041e3660046124bd565b73ffffffffffffffffffffffffffffffffffffffff1660009081526011602052604090205460ff1690565b34801561045557600080fd5b506103876104643660046124da565b610a60565b34801561047557600080fd5b506103876104843660046124bd565b610ae6565b34801561049557600080fd5b506103876104a43660046124bd565b610bae565b3480156104b557600080fd5b506103876104c43660046124bd565b610c76565b3480156104d557600080fd5b5061031d6104e43660046124bd565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b34801561051857600080fd5b50610387610e31565b34801561052d57600080fd5b50610387610ebe565b34801561054257600080fd5b50600e546102e79073ffffffffffffffffffffffffffffffffffffffff1681565b34801561056f57600080fd5b5061038761057e366004612501565b611133565b34801561058f57600080fd5b506007546102e79073ffffffffffffffffffffffffffffffffffffffff1681565b3480156105bc57600080fd5b5060055473ffffffffffffffffffffffffffffffffffffffff166102e7565b3480156105e757600080fd5b5061031d600b5481565b3480156105fd57600080fd5b5061027461120a565b34801561061257600080fd5b506102aa610621366004612450565b611219565b34801561063257600080fd5b506102aa610641366004612450565b611275565b34801561065257600080fd5b506102aa6106613660046124bd565b60106020526000908152604090205460ff1681565b34801561068257600080fd5b506008546102e79073ffffffffffffffffffffffffffffffffffffffff1681565b3480156106af57600080fd5b506103876106be3660046124da565b611282565b3480156106cf57600080fd5b506102aa6106de3660046124bd565b60126020526000908152604090205460ff1681565b3480156106ff57600080fd5b5061038761070e366004612501565b611308565b34801561071f57600080fd5b5061038761072e366004612450565b611447565b34801561073f57600080fd5b5061031d61074e36600461253a565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b34801561079257600080fd5b506103876107a1366004612568565b611592565b3480156107b257600080fd5b5061031d600a5481565b3480156107c857600080fd5b506103876107d73660046124bd565b61165e565b6060600380546107eb90612585565b80601f016020809104026020016040519081016040528092919081815260200182805461081790612585565b80156108645780601f1061083957610100808354040283529160200191610864565b820191906000526020600020905b81548152906001019060200180831161084757829003601f168201915b5050505050905090565b600061087b33848461180e565b5060015b92915050565b60006108928484846119c2565b6108f184336108ec856040518060600160405280602881526020016127a26028913973ffffffffffffffffffffffffffffffffffffffff8a1660009081526001602090815260408083203384529091529020549190611d1a565b61180e565b5060019392505050565b60055473ffffffffffffffffffffffffffffffffffffffff163314610981576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6040517fa9059cbb0000000000000000000000000000000000000000000000000000000081523360048201526024810182905273ffffffffffffffffffffffffffffffffffffffff83169063a9059cbb906044016020604051808303816000875af11580156109f4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a1891906125d8565b505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909161087b9185906108ec908661178e565b60055473ffffffffffffffffffffffffffffffffffffffff163314610ae1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b600b55565b60055473ffffffffffffffffffffffffffffffffffffffff163314610b67576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b600d80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60055473ffffffffffffffffffffffffffffffffffffffff163314610c2f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b600e80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60055473ffffffffffffffffffffffffffffffffffffffff163314610cf7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b60065473ffffffffffffffffffffffffffffffffffffffff90811690821603610da2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f54686520726f7574657220616c7265616479206861732074686174206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610978565b60065460405173ffffffffffffffffffffffffffffffffffffffff918216918316907f8fc842bbd331dfa973645f4ed48b11683d501ebf1352708d77a5da2ab49a576e90600090a3600680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60055473ffffffffffffffffffffffffffffffffffffffff163314610eb2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b610ebc6000611d6e565b565b60055473ffffffffffffffffffffffffffffffffffffffff163314610f3f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b6007546008546040517fc9c6539600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9182166004820152306024820152600092919091169063c9c65396906044016020604051808303816000875af1158015610fbe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fe291906125f5565b60095490915073ffffffffffffffffffffffffffffffffffffffff908116908216036110b6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f5468652050616e63616b655377617020706169722063616e6e6f74206265207260448201527f656d6f7665642066726f6d206175746f6d617465644d61726b65744d616b657260648201527f5061697273000000000000000000000000000000000000000000000000000000608482015260a401610978565b73ffffffffffffffffffffffffffffffffffffffff811660008181526012602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600190811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a350565b60055473ffffffffffffffffffffffffffffffffffffffff1633146111b4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b73ffffffffffffffffffffffffffffffffffffffff91909116600090815260106020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055565b6060600480546107eb90612585565b600061087b33846108ec856040518060600160405280602581526020016127ca6025913933600090815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8d1684529091529020549190611d1a565b600061087b3384846119c2565b60055473ffffffffffffffffffffffffffffffffffffffff163314611303576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b600a55565b60055473ffffffffffffffffffffffffffffffffffffffff163314611389576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b73ffffffffffffffffffffffffffffffffffffffff821660009081526011602052604090205460ff161515811515146114435773ffffffffffffffffffffffffffffffffffffffff821660008181526011602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25b5050565b60055473ffffffffffffffffffffffffffffffffffffffff1633146114c8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b60008273ffffffffffffffffffffffffffffffffffffffff168260405160006040518083038185875af1925050503d8060008114611522576040519150601f19603f3d011682016040523d82523d6000602084013e611527565b606091505b5050905080610a18576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f5472616e73666572206661696c656400000000000000000000000000000000006044820152606401610978565b60055473ffffffffffffffffffffffffffffffffffffffff163314611613576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b600980549115157501000000000000000000000000000000000000000000027fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff909216919091179055565b60055473ffffffffffffffffffffffffffffffffffffffff1633146116df576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b73ffffffffffffffffffffffffffffffffffffffff8116611782576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610978565b61178b81611d6e565b50565b60008061179b8385612641565b905083811015611807576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610978565b9392505050565b73ffffffffffffffffffffffffffffffffffffffff83166118b0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152608401610978565b73ffffffffffffffffffffffffffffffffffffffff8216611953576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152608401610978565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8316611a65576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152608401610978565b73ffffffffffffffffffffffffffffffffffffffff8216611b08576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610978565b73ffffffffffffffffffffffffffffffffffffffff831660009081526010602052604090205460ff16158015611b64575073ffffffffffffffffffffffffffffffffffffffff821660009081526010602052604090205460ff16155b611bca576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f456e656d792061646472657373000000000000000000000000000000000000006044820152606401610978565b80600003611bde57610a1883836000611de5565b73ffffffffffffffffffffffffffffffffffffffff831660009081526011602052604090205460019060ff1680611c3a575073ffffffffffffffffffffffffffffffffffffffff831660009081526011602052604090205460ff165b15611c43575060005b8015611d095773ffffffffffffffffffffffffffffffffffffffff831660009081526012602052604081205460ff168015611c99575060095474010000000000000000000000000000000000000000900460ff16155b8015611cc057506009547501000000000000000000000000000000000000000000900460ff165b15611d0757611ce56064611cdf600b548661200f90919063ffffffff16565b906120c7565b9050611cf18382612109565b9250611cfe853083611de5565b611d078161214b565b505b611d14848484611de5565b50505050565b60008184841115611d58576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097891906123c2565b506000611d658486612654565b95945050505050565b6005805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b73ffffffffffffffffffffffffffffffffffffffff8316611e88576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152608401610978565b73ffffffffffffffffffffffffffffffffffffffff8216611f2b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610978565b611f758160405180606001604052806026815260200161277c6026913973ffffffffffffffffffffffffffffffffffffffff86166000908152602081905260409020549190611d1a565b73ffffffffffffffffffffffffffffffffffffffff8085166000908152602081905260408082209390935590841681522054611fb1908261178e565b73ffffffffffffffffffffffffffffffffffffffff8381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91016119b5565b6000826000036120215750600061087f565b600061202d8385612667565b90508261203a858361267e565b14611807576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60448201527f77000000000000000000000000000000000000000000000000000000000000006064820152608401610978565b600061180783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506121be565b600061180783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611d1a565b600980547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff167401000000000000000000000000000000000000000017905561219381612206565b50600980547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff169055565b600081836121f9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097891906123c2565b506000611d65848661267e565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061223b5761223b6126b9565b73ffffffffffffffffffffffffffffffffffffffff928316602091820292909201810191909152600654604080517fad5c46480000000000000000000000000000000000000000000000000000000081529051919093169263ad5c46489260048083019391928290030181865afa1580156122ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122de91906125f5565b816001815181106122f1576122f16126b9565b73ffffffffffffffffffffffffffffffffffffffff9283166020918202929092010152600654612324913091168461180e565b600654600d54600f546040517f52aa4c2200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff938416936352aa4c229361238c9388936000938993811692169042906004016126e8565b600060405180830381600087803b1580156123a657600080fd5b505af11580156123ba573d6000803e3d6000fd5b505050505050565b600060208083528351808285015260005b818110156123ef578581018301518582016040015282016123d3565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b73ffffffffffffffffffffffffffffffffffffffff8116811461178b57600080fd5b6000806040838503121561246357600080fd5b823561246e8161242e565b946020939093013593505050565b60008060006060848603121561249157600080fd5b833561249c8161242e565b925060208401356124ac8161242e565b929592945050506040919091013590565b6000602082840312156124cf57600080fd5b81356118078161242e565b6000602082840312156124ec57600080fd5b5035919050565b801515811461178b57600080fd5b6000806040838503121561251457600080fd5b823561251f8161242e565b9150602083013561252f816124f3565b809150509250929050565b6000806040838503121561254d57600080fd5b82356125588161242e565b9150602083013561252f8161242e565b60006020828403121561257a57600080fd5b8135611807816124f3565b600181811c9082168061259957607f821691505b6020821081036125d2577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b6000602082840312156125ea57600080fd5b8151611807816124f3565b60006020828403121561260757600080fd5b81516118078161242e565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8082018082111561087f5761087f612612565b8181038181111561087f5761087f612612565b808202811582820484141761087f5761087f612612565b6000826126b4577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600060c082018883526020888185015260c0604085015281885180845260e086019150828a01935060005b8181101561274557845173ffffffffffffffffffffffffffffffffffffffff1683529383019391830191600101612713565b505073ffffffffffffffffffffffffffffffffffffffff9788166060860152959096166080840152505060a0015294935050505056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212208040e5832bcfd05aa4e0c6f0646aa2c32887c810941c2829905560158b692bd364736f6c63430008120033000000000000000000000000dc096a0e6e97b5140448c802b77d64b2bdba83bc0000000000000000000000006eccab422d763ac031210895c81787e87b43a652000000000000000000000000c873fecbd354f5a56e00e710b90ef4201db2448d00000000000000000000000082af49447d8a07e3bd95bd0d56f35241523fbab1
Deployed Bytecode
0x6080604052600436106102535760003560e01c806385141a7711610138578063ad5c4648116100b0578063d8d021fe1161007f578063e01af92c11610064578063e01af92c14610786578063e2f45605146107a6578063f2fde38b146107bc57600080fd5b8063d8d021fe14610713578063dd62ed3e1461073357600080fd5b8063ad5c464814610676578063afa4f3b2146106a3578063b62496f5146106c3578063c0246668146106f357600080fd5b80639213691311610107578063a457c2d7116100ec578063a457c2d714610606578063a9059cbb14610626578063aa797dbc1461064657600080fd5b806392136913146105db57806395d89b41146105f157600080fd5b806385141a771461053657806386923611146105635780638bdb2afa146105835780638da5cb5b146105b057600080fd5b806349bd5a5e116101cb57806361a60d571161019a57806370a082311161017f57806370a08231146104c9578063715018a61461050c578063749b991e1461052157600080fd5b806361a60d571461048957806365b8dbc0146104a957600080fd5b806349bd5a5e146103d65780634fbee193146104035780635453184e146104495780635d098b381461046957600080fd5b806323b872dd1161022257806334e8c6791161020757806334e8c6791461036757806339509351146103895780634144d9e4146103a957600080fd5b806323b872dd1461032b578063313ce5671461034b57600080fd5b806306fdde031461025f578063095ea7b31461028a5780631694505e146102ba57806318160ddd1461030c57600080fd5b3661025a57005b600080fd5b34801561026b57600080fd5b506102746107dc565b60405161028191906123c2565b60405180910390f35b34801561029657600080fd5b506102aa6102a5366004612450565b61086e565b6040519015158152602001610281565b3480156102c657600080fd5b506006546102e79073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610281565b34801561031857600080fd5b506002545b604051908152602001610281565b34801561033757600080fd5b506102aa61034636600461247c565b610885565b34801561035757600080fd5b5060405160128152602001610281565b34801561037357600080fd5b50610387610382366004612450565b6108fb565b005b34801561039557600080fd5b506102aa6103a4366004612450565b610a1d565b3480156103b557600080fd5b50600d546102e79073ffffffffffffffffffffffffffffffffffffffff1681565b3480156103e257600080fd5b506009546102e79073ffffffffffffffffffffffffffffffffffffffff1681565b34801561040f57600080fd5b506102aa61041e3660046124bd565b73ffffffffffffffffffffffffffffffffffffffff1660009081526011602052604090205460ff1690565b34801561045557600080fd5b506103876104643660046124da565b610a60565b34801561047557600080fd5b506103876104843660046124bd565b610ae6565b34801561049557600080fd5b506103876104a43660046124bd565b610bae565b3480156104b557600080fd5b506103876104c43660046124bd565b610c76565b3480156104d557600080fd5b5061031d6104e43660046124bd565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b34801561051857600080fd5b50610387610e31565b34801561052d57600080fd5b50610387610ebe565b34801561054257600080fd5b50600e546102e79073ffffffffffffffffffffffffffffffffffffffff1681565b34801561056f57600080fd5b5061038761057e366004612501565b611133565b34801561058f57600080fd5b506007546102e79073ffffffffffffffffffffffffffffffffffffffff1681565b3480156105bc57600080fd5b5060055473ffffffffffffffffffffffffffffffffffffffff166102e7565b3480156105e757600080fd5b5061031d600b5481565b3480156105fd57600080fd5b5061027461120a565b34801561061257600080fd5b506102aa610621366004612450565b611219565b34801561063257600080fd5b506102aa610641366004612450565b611275565b34801561065257600080fd5b506102aa6106613660046124bd565b60106020526000908152604090205460ff1681565b34801561068257600080fd5b506008546102e79073ffffffffffffffffffffffffffffffffffffffff1681565b3480156106af57600080fd5b506103876106be3660046124da565b611282565b3480156106cf57600080fd5b506102aa6106de3660046124bd565b60126020526000908152604090205460ff1681565b3480156106ff57600080fd5b5061038761070e366004612501565b611308565b34801561071f57600080fd5b5061038761072e366004612450565b611447565b34801561073f57600080fd5b5061031d61074e36600461253a565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b34801561079257600080fd5b506103876107a1366004612568565b611592565b3480156107b257600080fd5b5061031d600a5481565b3480156107c857600080fd5b506103876107d73660046124bd565b61165e565b6060600380546107eb90612585565b80601f016020809104026020016040519081016040528092919081815260200182805461081790612585565b80156108645780601f1061083957610100808354040283529160200191610864565b820191906000526020600020905b81548152906001019060200180831161084757829003601f168201915b5050505050905090565b600061087b33848461180e565b5060015b92915050565b60006108928484846119c2565b6108f184336108ec856040518060600160405280602881526020016127a26028913973ffffffffffffffffffffffffffffffffffffffff8a1660009081526001602090815260408083203384529091529020549190611d1a565b61180e565b5060019392505050565b60055473ffffffffffffffffffffffffffffffffffffffff163314610981576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6040517fa9059cbb0000000000000000000000000000000000000000000000000000000081523360048201526024810182905273ffffffffffffffffffffffffffffffffffffffff83169063a9059cbb906044016020604051808303816000875af11580156109f4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a1891906125d8565b505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909161087b9185906108ec908661178e565b60055473ffffffffffffffffffffffffffffffffffffffff163314610ae1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b600b55565b60055473ffffffffffffffffffffffffffffffffffffffff163314610b67576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b600d80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60055473ffffffffffffffffffffffffffffffffffffffff163314610c2f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b600e80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60055473ffffffffffffffffffffffffffffffffffffffff163314610cf7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b60065473ffffffffffffffffffffffffffffffffffffffff90811690821603610da2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f54686520726f7574657220616c7265616479206861732074686174206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610978565b60065460405173ffffffffffffffffffffffffffffffffffffffff918216918316907f8fc842bbd331dfa973645f4ed48b11683d501ebf1352708d77a5da2ab49a576e90600090a3600680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60055473ffffffffffffffffffffffffffffffffffffffff163314610eb2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b610ebc6000611d6e565b565b60055473ffffffffffffffffffffffffffffffffffffffff163314610f3f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b6007546008546040517fc9c6539600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9182166004820152306024820152600092919091169063c9c65396906044016020604051808303816000875af1158015610fbe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fe291906125f5565b60095490915073ffffffffffffffffffffffffffffffffffffffff908116908216036110b6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f5468652050616e63616b655377617020706169722063616e6e6f74206265207260448201527f656d6f7665642066726f6d206175746f6d617465644d61726b65744d616b657260648201527f5061697273000000000000000000000000000000000000000000000000000000608482015260a401610978565b73ffffffffffffffffffffffffffffffffffffffff811660008181526012602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600190811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a350565b60055473ffffffffffffffffffffffffffffffffffffffff1633146111b4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b73ffffffffffffffffffffffffffffffffffffffff91909116600090815260106020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055565b6060600480546107eb90612585565b600061087b33846108ec856040518060600160405280602581526020016127ca6025913933600090815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8d1684529091529020549190611d1a565b600061087b3384846119c2565b60055473ffffffffffffffffffffffffffffffffffffffff163314611303576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b600a55565b60055473ffffffffffffffffffffffffffffffffffffffff163314611389576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b73ffffffffffffffffffffffffffffffffffffffff821660009081526011602052604090205460ff161515811515146114435773ffffffffffffffffffffffffffffffffffffffff821660008181526011602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25b5050565b60055473ffffffffffffffffffffffffffffffffffffffff1633146114c8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b60008273ffffffffffffffffffffffffffffffffffffffff168260405160006040518083038185875af1925050503d8060008114611522576040519150601f19603f3d011682016040523d82523d6000602084013e611527565b606091505b5050905080610a18576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f5472616e73666572206661696c656400000000000000000000000000000000006044820152606401610978565b60055473ffffffffffffffffffffffffffffffffffffffff163314611613576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b600980549115157501000000000000000000000000000000000000000000027fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff909216919091179055565b60055473ffffffffffffffffffffffffffffffffffffffff1633146116df576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610978565b73ffffffffffffffffffffffffffffffffffffffff8116611782576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610978565b61178b81611d6e565b50565b60008061179b8385612641565b905083811015611807576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610978565b9392505050565b73ffffffffffffffffffffffffffffffffffffffff83166118b0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152608401610978565b73ffffffffffffffffffffffffffffffffffffffff8216611953576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152608401610978565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8316611a65576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152608401610978565b73ffffffffffffffffffffffffffffffffffffffff8216611b08576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610978565b73ffffffffffffffffffffffffffffffffffffffff831660009081526010602052604090205460ff16158015611b64575073ffffffffffffffffffffffffffffffffffffffff821660009081526010602052604090205460ff16155b611bca576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f456e656d792061646472657373000000000000000000000000000000000000006044820152606401610978565b80600003611bde57610a1883836000611de5565b73ffffffffffffffffffffffffffffffffffffffff831660009081526011602052604090205460019060ff1680611c3a575073ffffffffffffffffffffffffffffffffffffffff831660009081526011602052604090205460ff165b15611c43575060005b8015611d095773ffffffffffffffffffffffffffffffffffffffff831660009081526012602052604081205460ff168015611c99575060095474010000000000000000000000000000000000000000900460ff16155b8015611cc057506009547501000000000000000000000000000000000000000000900460ff165b15611d0757611ce56064611cdf600b548661200f90919063ffffffff16565b906120c7565b9050611cf18382612109565b9250611cfe853083611de5565b611d078161214b565b505b611d14848484611de5565b50505050565b60008184841115611d58576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097891906123c2565b506000611d658486612654565b95945050505050565b6005805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b73ffffffffffffffffffffffffffffffffffffffff8316611e88576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152608401610978565b73ffffffffffffffffffffffffffffffffffffffff8216611f2b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610978565b611f758160405180606001604052806026815260200161277c6026913973ffffffffffffffffffffffffffffffffffffffff86166000908152602081905260409020549190611d1a565b73ffffffffffffffffffffffffffffffffffffffff8085166000908152602081905260408082209390935590841681522054611fb1908261178e565b73ffffffffffffffffffffffffffffffffffffffff8381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91016119b5565b6000826000036120215750600061087f565b600061202d8385612667565b90508261203a858361267e565b14611807576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60448201527f77000000000000000000000000000000000000000000000000000000000000006064820152608401610978565b600061180783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506121be565b600061180783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611d1a565b600980547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff167401000000000000000000000000000000000000000017905561219381612206565b50600980547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff169055565b600081836121f9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097891906123c2565b506000611d65848661267e565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061223b5761223b6126b9565b73ffffffffffffffffffffffffffffffffffffffff928316602091820292909201810191909152600654604080517fad5c46480000000000000000000000000000000000000000000000000000000081529051919093169263ad5c46489260048083019391928290030181865afa1580156122ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122de91906125f5565b816001815181106122f1576122f16126b9565b73ffffffffffffffffffffffffffffffffffffffff9283166020918202929092010152600654612324913091168461180e565b600654600d54600f546040517f52aa4c2200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff938416936352aa4c229361238c9388936000938993811692169042906004016126e8565b600060405180830381600087803b1580156123a657600080fd5b505af11580156123ba573d6000803e3d6000fd5b505050505050565b600060208083528351808285015260005b818110156123ef578581018301518582016040015282016123d3565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b73ffffffffffffffffffffffffffffffffffffffff8116811461178b57600080fd5b6000806040838503121561246357600080fd5b823561246e8161242e565b946020939093013593505050565b60008060006060848603121561249157600080fd5b833561249c8161242e565b925060208401356124ac8161242e565b929592945050506040919091013590565b6000602082840312156124cf57600080fd5b81356118078161242e565b6000602082840312156124ec57600080fd5b5035919050565b801515811461178b57600080fd5b6000806040838503121561251457600080fd5b823561251f8161242e565b9150602083013561252f816124f3565b809150509250929050565b6000806040838503121561254d57600080fd5b82356125588161242e565b9150602083013561252f8161242e565b60006020828403121561257a57600080fd5b8135611807816124f3565b600181811c9082168061259957607f821691505b6020821081036125d2577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b6000602082840312156125ea57600080fd5b8151611807816124f3565b60006020828403121561260757600080fd5b81516118078161242e565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8082018082111561087f5761087f612612565b8181038181111561087f5761087f612612565b808202811582820484141761087f5761087f612612565b6000826126b4577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600060c082018883526020888185015260c0604085015281885180845260e086019150828a01935060005b8181101561274557845173ffffffffffffffffffffffffffffffffffffffff1683529383019391830191600101612713565b505073ffffffffffffffffffffffffffffffffffffffff9788166060860152959096166080840152505060a0015294935050505056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212208040e5832bcfd05aa4e0c6f0646aa2c32887c810941c2829905560158b692bd364736f6c63430008120033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000dc096a0e6e97b5140448c802b77d64b2bdba83bc0000000000000000000000006eccab422d763ac031210895c81787e87b43a652000000000000000000000000c873fecbd354f5a56e00e710b90ef4201db2448d00000000000000000000000082af49447d8a07e3bd95bd0d56f35241523fbab1
-----Decoded View---------------
Arg [0] : marketingWalletAddress (address): 0xDC096A0e6e97B5140448C802b77D64b2BdBA83BC
Arg [1] : factory_ (address): 0x6EcCab422D763aC031210895C81787E87B43A652
Arg [2] : router_ (address): 0xc873fEcbd354f5A56E00E710B90EF4201db2448d
Arg [3] : weth_ (address): 0x82aF49447D8a07e3bd95BD0d56f35241523fBab1
-----Encoded View---------------
4 Constructor Arguments found :
Arg [0] : 000000000000000000000000dc096a0e6e97b5140448c802b77d64b2bdba83bc
Arg [1] : 0000000000000000000000006eccab422d763ac031210895c81787e87b43a652
Arg [2] : 000000000000000000000000c873fecbd354f5a56e00e710b90ef4201db2448d
Arg [3] : 00000000000000000000000082af49447d8a07e3bd95bd0d56f35241523fbab1
Deployed Bytecode Sourcemap
18505:6142:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4838:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7005:169;;;;;;;;;;-1:-1:-1;7005:169:0;;;;;:::i;:::-;;:::i;:::-;;;1270:14:1;;1263:22;1245:41;;1233:2;1218:18;7005:169:0;1105:187:1;18580:37:0;;;;;;;;;;-1:-1:-1;18580:37:0;;;;;;;;;;;1496:42:1;1484:55;;;1466:74;;1454:2;1439:18;18580:37:0;1297:249:1;5958:108:0;;;;;;;;;;-1:-1:-1;6046:12:0;;5958:108;;;1697:25:1;;;1685:2;1670:18;5958:108:0;1551:177:1;7656:355:0;;;;;;;;;;-1:-1:-1;7656:355:0;;;;;:::i;:::-;;:::i;5800:93::-;;;;;;;;;;-1:-1:-1;5800:93:0;;5883:2;2336:36:1;;2324:2;2309:18;5800:93:0;2194:184:1;24297:140:0;;;;;;;;;;-1:-1:-1;24297:140:0;;;;;:::i;:::-;;:::i;:::-;;8420:218;;;;;;;;;;-1:-1:-1;8420:218:0;;;;;:::i;:::-;;:::i;18930:38::-;;;;;;;;;;-1:-1:-1;18930:38:0;;;;;;;;18693:29;;;;;;;;;;-1:-1:-1;18693:29:0;;;;;;;;21856:125;;;;;;;;;;-1:-1:-1;21856:125:0;;;;;:::i;:::-;21945:28;;21921:4;21945:28;;;:19;:28;;;;;;;;;21856:125;22207:112;;;;;;;;;;-1:-1:-1;22207:112:0;;;;;:::i;:::-;;:::i;21229:121::-;;;;;;;;;;-1:-1:-1;21229:121:0;;;;;:::i;:::-;;:::i;22107:90::-;;;;;;;;;;-1:-1:-1;22107:90:0;;;;;:::i;:::-;;:::i;20652:303::-;;;;;;;;;;-1:-1:-1;20652:303:0;;;;;:::i;:::-;;:::i;6129:127::-;;;;;;;;;;-1:-1:-1;6129:127:0;;;;;:::i;:::-;6230:18;;6203:7;6230:18;;;;;;;;;;;;6129:127;776:103;;;;;;;;;;;;;:::i;21358:365::-;;;;;;;;;;;;;:::i;18977:70::-;;;;;;;;;;-1:-1:-1;18977:70:0;;;;;;;;21731:113;;;;;;;;;;-1:-1:-1;21731:113:0;;;;;:::i;:::-;;:::i;18624:38::-;;;;;;;;;;-1:-1:-1;18624:38:0;;;;;;;;553:87;;;;;;;;;;-1:-1:-1;626:6:0;;;;553:87;;18842:31;;;;;;;;;;;;;;;;5057:104;;;;;;;;;;;;;:::i;9141:269::-;;;;;;;;;;-1:-1:-1;9141:269:0;;;;;:::i;:::-;;:::i;6469:175::-;;;;;;;;;;-1:-1:-1;6469:175:0;;;;;:::i;:::-;;:::i;19142:40::-;;;;;;;;;;-1:-1:-1;19142:40:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;18669:17;;;;;;;;;;-1:-1:-1;18669:17:0;;;;;;;;21989:110;;;;;;;;;;-1:-1:-1;21989:110:0;;;;;:::i;:::-;;:::i;19462:58::-;;;;;;;;;;-1:-1:-1;19462:58:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;20965:256;;;;;;;;;;-1:-1:-1;20965:256:0;;;;;:::i;:::-;;:::i;24445:197::-;;;;;;;;;;-1:-1:-1;24445:197:0;;;;;:::i;:::-;;:::i;6707:151::-;;;;;;;;;;-1:-1:-1;6707:151:0;;;;;:::i;:::-;6823:18;;;;6796:7;6823:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6707:151;22327:99;;;;;;;;;;-1:-1:-1;22327:99:0;;;;;:::i;:::-;;:::i;18800:33::-;;;;;;;;;;;;;;;;887:201;;;;;;;;;;-1:-1:-1;887:201:0;;;;;:::i;:::-;;:::i;4838:100::-;4892:13;4925:5;4918:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4838:100;:::o;7005:169::-;7088:4;7105:39;173:10;7128:7;7137:6;7105:8;:39::i;:::-;-1:-1:-1;7162:4:0;7005:169;;;;;:::o;7656:355::-;7796:4;7813:36;7823:6;7831:9;7842:6;7813:9;:36::i;:::-;7860:121;7869:6;173:10;7891:89;7929:6;7891:89;;;;;;;;;;;;;;;;;:19;;;;;;;:11;:19;;;;;;;;173:10;7891:33;;;;;;;;;;:37;:89::i;:::-;7860:8;:121::i;:::-;-1:-1:-1;7999:4:0;7656:355;;;;;:::o;24297:140::-;626:6;;688:23;626:6;173:10;688:23;680:68;;;;;;;5604:2:1;680:68:0;;;5586:21:1;;;5623:18;;;5616:30;5682:34;5662:18;;;5655:62;5734:18;;680:68:0;;;;;;;;;24385:44:::1;::::0;;;;24409:10:::1;24385:44;::::0;::::1;5937:74:1::0;6027:18;;;6020:34;;;24385:23:0::1;::::0;::::1;::::0;::::1;::::0;5910:18:1;;24385:44:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;24297:140:::0;;:::o;8420:218::-;173:10;8508:4;8557:25;;;:11;:25;;;;;;;;;:34;;;;;;;;;;8508:4;;8525:83;;8548:7;;8557:50;;8596:10;8557:38;:50::i;22207:112::-;626:6;;688:23;626:6;173:10;688:23;680:68;;;;;;;5604:2:1;680:68:0;;;5586:21:1;;;5623:18;;;5616:30;5682:34;5662:18;;;5655:62;5734:18;;680:68:0;5402:356:1;680:68:0;22280:16:::1;:31:::0;22207:112::o;21229:121::-;626:6;;688:23;626:6;173:10;688:23;680:68;;;;;;;5604:2:1;680:68:0;;;5586:21:1;;;5623:18;;;5616:30;5682:34;5662:18;;;5655:62;5734:18;;680:68:0;5402:356:1;680:68:0;21310:23:::1;:32:::0;;;::::1;;::::0;;;::::1;::::0;;;::::1;::::0;;21229:121::o;22107:90::-;626:6;;688:23;626:6;173:10;688:23;680:68;;;;;;;5604:2:1;680:68:0;;;5586:21:1;;;5623:18;;;5616:30;5682:34;5662:18;;;5655:62;5734:18;;680:68:0;5402:356:1;680:68:0;22172:10:::1;:17:::0;;;::::1;;::::0;;;::::1;::::0;;;::::1;::::0;;22107:90::o;20652:303::-;626:6;;688:23;626:6;173:10;688:23;680:68;;;;;;;5604:2:1;680:68:0;;;5586:21:1;;;5623:18;;;5616:30;5682:34;5662:18;;;5655:62;5734:18;;680:68:0;5402:356:1;680:68:0;20761:15:::1;::::0;::::1;::::0;;::::1;20739:38:::0;;::::1;::::0;20731:86:::1;;;::::0;::::1;::::0;;6517:2:1;20731:86:0::1;::::0;::::1;6499:21:1::0;6556:2;6536:18;;;6529:30;6595:34;6575:18;;;6568:62;6666:5;6646:18;;;6639:33;6689:19;;20731:86:0::1;6315:399:1::0;20731:86:0::1;20875:15;::::0;20833:59:::1;::::0;20875:15:::1;::::0;;::::1;::::0;20833:59;::::1;::::0;::::1;::::0;20875:15:::1;::::0;20833:59:::1;20903:15;:44:::0;;;::::1;;::::0;;;::::1;::::0;;;::::1;::::0;;20652:303::o;776:103::-;626:6;;688:23;626:6;173:10;688:23;680:68;;;;;;;5604:2:1;680:68:0;;;5586:21:1;;;5623:18;;;5616:30;5682:34;5662:18;;;5655:62;5734:18;;680:68:0;5402:356:1;680:68:0;841:30:::1;868:1;841:18;:30::i;:::-;776:103::o:0;21358:365::-;626:6;;688:23;626:6;173:10;688:23;680:68;;;;;;;5604:2:1;680:68:0;;;5586:21:1;;;5623:18;;;5616:30;5682:34;5662:18;;;5655:62;5734:18;;680:68:0;5402:356:1;680:68:0;21440:14:::1;::::0;21474:4:::1;::::0;21440:55:::1;::::0;;;;:14:::1;21474:4:::0;;::::1;21440:55;::::0;::::1;6954:34:1::0;21489:4:0::1;7004:18:1::0;;;6997:43;21425:12:0::1;::::0;21440:14;;;::::1;::::0;:25:::1;::::0;6866:18:1;;21440:55:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21522:13;::::0;21425:70;;-1:-1:-1;21522:13:0::1;::::0;;::::1;21514:21:::0;;::::1;::::0;21506:103:::1;;;::::0;::::1;::::0;;7509:2:1;21506:103:0::1;::::0;::::1;7491:21:1::0;7548:2;7528:18;;;7521:30;7587:34;7567:18;;;7560:62;7658:34;7638:18;;;7631:62;7730:7;7709:19;;;7702:36;7755:19;;21506:103:0::1;7307:473:1::0;21506:103:0::1;21620:31;::::0;::::1;;::::0;;;:25:::1;:31;::::0;;;;;:38;;;::::1;21654:4;21620:38:::0;;::::1;::::0;;;21676:39;;21654:4;;21620:31;21676:39:::1;::::0;::::1;21414:309;21358:365::o:0;21731:113::-;626:6;;688:23;626:6;173:10;688:23;680:68;;;;;;;5604:2:1;680:68:0;;;5586:21:1;;;5623:18;;;5616:30;5682:34;5662:18;;;5655:62;5734:18;;680:68:0;5402:356:1;680:68:0;21811:17:::1;::::0;;;::::1;;::::0;;;:8:::1;:17;::::0;;;;:25;;;::::1;::::0;::::1;;::::0;;;::::1;::::0;;21731:113::o;5057:104::-;5113:13;5146:7;5139:14;;;;;:::i;9141:269::-;9234:4;9251:129;173:10;9274:7;9283:96;9322:15;9283:96;;;;;;;;;;;;;;;;;173:10;9283:25;;;;:11;:25;;;;;;;;;:34;;;;;;;;;;;;:38;:96::i;6469:175::-;6555:4;6572:42;173:10;6596:9;6607:6;6572:9;:42::i;21989:110::-;626:6;;688:23;626:6;173:10;688:23;680:68;;;;;;;5604:2:1;680:68:0;;;5586:21:1;;;5623:18;;;5616:30;5682:34;5662:18;;;5655:62;5734:18;;680:68:0;5402:356:1;680:68:0;22064:18:::1;:27:::0;21989:110::o;20965:256::-;626:6;;688:23;626:6;173:10;688:23;680:68;;;;;;;5604:2:1;680:68:0;;;5586:21:1;;;5623:18;;;5616:30;5682:34;5662:18;;;5655:62;5734:18;;680:68:0;5402:356:1;680:68:0;21053:28:::1;::::0;::::1;;::::0;;;:19:::1;:28;::::0;;;;;::::1;;:40;;::::0;::::1;;;21050:164;;21109:28;::::0;::::1;;::::0;;;:19:::1;:28;::::0;;;;;;;;:39;;;::::1;::::0;::::1;;::::0;;::::1;::::0;;;21168:34;;1245:41:1;;;21168:34:0::1;::::0;1218:18:1;21168:34:0::1;;;;;;;21050:164;20965:256:::0;;:::o;24445:197::-;626:6;;688:23;626:6;173:10;688:23;680:68;;;;;;;5604:2:1;680:68:0;;;5586:21:1;;;5623:18;;;5616:30;5682:34;5662:18;;;5655:62;5734:18;;680:68:0;5402:356:1;680:68:0;24532:12:::1;24558:3;24550:17;;24575:7;24550:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24531:57;;;24607:7;24599:35;;;::::0;::::1;::::0;;8197:2:1;24599:35:0::1;::::0;::::1;8179:21:1::0;8236:2;8216:18;;;8209:30;8275:17;8255:18;;;8248:45;8310:18;;24599:35:0::1;7995:339:1::0;22327:99:0;626:6;;688:23;626:6;173:10;688:23;680:68;;;;;;;5604:2:1;680:68:0;;;5586:21:1;;;5623:18;;;5616:30;5682:34;5662:18;;;5655:62;5734:18;;680:68:0;5402:356:1;680:68:0;22396:11:::1;:22:::0;;;::::1;;::::0;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;22327:99::o;887:201::-;626:6;;688:23;626:6;173:10;688:23;680:68;;;;;;;5604:2:1;680:68:0;;;5586:21:1;;;5623:18;;;5616:30;5682:34;5662:18;;;5655:62;5734:18;;680:68:0;5402:356:1;680:68:0;976:22:::1;::::0;::::1;968:73;;;::::0;::::1;::::0;;8541:2:1;968:73:0::1;::::0;::::1;8523:21:1::0;8580:2;8560:18;;;8553:30;8619:34;8599:18;;;8592:62;8690:8;8670:18;;;8663:36;8716:19;;968:73:0::1;8339:402:1::0;968:73:0::1;1052:28;1071:8;1052:18;:28::i;:::-;887:201:::0;:::o;2272:181::-;2330:7;;2362:5;2366:1;2362;:5;:::i;:::-;2350:17;;2391:1;2386;:6;;2378:46;;;;;;;9267:2:1;2378:46:0;;;9249:21:1;9306:2;9286:18;;;9279:30;9345:29;9325:18;;;9318:57;9392:18;;2378:46:0;9065:351:1;2378:46:0;2444:1;2272:181;-1:-1:-1;;;2272:181:0:o;12327:380::-;12463:19;;;12455:68;;;;;;;9623:2:1;12455:68:0;;;9605:21:1;9662:2;9642:18;;;9635:30;9701:34;9681:18;;;9674:62;9772:6;9752:18;;;9745:34;9796:19;;12455:68:0;9421:400:1;12455:68:0;12542:21;;;12534:68;;;;;;;10028:2:1;12534:68:0;;;10010:21:1;10067:2;10047:18;;;10040:30;10106:34;10086:18;;;10079:62;10177:4;10157:18;;;10150:32;10199:19;;12534:68:0;9826:398:1;12534:68:0;12615:18;;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;12667:32;;1697:25:1;;;12667:32:0;;1670:18:1;12667:32:0;;;;;;;;12327:380;;;:::o;22434:1097::-;22566:18;;;22558:68;;;;;;;10431:2:1;22558:68:0;;;10413:21:1;10470:2;10450:18;;;10443:30;10509:34;10489:18;;;10482:62;10580:7;10560:18;;;10553:35;10605:19;;22558:68:0;10229:401:1;22558:68:0;22645:16;;;22637:64;;;;;;;10837:2:1;22637:64:0;;;10819:21:1;10876:2;10856:18;;;10849:30;10915:34;10895:18;;;10888:62;10986:5;10966:18;;;10959:33;11009:19;;22637:64:0;10635:399:1;22637:64:0;22721:14;;;;;;;:8;:14;;;;;;;;22720:15;:32;;;;-1:-1:-1;22740:12:0;;;;;;;:8;:12;;;;;;;;22739:13;22720:32;22712:58;;;;;;;11241:2:1;22712:58:0;;;11223:21:1;11280:2;11260:18;;;11253:30;11319:15;11299:18;;;11292:43;11352:18;;22712:58:0;11039:337:1;22712:58:0;22786:6;22796:1;22786:11;22783:92;;22814:28;22830:4;22836:2;22840:1;22814:15;:28::i;22783:92::-;23005:25;;;22887:12;23005:25;;;:19;:25;;;;;;22902:4;;23005:25;;;:52;;-1:-1:-1;23034:23:0;;;;;;;:19;:23;;;;;;;;23005:52;23002:99;;;-1:-1:-1;23084:5:0;23002:99;23116:7;23113:363;;;23170:29;;;23140:12;23170:29;;;:25;:29;;;;;;;;:50;;;;-1:-1:-1;23204:16:0;;;;;;;23203:17;23170:50;:65;;;;-1:-1:-1;23224:11:0;;;;;;;23170:65;23167:298;;;23262:37;23295:3;23262:28;23273:16;;23262:6;:10;;:28;;;;:::i;:::-;:32;;:37::i;:::-;23255:44;-1:-1:-1;23329:16:0;:6;23255:44;23329:10;:16::i;:::-;23320:25;;23364:42;23380:4;23394;23401;23364:15;:42::i;:::-;23425:24;23444:4;23425:18;:24::i;:::-;23125:351;23113:363;23488:33;23504:4;23510:2;23514:6;23488:15;:33::i;:::-;22547:984;22434:1097;;;:::o;2605:192::-;2691:7;2727:12;2719:6;;;;2711:29;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;2751:9:0;2763:5;2767:1;2763;:5;:::i;:::-;2751:17;2605:192;-1:-1:-1;;;;;2605:192:0:o;1096:191::-;1189:6;;;;1206:17;;;;;;;;;;;1239:40;;1189:6;;;1206:17;1189:6;;1239:40;;1170:16;;1239:40;1159:128;1096:191;:::o;9900:573::-;10040:20;;;10032:70;;;;;;;10431:2:1;10032:70:0;;;10413:21:1;10470:2;10450:18;;;10443:30;10509:34;10489:18;;;10482:62;10580:7;10560:18;;;10553:35;10605:19;;10032:70:0;10229:401:1;10032:70:0;10121:23;;;10113:71;;;;;;;10837:2:1;10113:71:0;;;10819:21:1;10876:2;10856:18;;;10849:30;10915:34;10895:18;;;10888:62;10986:5;10966:18;;;10959:33;11009:19;;10113:71:0;10635:399:1;10113:71:0;10277;10299:6;10277:71;;;;;;;;;;;;;;;;;:17;;;:9;:17;;;;;;;;;;;;:71;:21;:71::i;:::-;10257:17;;;;:9;:17;;;;;;;;;;;:91;;;;10382:20;;;;;;;:32;;10407:6;10382:24;:32::i;:::-;10359:20;;;;:9;:20;;;;;;;;;;;;:55;;;;10430:35;1697:25:1;;;10359:20:0;;10430:35;;;;;;1670:18:1;10430:35:0;1551:177:1;2805:471:0;2863:7;3108:1;3113;3108:6;3104:47;;-1:-1:-1;3138:1:0;3131:8;;3104:47;3163:9;3175:5;3179:1;3175;:5;:::i;:::-;3163:17;-1:-1:-1;3208:1:0;3199:5;3203:1;3163:17;3199:5;:::i;:::-;:10;3191:56;;;;;;;12168:2:1;3191:56:0;;;12150:21:1;12207:2;12187:18;;;12180:30;12246:34;12226:18;;;12219:62;12317:3;12297:18;;;12290:31;12338:19;;3191:56:0;11966:397:1;3284:132:0;3342:7;3369:39;3373:1;3376;3369:39;;;;;;;;;;;;;;;;;:3;:39::i;2461:136::-;2519:7;2546:43;2550:1;2553;2546:43;;;;;;;;;;;;;;;;;:3;:43::i;23543:109::-;19892:16;:23;;;;;;;;23619:25:::1;23636:7:::0;23619:16:::1;:25::i;:::-;-1:-1:-1::0;19938:16:0;:24;;;;;;23543:109::o;3424:278::-;3510:7;3545:12;3538:5;3530:28;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;3569:9:0;3581:5;3585:1;3581;:5;:::i;23662:627::-;23812:16;;;23826:1;23812:16;;;;;;;;23788:21;;23812:16;;;;;;;;;;-1:-1:-1;23812:16:0;23788:40;;23857:4;23839;23844:1;23839:7;;;;;;;;:::i;:::-;:23;;;;:7;;;;;;;;;;:23;;;;23883:15;;:22;;;;;;;;:15;;;;;:20;;:22;;;;;23839:7;;23883:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23873:4;23878:1;23873:7;;;;;;;;:::i;:::-;:32;;;;:7;;;;;;;;;:32;23950:15;;23918:62;;23935:4;;23950:15;23968:11;23918:8;:62::i;:::-;24019:15;;24189:23;;24227:11;;24019:260;;;;;:15;;;;;:66;;:260;;24100:11;;24019:15;;24170:4;;24189:23;;;24227:11;;24253:15;;24019:260;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23717:572;23662:627;:::o;14:607: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;612:2;542:66;537:2;529:6;525:15;521:88;510:9;506:104;502:113;494:121;;;;14:607;;;;:::o;626:154::-;712:42;705:5;701:54;694:5;691:65;681:93;;770:1;767;760:12;785:315;853:6;861;914:2;902:9;893:7;889:23;885:32;882:52;;;930:1;927;920:12;882:52;969:9;956:23;988:31;1013:5;988:31;:::i;:::-;1038:5;1090:2;1075:18;;;;1062:32;;-1:-1:-1;;;785:315:1:o;1733:456::-;1810:6;1818;1826;1879:2;1867:9;1858:7;1854:23;1850:32;1847:52;;;1895:1;1892;1885:12;1847:52;1934:9;1921:23;1953:31;1978:5;1953:31;:::i;:::-;2003:5;-1:-1:-1;2060:2:1;2045:18;;2032:32;2073:33;2032:32;2073:33;:::i;:::-;1733:456;;2125:7;;-1:-1:-1;;;2179:2:1;2164:18;;;;2151:32;;1733:456::o;2614:247::-;2673:6;2726:2;2714:9;2705:7;2701:23;2697:32;2694:52;;;2742:1;2739;2732:12;2694:52;2781:9;2768:23;2800:31;2825:5;2800:31;:::i;2866:180::-;2925:6;2978:2;2966:9;2957:7;2953:23;2949:32;2946:52;;;2994:1;2991;2984:12;2946:52;-1:-1:-1;3017:23:1;;2866:180;-1:-1:-1;2866:180:1:o;3311:118::-;3397:5;3390:13;3383:21;3376:5;3373:32;3363:60;;3419:1;3416;3409:12;3434:382;3499:6;3507;3560:2;3548:9;3539:7;3535:23;3531:32;3528:52;;;3576:1;3573;3566:12;3528:52;3615:9;3602:23;3634:31;3659:5;3634:31;:::i;:::-;3684:5;-1:-1:-1;3741:2:1;3726:18;;3713:32;3754:30;3713:32;3754:30;:::i;:::-;3803:7;3793:17;;;3434:382;;;;;:::o;4321:388::-;4389:6;4397;4450:2;4438:9;4429:7;4425:23;4421:32;4418:52;;;4466:1;4463;4456:12;4418:52;4505:9;4492:23;4524:31;4549:5;4524:31;:::i;:::-;4574:5;-1:-1:-1;4631:2:1;4616:18;;4603:32;4644:33;4603:32;4644:33;:::i;4714:241::-;4770:6;4823:2;4811:9;4802:7;4798:23;4794:32;4791:52;;;4839:1;4836;4829:12;4791:52;4878:9;4865:23;4897:28;4919:5;4897:28;:::i;4960:437::-;5039:1;5035:12;;;;5082;;;5103:61;;5157:4;5149:6;5145:17;5135:27;;5103:61;5210:2;5202:6;5199:14;5179:18;5176:38;5173:218;;5247:77;5244:1;5237:88;5348:4;5345:1;5338:15;5376:4;5373:1;5366:15;5173:218;;4960:437;;;:::o;6065:245::-;6132:6;6185:2;6173:9;6164:7;6160:23;6156:32;6153:52;;;6201:1;6198;6191:12;6153:52;6233:9;6227:16;6252:28;6274:5;6252:28;:::i;7051:251::-;7121:6;7174:2;7162:9;7153:7;7149:23;7145:32;7142:52;;;7190:1;7187;7180:12;7142:52;7222:9;7216:16;7241:31;7266:5;7241:31;:::i;8746:184::-;8798:77;8795:1;8788:88;8895:4;8892:1;8885:15;8919:4;8916:1;8909:15;8935:125;9000:9;;;9021:10;;;9018:36;;;9034:18;;:::i;11381:128::-;11448:9;;;11469:11;;;11466:37;;;11483:18;;:::i;11514:168::-;11587:9;;;11618;;11635:15;;;11629:22;;11615:37;11605:71;;11656:18;;:::i;11687:274::-;11727:1;11753;11743:189;;11788:77;11785:1;11778:88;11889:4;11886:1;11879:15;11917:4;11914:1;11907:15;11743:189;-1:-1:-1;11946:9:1;;11687:274::o;12557:184::-;12609:77;12606:1;12599:88;12706:4;12703:1;12696:15;12730:4;12727:1;12720:15;12746:1128;13036:4;13084:3;13073:9;13069:19;13115:6;13104:9;13097:25;13141:2;13179:6;13174:2;13163:9;13159:18;13152:34;13222:3;13217:2;13206:9;13202:18;13195:31;13246:6;13281;13275:13;13312:6;13304;13297:22;13350:3;13339:9;13335:19;13328:26;;13389:2;13381:6;13377:15;13363:29;;13410:1;13420:218;13434:6;13431:1;13428:13;13420:218;;;13499:13;;13514:42;13495:62;13483:75;;13613:15;;;;13578:12;;;;13456:1;13449:9;13420:218;;;-1:-1:-1;;13677:42:1;13755:15;;;13750:2;13735:18;;13728:43;13808:15;;;;13802:3;13787:19;;13780:44;-1:-1:-1;;13855:3:1;13840:19;13833:35;13655:3;12746:1128;-1:-1:-1;;;;12746:1128:1:o
Swarm Source
ipfs://8040e5832bcfd05aa4e0c6f0646aa2c32887c810941c2829905560158b692bd3
Loading...
Loading
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 34 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
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.