Source Code
More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 156 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Approve | 20171154 | 624 days ago | IN | 0 ETH | 0.00037452 | ||||
| Approve | 17656032 | 976 days ago | IN | 0 ETH | 0.00040551 | ||||
| Approve | 17656019 | 976 days ago | IN | 0 ETH | 0.00046419 | ||||
| Approve | 17656012 | 976 days ago | IN | 0 ETH | 0.00047366 | ||||
| Approve | 17402398 | 1012 days ago | IN | 0 ETH | 0.00087731 | ||||
| Approve | 17364017 | 1017 days ago | IN | 0 ETH | 0.00130018 | ||||
| Approve | 17279498 | 1029 days ago | IN | 0 ETH | 0.00253299 | ||||
| Approve | 17264773 | 1031 days ago | IN | 0 ETH | 0.00191108 | ||||
| Approve | 17222534 | 1037 days ago | IN | 0 ETH | 0.00296324 | ||||
| Approve | 17212597 | 1038 days ago | IN | 0 ETH | 0.0054546 | ||||
| Approve | 17211043 | 1039 days ago | IN | 0 ETH | 0.00627125 | ||||
| Approve | 17210954 | 1039 days ago | IN | 0 ETH | 0.00519467 | ||||
| Approve | 17210887 | 1039 days ago | IN | 0 ETH | 0.00577337 | ||||
| Approve | 17210879 | 1039 days ago | IN | 0 ETH | 0.00614159 | ||||
| Approve | 17210868 | 1039 days ago | IN | 0 ETH | 0.0070087 | ||||
| Approve | 17210810 | 1039 days ago | IN | 0 ETH | 0.00489271 | ||||
| Approve | 17210775 | 1039 days ago | IN | 0 ETH | 0.00539359 | ||||
| Approve | 17210774 | 1039 days ago | IN | 0 ETH | 0.00541009 | ||||
| Approve | 17210767 | 1039 days ago | IN | 0 ETH | 0.00507595 | ||||
| Approve | 17210745 | 1039 days ago | IN | 0 ETH | 0.00591305 | ||||
| Approve | 17210619 | 1039 days ago | IN | 0 ETH | 0.0059415 | ||||
| Approve | 17210612 | 1039 days ago | IN | 0 ETH | 0.00601907 | ||||
| Approve | 17210523 | 1039 days ago | IN | 0 ETH | 0.00607619 | ||||
| Approve | 17210480 | 1039 days ago | IN | 0 ETH | 0.00603633 | ||||
| Approve | 17210453 | 1039 days ago | IN | 0 ETH | 0.00712031 |
Latest 25 internal transactions (View All)
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
||
|---|---|---|---|---|---|---|---|
| Transfer | 17411824 | 1010 days ago | 0.01702376 ETH | ||||
| Transfer | 17411824 | 1010 days ago | 0.01702376 ETH | ||||
| Transfer | 17210892 | 1039 days ago | 0.02668412 ETH | ||||
| Transfer | 17210892 | 1039 days ago | 0.02668412 ETH | ||||
| Transfer | 17210888 | 1039 days ago | 0.02668412 ETH | ||||
| Transfer | 17210888 | 1039 days ago | 0.02668412 ETH | ||||
| Transfer | 17210727 | 1039 days ago | 0.0489983 ETH | ||||
| Transfer | 17210727 | 1039 days ago | 0.0489983 ETH | ||||
| Transfer | 17210501 | 1039 days ago | 0.05540847 ETH | ||||
| Transfer | 17210501 | 1039 days ago | 0.05540847 ETH | ||||
| Transfer | 17210345 | 1039 days ago | 0.07305475 ETH | ||||
| Transfer | 17210345 | 1039 days ago | 0.07305475 ETH | ||||
| Transfer | 17210283 | 1039 days ago | 0.05719759 ETH | ||||
| Transfer | 17210283 | 1039 days ago | 0.05719759 ETH | ||||
| Transfer | 17210195 | 1039 days ago | 0.05882823 ETH | ||||
| Transfer | 17210195 | 1039 days ago | 0.05882823 ETH | ||||
| Transfer | 17210174 | 1039 days ago | 0.10557968 ETH | ||||
| Transfer | 17210174 | 1039 days ago | 0.10557968 ETH | ||||
| Transfer | 17210158 | 1039 days ago | 0.1185789 ETH | ||||
| Transfer | 17210158 | 1039 days ago | 0.1185789 ETH | ||||
| Transfer | 17210144 | 1039 days ago | 0.44752104 ETH | ||||
| Transfer | 17210144 | 1039 days ago | 0.44752104 ETH | ||||
| Transfer | 17210144 | 1039 days ago | 0.51592793 ETH | ||||
| Transfer | 17210144 | 1039 days ago | 0.51592793 ETH | ||||
| Transfer | 17210144 | 1039 days ago | 0.61012813 ETH |
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
PEPPER
Compiler Version
v0.8.16+commit.07a7930e
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2023-05-07
*/
// SPDX-License-Identifier: Unlicensed
// tg: https://t.me/peppertokenerc
pragma solidity ^0.8.16;
interface IERC20 {
function totalSupply() external view returns (uint256);
function balanceOf(address account) external view returns (uint256);
function transfer(
address recipient,
uint256 amount
) external returns (bool);
function allowance(
address owner,
address spender
) external view returns (uint256);
function approve(address spender, uint256 amount) external returns (bool);
function transferFrom(
address sender,
address recipient,
uint256 amount
) external returns (bool);
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(
address indexed owner,
address indexed spender,
uint256 value
);
}
library SafeMath {
function add(uint256 a, uint256 b) internal pure returns (uint256) {
return a + b;
}
function sub(uint256 a, uint256 b) internal pure returns (uint256) {
return a - b;
}
function mul(uint256 a, uint256 b) internal pure returns (uint256) {
return a * b;
}
function div(uint256 a, uint256 b) internal pure returns (uint256) {
return a / b;
}
function sub(
uint256 a,
uint256 b,
string memory errorMessage
) internal pure returns (uint256) {
unchecked {
require(b <= a, errorMessage);
return a - b;
}
}
function div(
uint256 a,
uint256 b,
string memory errorMessage
) internal pure returns (uint256) {
unchecked {
require(b > 0, errorMessage);
return a / b;
}
}
}
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
function _msgData() internal view virtual returns (bytes calldata) {
this;
return msg.data;
}
}
abstract contract Ownable is Context {
address internal _owner;
address private _previousOwner;
event OwnershipTransferred(
address indexed previousOwner,
address indexed newOwner
);
constructor() {
_owner = _msgSender();
emit OwnershipTransferred(address(0), _owner);
}
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 {
emit OwnershipTransferred(_owner, address(0));
_owner = address(0);
}
function transferOwnership(address newOwner) public virtual onlyOwner {
require(
newOwner != address(0),
"Ownable: new owner is the zero address"
);
emit OwnershipTransferred(_owner, newOwner);
_owner = newOwner;
}
}
interface IERC20Metadata is IERC20 {
function name() external view returns (string memory);
function symbol() external view returns (string memory);
function decimals() external view returns (uint8);
}
contract ERC20 is Context, Ownable, IERC20, IERC20Metadata {
using SafeMath for uint256;
mapping(address => uint256) private _balances;
mapping(address => mapping(address => uint256)) private _allowances;
uint256 private _totalSupply;
string private _name;
string private _symbol;
constructor(string memory name_, string memory symbol_) {
_name = name_;
_symbol = symbol_;
}
function name() public view virtual override returns (string memory) {
return _name;
}
function symbol() public view virtual override returns (string memory) {
return _symbol;
}
function decimals() public view virtual override returns (uint8) {
return 18;
}
function totalSupply() public view virtual override returns (uint256) {
return _totalSupply;
}
function balanceOf(
address account
) public view virtual override returns (uint256) {
return _balances[account];
}
function transfer(
address recipient,
uint256 amount
) public virtual override returns (bool) {
_transfer(_msgSender(), recipient, amount);
return true;
}
function allowance(
address owner,
address spender
) public view virtual override returns (uint256) {
return _allowances[owner][spender];
}
function approve(
address spender,
uint256 amount
) public virtual override returns (bool) {
_approve(_msgSender(), spender, amount);
return true;
}
function transferFrom(
address sender,
address recipient,
uint256 amount
) public virtual override returns (bool) {
_transfer(sender, recipient, amount);
_approve(
sender,
_msgSender(),
_allowances[sender][_msgSender()].sub(
amount,
"ERC20: transfer amount exceeds allowance"
)
);
return true;
}
function increaseAllowance(
address spender,
uint256 addedValue
) public virtual returns (bool) {
_approve(
_msgSender(),
spender,
_allowances[_msgSender()][spender].add(addedValue)
);
return true;
}
function decreaseAllowance(
address spender,
uint256 subtractedValue
) public virtual returns (bool) {
_approve(
_msgSender(),
spender,
_allowances[_msgSender()][spender].sub(
subtractedValue,
"ERC20: decreased allowance below zero"
)
);
return true;
}
function _transfer(
address sender,
address recipient,
uint256 amount
) internal virtual {
require(sender != address(0), "ERC20: transfer from the zero address");
require(recipient != address(0), "ERC20: transfer to the zero address");
_beforeTokenTransfer(sender, recipient, amount);
_balances[sender] = _balances[sender].sub(
amount,
"ERC20: transfer amount exceeds balance"
);
_balances[recipient] = _balances[recipient].add(amount);
emit Transfer(sender, recipient, amount);
}
function _mint(address account, uint256 amount) internal virtual {
require(account != address(0), "ERC20: mint to the zero address");
_beforeTokenTransfer(address(0), account, amount);
_totalSupply = _totalSupply.add(amount);
_balances[account] = _balances[account].add(amount);
emit Transfer(address(0), account, amount);
}
function _burn(address account, uint256 amount) internal virtual {
require(account != address(0), "ERC20: burn from the zero address");
_beforeTokenTransfer(account, address(0), amount);
_balances[account] = _balances[account].sub(
amount,
"ERC20: burn amount exceeds balance"
);
_totalSupply = _totalSupply.sub(amount);
emit Transfer(account, address(0), amount);
}
function _approve(
address owner,
address spender,
uint256 amount
) internal virtual {
require(owner != address(0), "ERC20: approve from the zero address");
require(spender != address(0), "ERC20: approve to the zero address");
_allowances[owner][spender] = amount;
emit Approval(owner, spender, amount);
}
function _beforeTokenTransfer(
address from,
address to,
uint256 amount
) internal virtual {}
}
interface IUniswapV2Factory {
function createPair(
address tokenA,
address tokenB
) external returns (address pair);
}
interface IUniswapV2Pair {
function factory() external view returns (address);
}
interface IUniswapV2Router01 {
function factory() external pure returns (address);
function WETH() external pure returns (address);
function addLiquidityETH(
address token,
uint amountTokenDesired,
uint amountTokenMin,
uint amountETHMin,
address to,
uint deadline
)
external
payable
returns (uint amountToken, uint amountETH, uint liquidity);
}
interface IUniswapV2Router02 is IUniswapV2Router01 {
function swapExactTokensForETHSupportingFeeOnTransferTokens(
uint amountIn,
uint amountOutMin,
address[] calldata path,
address to,
uint deadline
) external;
}
contract PEPPER is ERC20 {
using SafeMath for uint256;
mapping(address => bool) private _isExcludedFromFee;
mapping(address => bool) private _isExcludedFromMaxWallet;
mapping(address => bool) private _isExcludedFromMaxTnxLimit;
address public marketingWallet;
address constant _burnAddress = 0x000000000000000000000000000000000000dEaD;
uint256 public buyFee = 25;
uint256 public sellFee = 40;
IUniswapV2Router02 public uniswapV2Router;
address public uniswapV2Pair;
bool inSwapAndLiquify;
bool public swapAndSendFeesEnabled = true;
bool public tradingEnabled = false;
uint256 public numTokensSellToSendFees;
uint256 public maxWalletBalance;
uint256 public MaxTxAmt;
event MinTokensBeforeSwapUpdated(uint256 minTokensBeforeSwap);
event swapAndSendFeesEnabledUpdated(bool enabled);
event SwapAndLiquify(
uint256 tokensSwapped,
uint256 ethReceived,
uint256 tokensIntoLiqudity
);
modifier lockTheSwap() {
inSwapAndLiquify = true;
_;
inSwapAndLiquify = false;
}
constructor() ERC20("PEPPER", "PEPPER") {
numTokensSellToSendFees = 200000 * 10 ** decimals();
marketingWallet = 0x345e4e9359B0554F51A6493FE5421F684e8B8b2f;
IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(
0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
);
uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
.createPair(address(this), _uniswapV2Router.WETH());
uniswapV2Router = _uniswapV2Router;
_isExcludedFromFee[_msgSender()] = true;
_isExcludedFromFee[address(this)] = true;
_isExcludedFromFee[marketingWallet] = true;
_isExcludedFromMaxWallet[owner()] = true;
_isExcludedFromMaxWallet[address(this)] = true;
_isExcludedFromMaxWallet[_burnAddress] = true;
_isExcludedFromMaxWallet[marketingWallet] = true;
_isExcludedFromMaxTnxLimit[owner()] = true;
_isExcludedFromMaxTnxLimit[address(this)] = true;
_isExcludedFromMaxTnxLimit[marketingWallet] = true;
_mint(owner(), 10000000 * 10 ** decimals());
maxWalletBalance = (totalSupply() * 3) / 100;
MaxTxAmt = (totalSupply() * 2) / 100;
}
function burn(uint tokens) external onlyOwner {
_burn(msg.sender, tokens * 10 ** decimals());
}
function includeAndExcludeFromFee(
address account,
bool value
) public onlyOwner {
_isExcludedFromFee[account] = value;
}
function isExcludedFromFee(address account) public view returns (bool) {
return _isExcludedFromFee[account];
}
function enableTrading() external onlyOwner {
tradingEnabled = true;
}
function setBuyAndSellFee(
uint256 bFee,
uint256 sFee
) external onlyOwner {
buyFee = bFee;
sellFee = sFee;
}
function setmarketingWallet(address _addr) external onlyOwner {
marketingWallet = _addr;
}
function setMaxBalance(uint256 maxBalancePercent) external onlyOwner {
maxWalletBalance = maxBalancePercent * 10 ** decimals();
}
function setMaxTxAmount(uint256 maxTxAmount) external onlyOwner {
MaxTxAmt = maxTxAmount * 10 ** decimals();
}
function setNumTokensSellToSendFees(uint256 amount) external onlyOwner {
numTokensSellToSendFees = amount * 10 ** decimals();
}
function setRouterAddress(address newRouter) external onlyOwner {
IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(newRouter);
uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
.createPair(address(this), _uniswapV2Router.WETH());
uniswapV2Router = _uniswapV2Router;
}
function setswapAndSendFeesEnabled(bool _enabled) external onlyOwner {
swapAndSendFeesEnabled = _enabled;
emit swapAndSendFeesEnabledUpdated(_enabled);
}
receive() external payable {}
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(amount > 0, "Transfer amount must be greater than zero");
if (from != owner() && !tradingEnabled) {
require(tradingEnabled, "Trading is not enabled yet");
}
if (from != owner() && to != owner())
require(
_isExcludedFromMaxTnxLimit[from] ||
_isExcludedFromMaxTnxLimit[to] ||
amount <= MaxTxAmt,
"ERC20: Transfer amount exceeds the MaxTxAmt."
);
if (
from != owner() &&
to != address(this) &&
to != _burnAddress &&
to != uniswapV2Pair
) {
uint256 currentBalance = balanceOf(to);
require(
_isExcludedFromMaxWallet[to] ||
(currentBalance + amount <= maxWalletBalance),
"ERC20: Reached Max wallet holding"
);
}
uint256 contractTokenBalance = balanceOf(address(this));
bool overMinTokenBalance = contractTokenBalance >=
numTokensSellToSendFees;
if (
overMinTokenBalance &&
!inSwapAndLiquify &&
from != uniswapV2Pair &&
swapAndSendFeesEnabled
) {
contractTokenBalance = numTokensSellToSendFees;
swapBack(contractTokenBalance);
}
bool takeFee = true;
if (_isExcludedFromFee[from] || _isExcludedFromFee[to]) {
super._transfer(from, to, amount);
takeFee = false;
} else {
if (from == uniswapV2Pair) {
uint256 marketingTokens = amount.mul(buyFee).div(100);
amount = amount.sub(marketingTokens);
super._transfer(from, address(this), marketingTokens);
super._transfer(from, to, amount);
} else if (to == uniswapV2Pair) {
uint256 marketingTokens = amount.mul(sellFee).div(
100
);
amount = amount.sub(marketingTokens);
super._transfer(from, address(this), marketingTokens);
super._transfer(from, to, amount);
} else {
super._transfer(from, to, amount);
}
}
}
function swapBack(uint256 contractBalance) private lockTheSwap {
uint256 marketingTokens = contractBalance.mul(sellFee).div(
100
);
uint256 totalTokensToSwap = marketingTokens;
if (contractBalance == 0 || totalTokensToSwap == 0) {
return;
}
bool success;
swapTokensForEth(contractBalance);
uint256 ethBalance = address(this).balance;
uint256 ethForMarketing = (ethBalance * marketingTokens) /
(totalTokensToSwap);
(success, ) = address(marketingWallet).call{
value: ethForMarketing
}("");
}
function swapTokensForEth(uint256 tokenAmount) private {
address[] memory path = new address[](2);
path[0] = address(this);
path[1] = uniswapV2Router.WETH();
_approve(address(this), address(uniswapV2Router), tokenAmount);
uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
tokenAmount,
0, // accept any amount of ETH
path,
address(this),
block.timestamp
);
}
}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":false,"internalType":"uint256","name":"minTokensBeforeSwap","type":"uint256"}],"name":"MinTokensBeforeSwapUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiqudity","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":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":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"swapAndSendFeesEnabledUpdated","type":"event"},{"inputs":[],"name":"MaxTxAmt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokens","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":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"includeAndExcludeFromFee","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":"isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletBalance","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":"numTokensSellToSendFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":[],"name":"sellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"bFee","type":"uint256"},{"internalType":"uint256","name":"sFee","type":"uint256"}],"name":"setBuyAndSellFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxBalancePercent","type":"uint256"}],"name":"setMaxBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTxAmount","type":"uint256"}],"name":"setMaxTxAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setNumTokensSellToSendFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newRouter","type":"address"}],"name":"setRouterAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_addr","type":"address"}],"name":"setmarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setswapAndSendFeesEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAndSendFeesEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"tradingEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
60806040526019600b556028600c55600e805461ffff60a81b1916600160a81b1790553480156200002f57600080fd5b50604051806040016040528060068152602001652822a82822a960d11b815250604051806040016040528060068152602001652822a82822a960d11b8152506200007e620004c460201b60201c565b600080546001600160a01b0319166001600160a01b039290921691821781556040517f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a36005620000d3838262000692565b506006620000e2828262000692565b50620000ef915050601290565b620000fc90600a62000871565b6200010b9062030d4062000882565b600f55600a80546001600160a01b03191673345e4e9359b0554f51a6493fe5421f684e8b8b2f1790556040805163c45a015560e01b81529051737a250d5630b4cf539739df2c5dacb4c659f2488d91829163c45a0155916004808201926020929091908290030181865afa15801562000188573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001ae9190620008a4565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001fc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002229190620008a4565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000270573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002969190620008a4565b600e80546001600160a01b03199081166001600160a01b0393841617909155600d8054909116918316919091179055600160076000620002d33390565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526007909352818320805485166001908117909155600a54909116835290822080549093168117909255600890620003436000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905530815260089093528183208054851660019081179091557f046fee3d77c34a6c5e10c3be6dc4b132c30449dbf4f0bc07684896dd093342998054861682179055600a54909116835290822080549093168117909255600990620003dc6000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526009909352818320805485166001908117909155600a549091168352912080549092161790556200046d6200044a6000546001600160a01b031690565b620004586012600a62000871565b62000467906298968062000882565b620004c8565b60646200047960045490565b6200048690600362000882565b620004929190620008d6565b6010556064620004a160045490565b620004ae90600262000882565b620004ba9190620008d6565b601155506200090f565b3390565b6001600160a01b038216620005235760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b6200053f81600454620005d760201b62000e1a1790919060201c565b6004556001600160a01b0382166000908152600260209081526040909120546200057491839062000e1a620005d7821b17901c565b6001600160a01b0383166000818152600260205260408082209390935591519091907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90620005c69085815260200190565b60405180910390a35050565b505050565b6000620005e58284620008f9565b90505b92915050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200061957607f821691505b6020821081036200063a57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620005d257600081815260208120601f850160051c81016020861015620006695750805b601f850160051c820191505b818110156200068a5782815560010162000675565b505050505050565b81516001600160401b03811115620006ae57620006ae620005ee565b620006c681620006bf845462000604565b8462000640565b602080601f831160018114620006fe5760008415620006e55750858301515b600019600386901b1c1916600185901b1785556200068a565b600085815260208120601f198616915b828110156200072f578886015182559484019460019091019084016200070e565b50858210156200074e5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620007b55781600019048211156200079957620007996200075e565b80851615620007a757918102915b93841c939080029062000779565b509250929050565b600082620007ce57506001620005e8565b81620007dd57506000620005e8565b8160018114620007f65760028114620008015762000821565b6001915050620005e8565b60ff8411156200081557620008156200075e565b50506001821b620005e8565b5060208310610133831016604e8410600b841016171562000846575081810a620005e8565b62000852838362000774565b80600019048211156200086957620008696200075e565b029392505050565b6000620005e560ff841683620007bd565b60008160001904831182151516156200089f576200089f6200075e565b500290565b600060208284031215620008b757600080fd5b81516001600160a01b0381168114620008cf57600080fd5b9392505050565b600082620008f457634e487b7160e01b600052601260045260246000fd5b500490565b80820180821115620005e857620005e86200075e565b611df1806200091f6000396000f3fe6080604052600436106102085760003560e01c806353cae9cf11610118578063a346304f116100a0578063bbde77c11161006f578063bbde77c1146105ea578063da7e2c7f14610600578063dd62ed3e14610620578063ec28438a14610666578063f2fde38b1461068657600080fd5b8063a346304f14610574578063a457c2d714610594578063a9059cbb146105b4578063bb5020bf146105d457600080fd5b806384e2b88d116100e757806384e2b88d146104ec5780638a8c523c1461050c5780638da5cb5b1461052157806395d89b411461053f5780639d51d9b71461055457600080fd5b806353cae9cf1461046b57806370a0823114610481578063715018a6146104b757806375f0a874146104cc57600080fd5b80632b14ca561161019b57806342966c681161016a57806342966c68146103bb57806347062402146103db57806349bd5a5e146103f15780634ada218b146104115780635342acb41461043257600080fd5b80632b14ca5614610349578063313ce5671461035f578063395093511461037b57806341cb87fc1461039b57600080fd5b80631694505e116101d75780631694505e146102b257806318160ddd146102ea578063224611731461030957806323b872dd1461032957600080fd5b806302a8b0411461021457806306fdde0314610236578063095ea7b314610261578063148d21611461029157600080fd5b3661020f57005b600080fd5b34801561022057600080fd5b5061023461022f36600461186a565b6106a6565b005b34801561024257600080fd5b5061024b610731565b6040516102589190611885565b60405180910390f35b34801561026d57600080fd5b5061028161027c3660046118e8565b6107c3565b6040519015158152602001610258565b34801561029d57600080fd5b50600e5461028190600160a81b900460ff1681565b3480156102be57600080fd5b50600d546102d2906001600160a01b031681565b6040516001600160a01b039091168152602001610258565b3480156102f657600080fd5b506004545b604051908152602001610258565b34801561031557600080fd5b50610234610324366004611914565b6107da565b34801561033557600080fd5b50610281610344366004611931565b610826565b34801561035557600080fd5b506102fb600c5481565b34801561036b57600080fd5b5060405160128152602001610258565b34801561038757600080fd5b506102816103963660046118e8565b61088f565b3480156103a757600080fd5b506102346103b6366004611914565b6108c5565b3480156103c757600080fd5b506102346103d6366004611972565b610a6a565b3480156103e757600080fd5b506102fb600b5481565b3480156103fd57600080fd5b50600e546102d2906001600160a01b031681565b34801561041d57600080fd5b50600e5461028190600160b01b900460ff1681565b34801561043e57600080fd5b5061028161044d366004611914565b6001600160a01b031660009081526007602052604090205460ff1690565b34801561047757600080fd5b506102fb600f5481565b34801561048d57600080fd5b506102fb61049c366004611914565b6001600160a01b031660009081526002602052604090205490565b3480156104c357600080fd5b50610234610ab6565b3480156104d857600080fd5b50600a546102d2906001600160a01b031681565b3480156104f857600080fd5b50610234610507366004611972565b610b2a565b34801561051857600080fd5b50610234610b70565b34801561052d57600080fd5b506000546001600160a01b03166102d2565b34801561054b57600080fd5b5061024b610baf565b34801561056057600080fd5b5061023461056f366004611972565b610bbe565b34801561058057600080fd5b5061023461058f36600461198b565b610c04565b3480156105a057600080fd5b506102816105af3660046118e8565b610c39565b3480156105c057600080fd5b506102816105cf3660046118e8565b610c88565b3480156105e057600080fd5b506102fb60115481565b3480156105f657600080fd5b506102fb60105481565b34801561060c57600080fd5b5061023461061b3660046119ad565b610c95565b34801561062c57600080fd5b506102fb61063b3660046119e2565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561067257600080fd5b50610234610681366004611972565b610cea565b34801561069257600080fd5b506102346106a1366004611914565b610d30565b6000546001600160a01b031633146106d95760405162461bcd60e51b81526004016106d090611a1b565b60405180910390fd5b600e8054821515600160a81b0260ff60a81b199091161790556040517f95104a55e36dd507aac6f3a5211027febb09c940366b18700bc6e6cedf67426b9061072690831515815260200190565b60405180910390a150565b60606005805461074090611a50565b80601f016020809104026020016040519081016040528092919081815260200182805461076c90611a50565b80156107b95780601f1061078e576101008083540402835291602001916107b9565b820191906000526020600020905b81548152906001019060200180831161079c57829003601f168201915b5050505050905090565b60006107d0338484610e2d565b5060015b92915050565b6000546001600160a01b031633146108045760405162461bcd60e51b81526004016106d090611a1b565b600a80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610833848484610f52565b610885843361088085604051806060016040528060288152602001611d6f602891396001600160a01b038a16600090815260036020908152604080832033845290915290205491906113c8565b610e2d565b5060019392505050565b3360008181526003602090815260408083206001600160a01b038716845290915281205490916107d09185906108809086610e1a565b6000546001600160a01b031633146108ef5760405162461bcd60e51b81526004016106d090611a1b565b6000819050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610932573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109569190611a8a565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c79190611a8a565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610a14573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a389190611a8a565b600e80546001600160a01b039283166001600160a01b031991821617909155600d805493909216921691909117905550565b6000546001600160a01b03163314610a945760405162461bcd60e51b81526004016106d090611a1b565b610ab333610aa46012600a611ba1565b610aae9084611bb0565b6113f4565b50565b6000546001600160a01b03163314610ae05760405162461bcd60e51b81526004016106d090611a1b565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610b545760405162461bcd60e51b81526004016106d090611a1b565b610b606012600a611ba1565b610b6a9082611bb0565b600f5550565b6000546001600160a01b03163314610b9a5760405162461bcd60e51b81526004016106d090611a1b565b600e805460ff60b01b1916600160b01b179055565b60606006805461074090611a50565b6000546001600160a01b03163314610be85760405162461bcd60e51b81526004016106d090611a1b565b610bf46012600a611ba1565b610bfe9082611bb0565b60105550565b6000546001600160a01b03163314610c2e5760405162461bcd60e51b81526004016106d090611a1b565b600b91909155600c55565b60006107d0338461088085604051806060016040528060258152602001611d97602591393360009081526003602090815260408083206001600160a01b038d16845290915290205491906113c8565b60006107d0338484610f52565b6000546001600160a01b03163314610cbf5760405162461bcd60e51b81526004016106d090611a1b565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610d145760405162461bcd60e51b81526004016106d090611a1b565b610d206012600a611ba1565b610d2a9082611bb0565b60115550565b6000546001600160a01b03163314610d5a5760405162461bcd60e51b81526004016106d090611a1b565b6001600160a01b038116610dbf5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016106d0565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000610e268284611bcf565b9392505050565b6001600160a01b038316610e8f5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106d0565b6001600160a01b038216610ef05760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106d0565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610f785760405162461bcd60e51b81526004016106d090611be2565b6001600160a01b038216610f9e5760405162461bcd60e51b81526004016106d090611c27565b600081116110005760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016106d0565b6000546001600160a01b038481169116148015906110285750600e54600160b01b900460ff16155b1561108657600e54600160b01b900460ff166110865760405162461bcd60e51b815260206004820152601a60248201527f54726164696e67206973206e6f7420656e61626c65642079657400000000000060448201526064016106d0565b6000546001600160a01b038481169116148015906110b257506000546001600160a01b03838116911614155b15611164576001600160a01b03831660009081526009602052604090205460ff16806110f657506001600160a01b03821660009081526009602052604090205460ff165b8061110357506011548111155b6111645760405162461bcd60e51b815260206004820152602c60248201527f45524332303a205472616e7366657220616d6f756e742065786365656473207460448201526b34329026b0bc2a3c20b6ba1760a11b60648201526084016106d0565b6000546001600160a01b0384811691161480159061118b57506001600160a01b0382163014155b80156111a257506001600160a01b03821661dead14155b80156111bc5750600e546001600160a01b03838116911614155b15611257576001600160a01b03821660009081526002602090815260408083205460089092529091205460ff16806111ff57506010546111fc8383611bcf565b11155b6112555760405162461bcd60e51b815260206004820152602160248201527f45524332303a2052656163686564204d61782077616c6c657420686f6c64696e6044820152606760f81b60648201526084016106d0565b505b30600090815260026020526040902054600f54811080159081906112855750600e54600160a01b900460ff16155b801561129f5750600e546001600160a01b03868116911614155b80156112b45750600e54600160a81b900460ff165b156112c757600f5491506112c7826114ff565b6001600160a01b03851660009081526007602052604090205460019060ff168061130957506001600160a01b03851660009081526007602052604090205460ff165b15611321576113198686866115d3565b5060006113c0565b600e546001600160a01b03908116908716036113835760006113596064611353600b54886116df90919063ffffffff16565b906116eb565b905061136585826116f7565b94506113728730836115d3565b61137d8787876115d3565b506113c0565b600e546001600160a01b03908116908616036113b55760006113596064611353600c54886116df90919063ffffffff16565b6113c08686866115d3565b505050505050565b600081848411156113ec5760405162461bcd60e51b81526004016106d09190611885565b505050900390565b6001600160a01b0382166114545760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016106d0565b61149181604051806060016040528060228152602001611d27602291396001600160a01b03851660009081526002602052604090205491906113c8565b6001600160a01b0383166000908152600260205260409020556004546114b790826116f7565b6004556040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b600e805460ff60a01b1916600160a01b179055600c5460009061152a906064906113539085906116df565b905080821580611538575080155b156115445750506115c3565b600061154f84611703565b4760008361155d8684611bb0565b6115679190611c6a565b600a546040519192506001600160a01b0316908290600081818185875af1925050503d80600081146115b5576040519150601f19603f3d011682016040523d82523d6000602084013e6115ba565b606091505b50505050505050505b50600e805460ff60a01b19169055565b6001600160a01b0383166115f95760405162461bcd60e51b81526004016106d090611be2565b6001600160a01b03821661161f5760405162461bcd60e51b81526004016106d090611c27565b61165c81604051806060016040528060268152602001611d49602691396001600160a01b03861660009081526002602052604090205491906113c8565b6001600160a01b03808516600090815260026020526040808220939093559084168152205461168b9082610e1a565b6001600160a01b0380841660008181526002602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610f459085815260200190565b6000610e268284611bb0565b6000610e268284611c6a565b6000610e268284611c8c565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061173857611738611c9f565b6001600160a01b03928316602091820292909201810191909152600d54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611791573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117b59190611a8a565b816001815181106117c8576117c8611c9f565b6001600160a01b039283166020918202929092010152600d546117ee9130911684610e2d565b600d5460405163791ac94760e01b81526001600160a01b039091169063791ac94790611827908590600090869030904290600401611cb5565b600060405180830381600087803b15801561184157600080fd5b505af11580156113c0573d6000803e3d6000fd5b8035801515811461186557600080fd5b919050565b60006020828403121561187c57600080fd5b610e2682611855565b600060208083528351808285015260005b818110156118b257858101830151858201604001528201611896565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610ab357600080fd5b600080604083850312156118fb57600080fd5b8235611906816118d3565b946020939093013593505050565b60006020828403121561192657600080fd5b8135610e26816118d3565b60008060006060848603121561194657600080fd5b8335611951816118d3565b92506020840135611961816118d3565b929592945050506040919091013590565b60006020828403121561198457600080fd5b5035919050565b6000806040838503121561199e57600080fd5b50508035926020909101359150565b600080604083850312156119c057600080fd5b82356119cb816118d3565b91506119d960208401611855565b90509250929050565b600080604083850312156119f557600080fd5b8235611a00816118d3565b91506020830135611a10816118d3565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c90821680611a6457607f821691505b602082108103611a8457634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215611a9c57600080fd5b8151610e26816118d3565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115611af8578160001904821115611ade57611ade611aa7565b80851615611aeb57918102915b93841c9390800290611ac2565b509250929050565b600082611b0f575060016107d4565b81611b1c575060006107d4565b8160018114611b325760028114611b3c57611b58565b60019150506107d4565b60ff841115611b4d57611b4d611aa7565b50506001821b6107d4565b5060208310610133831016604e8410600b8410161715611b7b575081810a6107d4565b611b858383611abd565b8060001904821115611b9957611b99611aa7565b029392505050565b6000610e2660ff841683611b00565b6000816000190483118215151615611bca57611bca611aa7565b500290565b808201808211156107d4576107d4611aa7565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b600082611c8757634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156107d4576107d4611aa7565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611d055784516001600160a01b031683529383019391830191600101611ce0565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122042d11e06cba2b17f0d6ef1c45874147f34a72be5b5075f90a41fd0364d42495464736f6c63430008100033
Deployed Bytecode
0x6080604052600436106102085760003560e01c806353cae9cf11610118578063a346304f116100a0578063bbde77c11161006f578063bbde77c1146105ea578063da7e2c7f14610600578063dd62ed3e14610620578063ec28438a14610666578063f2fde38b1461068657600080fd5b8063a346304f14610574578063a457c2d714610594578063a9059cbb146105b4578063bb5020bf146105d457600080fd5b806384e2b88d116100e757806384e2b88d146104ec5780638a8c523c1461050c5780638da5cb5b1461052157806395d89b411461053f5780639d51d9b71461055457600080fd5b806353cae9cf1461046b57806370a0823114610481578063715018a6146104b757806375f0a874146104cc57600080fd5b80632b14ca561161019b57806342966c681161016a57806342966c68146103bb57806347062402146103db57806349bd5a5e146103f15780634ada218b146104115780635342acb41461043257600080fd5b80632b14ca5614610349578063313ce5671461035f578063395093511461037b57806341cb87fc1461039b57600080fd5b80631694505e116101d75780631694505e146102b257806318160ddd146102ea578063224611731461030957806323b872dd1461032957600080fd5b806302a8b0411461021457806306fdde0314610236578063095ea7b314610261578063148d21611461029157600080fd5b3661020f57005b600080fd5b34801561022057600080fd5b5061023461022f36600461186a565b6106a6565b005b34801561024257600080fd5b5061024b610731565b6040516102589190611885565b60405180910390f35b34801561026d57600080fd5b5061028161027c3660046118e8565b6107c3565b6040519015158152602001610258565b34801561029d57600080fd5b50600e5461028190600160a81b900460ff1681565b3480156102be57600080fd5b50600d546102d2906001600160a01b031681565b6040516001600160a01b039091168152602001610258565b3480156102f657600080fd5b506004545b604051908152602001610258565b34801561031557600080fd5b50610234610324366004611914565b6107da565b34801561033557600080fd5b50610281610344366004611931565b610826565b34801561035557600080fd5b506102fb600c5481565b34801561036b57600080fd5b5060405160128152602001610258565b34801561038757600080fd5b506102816103963660046118e8565b61088f565b3480156103a757600080fd5b506102346103b6366004611914565b6108c5565b3480156103c757600080fd5b506102346103d6366004611972565b610a6a565b3480156103e757600080fd5b506102fb600b5481565b3480156103fd57600080fd5b50600e546102d2906001600160a01b031681565b34801561041d57600080fd5b50600e5461028190600160b01b900460ff1681565b34801561043e57600080fd5b5061028161044d366004611914565b6001600160a01b031660009081526007602052604090205460ff1690565b34801561047757600080fd5b506102fb600f5481565b34801561048d57600080fd5b506102fb61049c366004611914565b6001600160a01b031660009081526002602052604090205490565b3480156104c357600080fd5b50610234610ab6565b3480156104d857600080fd5b50600a546102d2906001600160a01b031681565b3480156104f857600080fd5b50610234610507366004611972565b610b2a565b34801561051857600080fd5b50610234610b70565b34801561052d57600080fd5b506000546001600160a01b03166102d2565b34801561054b57600080fd5b5061024b610baf565b34801561056057600080fd5b5061023461056f366004611972565b610bbe565b34801561058057600080fd5b5061023461058f36600461198b565b610c04565b3480156105a057600080fd5b506102816105af3660046118e8565b610c39565b3480156105c057600080fd5b506102816105cf3660046118e8565b610c88565b3480156105e057600080fd5b506102fb60115481565b3480156105f657600080fd5b506102fb60105481565b34801561060c57600080fd5b5061023461061b3660046119ad565b610c95565b34801561062c57600080fd5b506102fb61063b3660046119e2565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561067257600080fd5b50610234610681366004611972565b610cea565b34801561069257600080fd5b506102346106a1366004611914565b610d30565b6000546001600160a01b031633146106d95760405162461bcd60e51b81526004016106d090611a1b565b60405180910390fd5b600e8054821515600160a81b0260ff60a81b199091161790556040517f95104a55e36dd507aac6f3a5211027febb09c940366b18700bc6e6cedf67426b9061072690831515815260200190565b60405180910390a150565b60606005805461074090611a50565b80601f016020809104026020016040519081016040528092919081815260200182805461076c90611a50565b80156107b95780601f1061078e576101008083540402835291602001916107b9565b820191906000526020600020905b81548152906001019060200180831161079c57829003601f168201915b5050505050905090565b60006107d0338484610e2d565b5060015b92915050565b6000546001600160a01b031633146108045760405162461bcd60e51b81526004016106d090611a1b565b600a80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610833848484610f52565b610885843361088085604051806060016040528060288152602001611d6f602891396001600160a01b038a16600090815260036020908152604080832033845290915290205491906113c8565b610e2d565b5060019392505050565b3360008181526003602090815260408083206001600160a01b038716845290915281205490916107d09185906108809086610e1a565b6000546001600160a01b031633146108ef5760405162461bcd60e51b81526004016106d090611a1b565b6000819050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610932573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109569190611a8a565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c79190611a8a565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610a14573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a389190611a8a565b600e80546001600160a01b039283166001600160a01b031991821617909155600d805493909216921691909117905550565b6000546001600160a01b03163314610a945760405162461bcd60e51b81526004016106d090611a1b565b610ab333610aa46012600a611ba1565b610aae9084611bb0565b6113f4565b50565b6000546001600160a01b03163314610ae05760405162461bcd60e51b81526004016106d090611a1b565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610b545760405162461bcd60e51b81526004016106d090611a1b565b610b606012600a611ba1565b610b6a9082611bb0565b600f5550565b6000546001600160a01b03163314610b9a5760405162461bcd60e51b81526004016106d090611a1b565b600e805460ff60b01b1916600160b01b179055565b60606006805461074090611a50565b6000546001600160a01b03163314610be85760405162461bcd60e51b81526004016106d090611a1b565b610bf46012600a611ba1565b610bfe9082611bb0565b60105550565b6000546001600160a01b03163314610c2e5760405162461bcd60e51b81526004016106d090611a1b565b600b91909155600c55565b60006107d0338461088085604051806060016040528060258152602001611d97602591393360009081526003602090815260408083206001600160a01b038d16845290915290205491906113c8565b60006107d0338484610f52565b6000546001600160a01b03163314610cbf5760405162461bcd60e51b81526004016106d090611a1b565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610d145760405162461bcd60e51b81526004016106d090611a1b565b610d206012600a611ba1565b610d2a9082611bb0565b60115550565b6000546001600160a01b03163314610d5a5760405162461bcd60e51b81526004016106d090611a1b565b6001600160a01b038116610dbf5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016106d0565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000610e268284611bcf565b9392505050565b6001600160a01b038316610e8f5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106d0565b6001600160a01b038216610ef05760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106d0565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610f785760405162461bcd60e51b81526004016106d090611be2565b6001600160a01b038216610f9e5760405162461bcd60e51b81526004016106d090611c27565b600081116110005760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016106d0565b6000546001600160a01b038481169116148015906110285750600e54600160b01b900460ff16155b1561108657600e54600160b01b900460ff166110865760405162461bcd60e51b815260206004820152601a60248201527f54726164696e67206973206e6f7420656e61626c65642079657400000000000060448201526064016106d0565b6000546001600160a01b038481169116148015906110b257506000546001600160a01b03838116911614155b15611164576001600160a01b03831660009081526009602052604090205460ff16806110f657506001600160a01b03821660009081526009602052604090205460ff165b8061110357506011548111155b6111645760405162461bcd60e51b815260206004820152602c60248201527f45524332303a205472616e7366657220616d6f756e742065786365656473207460448201526b34329026b0bc2a3c20b6ba1760a11b60648201526084016106d0565b6000546001600160a01b0384811691161480159061118b57506001600160a01b0382163014155b80156111a257506001600160a01b03821661dead14155b80156111bc5750600e546001600160a01b03838116911614155b15611257576001600160a01b03821660009081526002602090815260408083205460089092529091205460ff16806111ff57506010546111fc8383611bcf565b11155b6112555760405162461bcd60e51b815260206004820152602160248201527f45524332303a2052656163686564204d61782077616c6c657420686f6c64696e6044820152606760f81b60648201526084016106d0565b505b30600090815260026020526040902054600f54811080159081906112855750600e54600160a01b900460ff16155b801561129f5750600e546001600160a01b03868116911614155b80156112b45750600e54600160a81b900460ff165b156112c757600f5491506112c7826114ff565b6001600160a01b03851660009081526007602052604090205460019060ff168061130957506001600160a01b03851660009081526007602052604090205460ff165b15611321576113198686866115d3565b5060006113c0565b600e546001600160a01b03908116908716036113835760006113596064611353600b54886116df90919063ffffffff16565b906116eb565b905061136585826116f7565b94506113728730836115d3565b61137d8787876115d3565b506113c0565b600e546001600160a01b03908116908616036113b55760006113596064611353600c54886116df90919063ffffffff16565b6113c08686866115d3565b505050505050565b600081848411156113ec5760405162461bcd60e51b81526004016106d09190611885565b505050900390565b6001600160a01b0382166114545760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016106d0565b61149181604051806060016040528060228152602001611d27602291396001600160a01b03851660009081526002602052604090205491906113c8565b6001600160a01b0383166000908152600260205260409020556004546114b790826116f7565b6004556040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b600e805460ff60a01b1916600160a01b179055600c5460009061152a906064906113539085906116df565b905080821580611538575080155b156115445750506115c3565b600061154f84611703565b4760008361155d8684611bb0565b6115679190611c6a565b600a546040519192506001600160a01b0316908290600081818185875af1925050503d80600081146115b5576040519150601f19603f3d011682016040523d82523d6000602084013e6115ba565b606091505b50505050505050505b50600e805460ff60a01b19169055565b6001600160a01b0383166115f95760405162461bcd60e51b81526004016106d090611be2565b6001600160a01b03821661161f5760405162461bcd60e51b81526004016106d090611c27565b61165c81604051806060016040528060268152602001611d49602691396001600160a01b03861660009081526002602052604090205491906113c8565b6001600160a01b03808516600090815260026020526040808220939093559084168152205461168b9082610e1a565b6001600160a01b0380841660008181526002602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610f459085815260200190565b6000610e268284611bb0565b6000610e268284611c6a565b6000610e268284611c8c565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061173857611738611c9f565b6001600160a01b03928316602091820292909201810191909152600d54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611791573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117b59190611a8a565b816001815181106117c8576117c8611c9f565b6001600160a01b039283166020918202929092010152600d546117ee9130911684610e2d565b600d5460405163791ac94760e01b81526001600160a01b039091169063791ac94790611827908590600090869030904290600401611cb5565b600060405180830381600087803b15801561184157600080fd5b505af11580156113c0573d6000803e3d6000fd5b8035801515811461186557600080fd5b919050565b60006020828403121561187c57600080fd5b610e2682611855565b600060208083528351808285015260005b818110156118b257858101830151858201604001528201611896565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610ab357600080fd5b600080604083850312156118fb57600080fd5b8235611906816118d3565b946020939093013593505050565b60006020828403121561192657600080fd5b8135610e26816118d3565b60008060006060848603121561194657600080fd5b8335611951816118d3565b92506020840135611961816118d3565b929592945050506040919091013590565b60006020828403121561198457600080fd5b5035919050565b6000806040838503121561199e57600080fd5b50508035926020909101359150565b600080604083850312156119c057600080fd5b82356119cb816118d3565b91506119d960208401611855565b90509250929050565b600080604083850312156119f557600080fd5b8235611a00816118d3565b91506020830135611a10816118d3565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c90821680611a6457607f821691505b602082108103611a8457634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215611a9c57600080fd5b8151610e26816118d3565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115611af8578160001904821115611ade57611ade611aa7565b80851615611aeb57918102915b93841c9390800290611ac2565b509250929050565b600082611b0f575060016107d4565b81611b1c575060006107d4565b8160018114611b325760028114611b3c57611b58565b60019150506107d4565b60ff841115611b4d57611b4d611aa7565b50506001821b6107d4565b5060208310610133831016604e8410600b8410161715611b7b575081810a6107d4565b611b858383611abd565b8060001904821115611b9957611b99611aa7565b029392505050565b6000610e2660ff841683611b00565b6000816000190483118215151615611bca57611bca611aa7565b500290565b808201808211156107d4576107d4611aa7565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b600082611c8757634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156107d4576107d4611aa7565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611d055784516001600160a01b031683529383019391830191600101611ce0565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122042d11e06cba2b17f0d6ef1c45874147f34a72be5b5075f90a41fd0364d42495464736f6c63430008100033
Deployed Bytecode Sourcemap
9110:7904:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13029:176;;;;;;;;;;-1:-1:-1;13029:176:0;;;;;:::i;:::-;;:::i;:::-;;3810:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4790:194;;;;;;;;;;-1:-1:-1;4790:194:0;;;;;:::i;:::-;;:::i;:::-;;;1538:14:1;;1531:22;1513:41;;1501:2;1486:18;4790:194:0;1373:187:1;9667:41:0;;;;;;;;;;-1:-1:-1;9667:41:0;;;;-1:-1:-1;;;9667:41:0;;;;;;9556;;;;;;;;;;-1:-1:-1;9556:41:0;;;;-1:-1:-1;;;;;9556:41:0;;;;;;-1:-1:-1;;;;;1755:32:1;;;1737:51;;1725:2;1710:18;9556:41:0;1565:229:1;4131:108:0;;;;;;;;;;-1:-1:-1;4219:12:0;;4131:108;;;1945:25:1;;;1933:2;1918:18;4131:108:0;1799:177:1;12145:104:0;;;;;;;;;;-1:-1:-1;12145:104:0;;;;;:::i;:::-;;:::i;4992:454::-;;;;;;;;;;-1:-1:-1;4992:454:0;;;;;:::i;:::-;;:::i;9520:27::-;;;;;;;;;;;;;;;;4030:93;;;;;;;;;;-1:-1:-1;4030:93:0;;4113:2;2836:36:1;;2824:2;2809:18;4030:93:0;2694:184:1;5454:293:0;;;;;;;;;;-1:-1:-1;5454:293:0;;;;;:::i;:::-;;:::i;12689:332::-;;;;;;;;;;-1:-1:-1;12689:332:0;;;;;:::i;:::-;;:::i;11474:109::-;;;;;;;;;;-1:-1:-1;11474:109:0;;;;;:::i;:::-;;:::i;9487:26::-;;;;;;;;;;;;;;;;9604:28;;;;;;;;;;-1:-1:-1;9604:28:0;;;;-1:-1:-1;;;;;9604:28:0;;;9715:34;;;;;;;;;;-1:-1:-1;9715:34:0;;;;-1:-1:-1;;;9715:34:0;;;;;;11758:124;;;;;;;;;;-1:-1:-1;11758:124:0;;;;;:::i;:::-;-1:-1:-1;;;;;11847:27:0;11823:4;11847:27;;;:18;:27;;;;;;;;;11758:124;9756:38;;;;;;;;;;;;;;;;4247:143;;;;;;;;;;-1:-1:-1;4247:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;4364:18:0;4337:7;4364:18;;;:9;:18;;;;;;;4247:143;2691:148;;;;;;;;;;;;;:::i;9367:30::-;;;;;;;;;;-1:-1:-1;9367:30:0;;;;-1:-1:-1;;;;;9367:30:0;;;12540:141;;;;;;;;;;-1:-1:-1;12540:141:0;;;;;:::i;:::-;;:::i;11890:84::-;;;;;;;;;;;;;:::i;2468:87::-;;;;;;;;;;-1:-1:-1;2514:7:0;2541:6;-1:-1:-1;;;;;2541:6:0;2468:87;;3918:104;;;;;;;;;;;;;:::i;12257:143::-;;;;;;;;;;-1:-1:-1;12257:143:0;;;;;:::i;:::-;;:::i;11982:155::-;;;;;;;;;;-1:-1:-1;11982:155:0;;;;;:::i;:::-;;:::i;5755:393::-;;;;;;;;;;-1:-1:-1;5755:393:0;;;;;:::i;:::-;;:::i;4398:200::-;;;;;;;;;;-1:-1:-1;4398:200:0;;;;;:::i;:::-;;:::i;9839:23::-;;;;;;;;;;;;;;;;9801:31;;;;;;;;;;;;;;;;11591:159;;;;;;;;;;-1:-1:-1;11591:159:0;;;;;:::i;:::-;;:::i;4606:176::-;;;;;;;;;;-1:-1:-1;4606:176:0;;;;;:::i;:::-;-1:-1:-1;;;;;4747:18:0;;;4720:7;4747:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;4606:176;12408:124;;;;;;;;;;-1:-1:-1;12408:124:0;;;;;:::i;:::-;;:::i;2847:281::-;;;;;;;;;;-1:-1:-1;2847:281:0;;;;;:::i;:::-;;:::i;13029:176::-;2514:7;2541:6;-1:-1:-1;;;;;2541:6:0;1971:10;2603:23;2595:68;;;;-1:-1:-1;;;2595:68:0;;;;;;;:::i;:::-;;;;;;;;;13109:22:::1;:33:::0;;;::::1;;-1:-1:-1::0;;;13109:33:0::1;-1:-1:-1::0;;;;13109:33:0;;::::1;;::::0;;13158:39:::1;::::0;::::1;::::0;::::1;::::0;13134:8;1538:14:1;1531:22;1513:41;;1501:2;1486:18;;1373:187;13158:39:0::1;;;;;;;;13029:176:::0;:::o;3810:100::-;3864:13;3897:5;3890:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3810:100;:::o;4790:194::-;4898:4;4915:39;1971:10;4938:7;4947:6;4915:8;:39::i;:::-;-1:-1:-1;4972:4:0;4790:194;;;;;:::o;12145:104::-;2514:7;2541:6;-1:-1:-1;;;;;2541:6:0;1971:10;2603:23;2595:68;;;;-1:-1:-1;;;2595:68:0;;;;;;;:::i;:::-;12218:15:::1;:23:::0;;-1:-1:-1;;;;;;12218:23:0::1;-1:-1:-1::0;;;;;12218:23:0;;;::::1;::::0;;;::::1;::::0;;12145:104::o;4992:454::-;5132:4;5149:36;5159:6;5167:9;5178:6;5149:9;:36::i;:::-;5196:220;5219:6;1971:10;5267:138;5323:6;5267:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;5267:19:0;;;;;;:11;:19;;;;;;;;1971:10;5267:33;;;;;;;;;;:37;:138::i;:::-;5196:8;:220::i;:::-;-1:-1:-1;5434:4:0;4992:454;;;;;:::o;5454:293::-;1971:10;5567:4;5656:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;5656:34:0;;;;;;;;;;5567:4;;5584:133;;5634:7;;5656:50;;5695:10;5656:38;:50::i;12689:332::-;2514:7;2541:6;-1:-1:-1;;;;;2541:6:0;1971:10;2603:23;2595:68;;;;-1:-1:-1;;;2595:68:0;;;;;;;:::i;:::-;12764:35:::1;12821:9;12764:67;;12876:16;-1:-1:-1::0;;;;;12876:24:0::1;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12858:70:0::1;;12937:4;12944:16;-1:-1:-1::0;;;;;12944:21:0::1;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12858:110;::::0;-1:-1:-1;;;;;;12858:110:0::1;::::0;;;;;;-1:-1:-1;;;;;5474:15:1;;;12858:110:0::1;::::0;::::1;5456:34:1::0;5526:15;;5506:18;;;5499:43;5391:18;;12858:110:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12842:13;:126:::0;;-1:-1:-1;;;;;12842:126:0;;::::1;-1:-1:-1::0;;;;;;12842:126:0;;::::1;;::::0;;;12979:15:::1;:34:::0;;;;;::::1;::::0;::::1;::::0;;;::::1;::::0;;-1:-1:-1;12689:332:0:o;11474:109::-;2514:7;2541:6;-1:-1:-1;;;;;2541:6:0;1971:10;2603:23;2595:68;;;;-1:-1:-1;;;2595:68:0;;;;;;;:::i;:::-;11531:44:::1;11537:10;11558:16;4113:2:::0;11558::::1;:16;:::i;:::-;11549:25;::::0;:6;:25:::1;:::i;:::-;11531:5;:44::i;:::-;11474:109:::0;:::o;2691:148::-;2514:7;2541:6;-1:-1:-1;;;;;2541:6:0;1971:10;2603:23;2595:68;;;;-1:-1:-1;;;2595:68:0;;;;;;;:::i;:::-;2798:1:::1;2782:6:::0;;2761:40:::1;::::0;-1:-1:-1;;;;;2782:6:0;;::::1;::::0;2761:40:::1;::::0;2798:1;;2761:40:::1;2829:1;2812:19:::0;;-1:-1:-1;;;;;;2812:19:0::1;::::0;;2691:148::o;12540:141::-;2514:7;2541:6;-1:-1:-1;;;;;2541:6:0;1971:10;2603:23;2595:68;;;;-1:-1:-1;;;2595:68:0;;;;;;;:::i;:::-;12657:16:::1;4113:2:::0;12657::::1;:16;:::i;:::-;12648:25;::::0;:6;:25:::1;:::i;:::-;12622:23;:51:::0;-1:-1:-1;12540:141:0:o;11890:84::-;2514:7;2541:6;-1:-1:-1;;;;;2541:6:0;1971:10;2603:23;2595:68;;;;-1:-1:-1;;;2595:68:0;;;;;;;:::i;:::-;11945:14:::1;:21:::0;;-1:-1:-1;;;;11945:21:0::1;-1:-1:-1::0;;;11945:21:0::1;::::0;;11890:84::o;3918:104::-;3974:13;4007:7;4000:14;;;;;:::i;12257:143::-;2514:7;2541:6;-1:-1:-1;;;;;2541:6:0;1971:10;2603:23;2595:68;;;;-1:-1:-1;;;2595:68:0;;;;;;;:::i;:::-;12376:16:::1;4113:2:::0;12376::::1;:16;:::i;:::-;12356:36;::::0;:17;:36:::1;:::i;:::-;12337:16;:55:::0;-1:-1:-1;12257:143:0:o;11982:155::-;2514:7;2541:6;-1:-1:-1;;;;;2541:6:0;1971:10;2603:23;2595:68;;;;-1:-1:-1;;;2595:68:0;;;;;;;:::i;:::-;12091:6:::1;:13:::0;;;;12115:7:::1;:14:::0;11982:155::o;5755:393::-;5873:4;5890:228;1971:10;5940:7;5962:145;6019:15;5962:145;;;;;;;;;;;;;;;;;1971:10;5962:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;5962:34:0;;;;;;;;;;;;:38;:145::i;4398:200::-;4509:4;4526:42;1971:10;4550:9;4561:6;4526:9;:42::i;11591:159::-;2514:7;2541:6;-1:-1:-1;;;;;2541:6:0;1971:10;2603:23;2595:68;;;;-1:-1:-1;;;2595:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;11707:27:0;;;::::1;;::::0;;;:18:::1;:27;::::0;;;;:35;;-1:-1:-1;;11707:35:0::1;::::0;::::1;;::::0;;;::::1;::::0;;11591:159::o;12408:124::-;2514:7;2541:6;-1:-1:-1;;;;;2541:6:0;1971:10;2603:23;2595:68;;;;-1:-1:-1;;;2595:68:0;;;;;;;:::i;:::-;12508:16:::1;4113:2:::0;12508::::1;:16;:::i;:::-;12494:30;::::0;:11;:30:::1;:::i;:::-;12483:8;:41:::0;-1:-1:-1;12408:124:0:o;2847:281::-;2514:7;2541:6;-1:-1:-1;;;;;2541:6:0;1971:10;2603:23;2595:68;;;;-1:-1:-1;;;2595:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2950:22:0;::::1;2928:110;;;::::0;-1:-1:-1;;;2928:110:0;;7443:2:1;2928:110:0::1;::::0;::::1;7425:21:1::0;7482:2;7462:18;;;7455:30;7521:34;7501:18;;;7494:62;-1:-1:-1;;;7572:18:1;;;7565:36;7618:19;;2928:110:0::1;7241:402:1::0;2928:110:0::1;3075:6;::::0;;3054:38:::1;::::0;-1:-1:-1;;;;;3054:38:0;;::::1;::::0;3075:6;::::1;::::0;3054:38:::1;::::0;::::1;3103:6;:17:::0;;-1:-1:-1;;;;;;3103:17:0::1;-1:-1:-1::0;;;;;3103:17:0;;;::::1;::::0;;;::::1;::::0;;2847:281::o;940:98::-;998:7;1025:5;1029:1;1025;:5;:::i;:::-;1018:12;940:98;-1:-1:-1;;;940:98:0:o;7623:380::-;-1:-1:-1;;;;;7759:19:0;;7751:68;;;;-1:-1:-1;;;7751:68:0;;7980:2:1;7751:68:0;;;7962:21:1;8019:2;7999:18;;;7992:30;8058:34;8038:18;;;8031:62;-1:-1:-1;;;8109:18:1;;;8102:34;8153:19;;7751:68:0;7778:400:1;7751:68:0;-1:-1:-1;;;;;7838:21:0;;7830:68;;;;-1:-1:-1;;;7830:68:0;;8385:2:1;7830:68:0;;;8367:21:1;8424:2;8404:18;;;8397:30;8463:34;8443:18;;;8436:62;-1:-1:-1;;;8514:18:1;;;8507:32;8556:19;;7830:68:0;8183:398:1;7830:68:0;-1:-1:-1;;;;;7911:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7963:32;;1945:25:1;;;7963:32:0;;1918:18:1;7963:32:0;;;;;;;;7623:380;;;:::o;13250:2600::-;-1:-1:-1;;;;;13382:18:0;;13374:68;;;;-1:-1:-1;;;13374:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;13461:16:0;;13453:64;;;;-1:-1:-1;;;13453:64:0;;;;;;;:::i;:::-;13545:1;13536:6;:10;13528:64;;;;-1:-1:-1;;;13528:64:0;;9598:2:1;13528:64:0;;;9580:21:1;9637:2;9617:18;;;9610:30;9676:34;9656:18;;;9649:62;-1:-1:-1;;;9727:18:1;;;9720:39;9776:19;;13528:64:0;9396:405:1;13528:64:0;2514:7;2541:6;-1:-1:-1;;;;;13609:15:0;;;2541:6;;13609:15;;;;:34;;-1:-1:-1;13629:14:0;;-1:-1:-1;;;13629:14:0;;;;13628:15;13609:34;13605:120;;;13668:14;;-1:-1:-1;;;13668:14:0;;;;13660:53;;;;-1:-1:-1;;;13660:53:0;;10008:2:1;13660:53:0;;;9990:21:1;10047:2;10027:18;;;10020:30;10086:28;10066:18;;;10059:56;10132:18;;13660:53:0;9806:350:1;13660:53:0;2514:7;2541:6;-1:-1:-1;;;;;13741:15:0;;;2541:6;;13741:15;;;;:32;;-1:-1:-1;2514:7:0;2541:6;-1:-1:-1;;;;;13760:13:0;;;2541:6;;13760:13;;13741:32;13737:287;;;-1:-1:-1;;;;;13814:32:0;;;;;;:26;:32;;;;;;;;;:87;;-1:-1:-1;;;;;;13871:30:0;;;;;;:26;:30;;;;;;;;13814:87;:130;;;;13936:8;;13926:6;:18;;13814:130;13788:236;;;;-1:-1:-1;;;13788:236:0;;10363:2:1;13788:236:0;;;10345:21:1;10402:2;10382:18;;;10375:30;10441:34;10421:18;;;10414:62;-1:-1:-1;;;10492:18:1;;;10485:42;10544:19;;13788:236:0;10161:408:1;13788:236:0;2514:7;2541:6;-1:-1:-1;;;;;14055:15:0;;;2541:6;;14055:15;;;;:51;;-1:-1:-1;;;;;;14087:19:0;;14101:4;14087:19;;14055:51;:86;;;;-1:-1:-1;;;;;;14123:18:0;;9436:42;14123:18;;14055:86;:122;;;;-1:-1:-1;14164:13:0;;-1:-1:-1;;;;;14158:19:0;;;14164:13;;14158:19;;14055:122;14037:425;;;-1:-1:-1;;;;;4364:18:0;;14204:22;4364:18;;;:9;:18;;;;;;;;;14283:24;:28;;;;;;;;;;:98;;-1:-1:-1;14364:16:0;;14337:23;14354:6;14337:14;:23;:::i;:::-;:43;;14283:98;14257:193;;;;-1:-1:-1;;;14257:193:0;;10776:2:1;14257:193:0;;;10758:21:1;10815:2;10795:18;;;10788:30;10854:34;10834:18;;;10827:62;-1:-1:-1;;;10905:18:1;;;10898:31;10946:19;;14257:193:0;10574:397:1;14257:193:0;14189:273;14037:425;14523:4;14474:28;4364:18;;;:9;:18;;;;;;14604:23;;14567:60;;;;;;;14656:53;;-1:-1:-1;14693:16:0;;-1:-1:-1;;;14693:16:0;;;;14692:17;14656:53;:91;;;;-1:-1:-1;14734:13:0;;-1:-1:-1;;;;;14726:21:0;;;14734:13;;14726:21;;14656:91;:130;;;;-1:-1:-1;14764:22:0;;-1:-1:-1;;;14764:22:0;;;;14656:130;14638:278;;;14836:23;;14813:46;;14874:30;14883:20;14874:8;:30::i;:::-;-1:-1:-1;;;;;14962:24:0;;14928:12;14962:24;;;:18;:24;;;;;;14943:4;;14962:24;;;:50;;-1:-1:-1;;;;;;14990:22:0;;;;;;:18;:22;;;;;;;;14962:50;14958:885;;;15029:33;15045:4;15051:2;15055:6;15029:15;:33::i;:::-;-1:-1:-1;15087:5:0;14958:885;;;15137:13;;-1:-1:-1;;;;;15137:13:0;;;15129:21;;;;15125:707;;15171:23;15197:27;15220:3;15197:18;15208:6;;15197;:10;;:18;;;;:::i;:::-;:22;;:27::i;:::-;15171:53;-1:-1:-1;15252:27:0;:6;15171:53;15252:10;:27::i;:::-;15243:36;;15298:53;15314:4;15328;15335:15;15298;:53::i;:::-;15370:33;15386:4;15392:2;15396:6;15370:15;:33::i;:::-;15152:267;15125:707;;;15435:13;;-1:-1:-1;;;;;15435:13:0;;;15429:19;;;;15425:407;;15469:23;15495:68;15541:3;15495:19;15506:7;;15495:6;:10;;:19;;;;:::i;15425:407::-;15783:33;15799:4;15805:2;15809:6;15783:15;:33::i;:::-;13363:2487;;;13250:2600;;;:::o;1364:240::-;1484:7;1545:12;1537:6;;;;1529:29;;;;-1:-1:-1;;;1529:29:0;;;;;;;;:::i;:::-;-1:-1:-1;;;1580:5:0;;;1364:240::o;7160:455::-;-1:-1:-1;;;;;7244:21:0;;7236:67;;;;-1:-1:-1;;;7236:67:0;;11178:2:1;7236:67:0;;;11160:21:1;11217:2;11197:18;;;11190:30;11256:34;11236:18;;;11229:62;-1:-1:-1;;;11307:18:1;;;11300:31;11348:19;;7236:67:0;10976:397:1;7236:67:0;7399:105;7436:6;7399:105;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7399:18:0;;;;;;:9;:18;;;;;;;:105;:22;:105::i;:::-;-1:-1:-1;;;;;7378:18:0;;;;;;:9;:18;;;;;:126;7530:12;;:24;;7547:6;7530:16;:24::i;:::-;7515:12;:39;7570:37;;1945:25:1;;;7596:1:0;;-1:-1:-1;;;;;7570:37:0;;;;;1933:2:1;1918:18;7570:37:0;;;;;;;7160:455;;:::o;15858:646::-;10164:16;:23;;-1:-1:-1;;;;10164:23:0;-1:-1:-1;;;10164:23:0;;;15978:7:::1;::::0;10164:23;;15958:61:::1;::::0;16005:3:::1;::::0;15958:28:::1;::::0;:15;;:19:::1;:28::i;:61::-;15932:87:::0;-1:-1:-1;15932:87:0;16088:20;;;:46:::1;;-1:-1:-1::0;16112:22:0;;16088:46:::1;16084:85;;;16151:7;;;;16084:85;16179:12;16202:33;16219:15;16202:16;:33::i;:::-;16267:21;16246:18;16372:17:::0;16326:28:::1;16339:15:::0;16267:21;16326:28:::1;:::i;:::-;16325:65;;;;:::i;:::-;16423:15;::::0;16415:81:::1;::::0;16299:91;;-1:-1:-1;;;;;;16423:15:0::1;::::0;16299:91;;16415:81:::1;::::0;;;16299:91;16423:15;16415:81:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;;;;10198:1:0::1;-1:-1:-1::0;10210:16:0;:24;;-1:-1:-1;;;;10210:24:0;;;15858:646::o;6156:610::-;-1:-1:-1;;;;;6296:20:0;;6288:70;;;;-1:-1:-1;;;6288:70:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;6377:23:0;;6369:71;;;;-1:-1:-1;;;6369:71:0;;;;;;;:::i;:::-;6533:108;6569:6;6533:108;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6533:17:0;;;;;;:9;:17;;;;;;;:108;:21;:108::i;:::-;-1:-1:-1;;;;;6513:17:0;;;;;;;:9;:17;;;;;;:128;;;;6675:20;;;;;;;:32;;6700:6;6675:24;:32::i;:::-;-1:-1:-1;;;;;6652:20:0;;;;;;;:9;:20;;;;;;;:55;;;;6723:35;;;;;;;;;;6751:6;1945:25:1;;1933:2;1918:18;;1799:177;1152:98:0;1210:7;1237:5;1241:1;1237;:5;:::i;1258:98::-;1316:7;1343:5;1347:1;1343;:5;:::i;1046:98::-;1104:7;1131:5;1135:1;1131;:5;:::i;16512:499::-;16602:16;;;16616:1;16602:16;;;;;;;;16578:21;;16602:16;;;;;;;;;;-1:-1:-1;16602:16:0;16578:40;;16647:4;16629;16634:1;16629:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;16629:23:0;;;:7;;;;;;;;;;:23;;;;16673:15;;:22;;;-1:-1:-1;;;16673:22:0;;;;:15;;;;;:20;;:22;;;;;16629:7;;16673:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16663:4;16668:1;16663:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;16663:32:0;;;:7;;;;;;;;;:32;16738:15;;16706:62;;16723:4;;16738:15;16756:11;16706:8;:62::i;:::-;16779:15;;:224;;-1:-1:-1;;;16779:224:0;;-1:-1:-1;;;;;16779:15:0;;;;:66;;:224;;16860:11;;16779:15;;16930:4;;16957;;16977:15;;16779:224;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:160:1;79:20;;135:13;;128:21;118:32;;108:60;;164:1;161;154:12;108:60;14:160;;;:::o;179:180::-;235:6;288:2;276:9;267:7;263:23;259:32;256:52;;;304:1;301;294:12;256:52;327:26;343:9;327:26;:::i;364:548::-;476:4;505:2;534;523:9;516:21;566:6;560:13;609:6;604:2;593:9;589:18;582:34;634:1;644:140;658:6;655:1;652:13;644:140;;;753:14;;;749:23;;743:30;719:17;;;738:2;715:26;708:66;673:10;;644:140;;;648:3;833:1;828:2;819:6;808:9;804:22;800:31;793:42;903:2;896;892:7;887:2;879:6;875:15;871:29;860:9;856:45;852:54;844:62;;;;364:548;;;;:::o;917:131::-;-1:-1:-1;;;;;992:31:1;;982:42;;972:70;;1038:1;1035;1028:12;1053:315;1121:6;1129;1182:2;1170:9;1161:7;1157:23;1153:32;1150:52;;;1198:1;1195;1188:12;1150:52;1237:9;1224:23;1256:31;1281:5;1256:31;:::i;:::-;1306:5;1358:2;1343:18;;;;1330:32;;-1:-1:-1;;;1053:315:1:o;1981:247::-;2040:6;2093:2;2081:9;2072:7;2068:23;2064:32;2061:52;;;2109:1;2106;2099:12;2061:52;2148:9;2135:23;2167:31;2192:5;2167:31;:::i;2233:456::-;2310:6;2318;2326;2379:2;2367:9;2358:7;2354:23;2350:32;2347:52;;;2395:1;2392;2385:12;2347:52;2434:9;2421:23;2453:31;2478:5;2453:31;:::i;:::-;2503:5;-1:-1:-1;2560:2:1;2545:18;;2532:32;2573:33;2532:32;2573:33;:::i;:::-;2233:456;;2625:7;;-1:-1:-1;;;2679:2:1;2664:18;;;;2651:32;;2233:456::o;2883:180::-;2942:6;2995:2;2983:9;2974:7;2970:23;2966:32;2963:52;;;3011:1;3008;3001:12;2963:52;-1:-1:-1;3034:23:1;;2883:180;-1:-1:-1;2883:180:1:o;3276:248::-;3344:6;3352;3405:2;3393:9;3384:7;3380:23;3376:32;3373:52;;;3421:1;3418;3411:12;3373:52;-1:-1:-1;;3444:23:1;;;3514:2;3499:18;;;3486:32;;-1:-1:-1;3276:248:1:o;3529:315::-;3594:6;3602;3655:2;3643:9;3634:7;3630:23;3626:32;3623:52;;;3671:1;3668;3661:12;3623:52;3710:9;3697:23;3729:31;3754:5;3729:31;:::i;:::-;3779:5;-1:-1:-1;3803:35:1;3834:2;3819:18;;3803:35;:::i;:::-;3793:45;;3529:315;;;;;:::o;3849:388::-;3917:6;3925;3978:2;3966:9;3957:7;3953:23;3949:32;3946:52;;;3994:1;3991;3984:12;3946:52;4033:9;4020:23;4052:31;4077:5;4052:31;:::i;:::-;4102:5;-1:-1:-1;4159:2:1;4144:18;;4131:32;4172:33;4131:32;4172:33;:::i;:::-;4224:7;4214:17;;;3849:388;;;;;:::o;4242:356::-;4444:2;4426:21;;;4463:18;;;4456:30;4522:34;4517:2;4502:18;;4495:62;4589:2;4574:18;;4242:356::o;4603:380::-;4682:1;4678:12;;;;4725;;;4746:61;;4800:4;4792:6;4788:17;4778:27;;4746:61;4853:2;4845:6;4842:14;4822:18;4819:38;4816:161;;4899:10;4894:3;4890:20;4887:1;4880:31;4934:4;4931:1;4924:15;4962:4;4959:1;4952:15;4816:161;;4603:380;;;:::o;4988:251::-;5058:6;5111:2;5099:9;5090:7;5086:23;5082:32;5079:52;;;5127:1;5124;5117:12;5079:52;5159:9;5153:16;5178:31;5203:5;5178:31;:::i;5553:127::-;5614:10;5609:3;5605:20;5602:1;5595:31;5645:4;5642:1;5635:15;5669:4;5666:1;5659:15;5685:422;5774:1;5817:5;5774:1;5831:270;5852:7;5842:8;5839:21;5831:270;;;5911:4;5907:1;5903:6;5899:17;5893:4;5890:27;5887:53;;;5920:18;;:::i;:::-;5970:7;5960:8;5956:22;5953:55;;;5990:16;;;;5953:55;6069:22;;;;6029:15;;;;5831:270;;;5835:3;5685:422;;;;;:::o;6112:806::-;6161:5;6191:8;6181:80;;-1:-1:-1;6232:1:1;6246:5;;6181:80;6280:4;6270:76;;-1:-1:-1;6317:1:1;6331:5;;6270:76;6362:4;6380:1;6375:59;;;;6448:1;6443:130;;;;6355:218;;6375:59;6405:1;6396:10;;6419:5;;;6443:130;6480:3;6470:8;6467:17;6464:43;;;6487:18;;:::i;:::-;-1:-1:-1;;6543:1:1;6529:16;;6558:5;;6355:218;;6657:2;6647:8;6644:16;6638:3;6632:4;6629:13;6625:36;6619:2;6609:8;6606:16;6601:2;6595:4;6592:12;6588:35;6585:77;6582:159;;;-1:-1:-1;6694:19:1;;;6726:5;;6582:159;6773:34;6798:8;6792:4;6773:34;:::i;:::-;6843:6;6839:1;6835:6;6831:19;6822:7;6819:32;6816:58;;;6854:18;;:::i;:::-;6892:20;;6112:806;-1:-1:-1;;;6112:806:1:o;6923:140::-;6981:5;7010:47;7051:4;7041:8;7037:19;7031:4;7010:47;:::i;7068:168::-;7108:7;7174:1;7170;7166:6;7162:14;7159:1;7156:21;7151:1;7144:9;7137:17;7133:45;7130:71;;;7181:18;;:::i;:::-;-1:-1:-1;7221:9:1;;7068:168::o;7648:125::-;7713:9;;;7734:10;;;7731:36;;;7747:18;;:::i;8586:401::-;8788:2;8770:21;;;8827:2;8807:18;;;8800:30;8866:34;8861:2;8846:18;;8839:62;-1:-1:-1;;;8932:2:1;8917:18;;8910:35;8977:3;8962:19;;8586:401::o;8992:399::-;9194:2;9176:21;;;9233:2;9213:18;;;9206:30;9272:34;9267:2;9252:18;;9245:62;-1:-1:-1;;;9338:2:1;9323:18;;9316:33;9381:3;9366:19;;8992:399::o;11378:217::-;11418:1;11444;11434:132;;11488:10;11483:3;11479:20;11476:1;11469:31;11523:4;11520:1;11513:15;11551:4;11548:1;11541:15;11434:132;-1:-1:-1;11580:9:1;;11378:217::o;11810:128::-;11877:9;;;11898:11;;;11895:37;;;11912:18;;:::i;12075:127::-;12136:10;12131:3;12127:20;12124:1;12117:31;12167:4;12164:1;12157:15;12191:4;12188:1;12181:15;12207:980;12469:4;12517:3;12506:9;12502:19;12548:6;12537:9;12530:25;12574:2;12612:6;12607:2;12596:9;12592:18;12585:34;12655:3;12650:2;12639:9;12635:18;12628:31;12679:6;12714;12708:13;12745:6;12737;12730:22;12783:3;12772:9;12768:19;12761:26;;12822:2;12814:6;12810:15;12796:29;;12843:1;12853:195;12867:6;12864:1;12861:13;12853:195;;;12932:13;;-1:-1:-1;;;;;12928:39:1;12916:52;;13023:15;;;;12988:12;;;;12964:1;12882:9;12853:195;;;-1:-1:-1;;;;;;;13104:32:1;;;;13099:2;13084:18;;13077:60;-1:-1:-1;;;13168:3:1;13153:19;13146:35;13065:3;12207:980;-1:-1:-1;;;12207:980:1:o
Swarm Source
ipfs://42d11e06cba2b17f0d6ef1c45874147f34a72be5b5075f90a41fd0364d424954
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 33 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.