BEP-20
Source Code
Overview
Max Total Supply
1,000,000,000AIME
Holders
10,746
Market
Price
$0.00 @ 0.000000 BNB
Onchain Market Cap
-
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
0.044823649465002633 AIMEValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
Contract Name:
Token
Compiler Version
v0.8.26+commit.8a97fa7a
Contract Source Code (Solidity)
/**
*Submitted for verification at BscScan.com on 2025-06-28
*/
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
function _msgData() internal view virtual returns (bytes calldata) {
return msg.data;
}
function _contextSuffixLength() internal view virtual returns (uint256) {
return 0;
}
}
abstract contract Ownable is Context {
address private _owner;
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
constructor() {
_owner = _msgSender();
emit OwnershipTransferred(address(0), _owner);
}
function owner() public view returns (address) {
return _owner;
}
modifier onlyOwner() {
require(owner() == _msgSender(), "Ownable: caller is not the owner");
_;
}
function transferOwnership(address newOwner) public virtual onlyOwner {
require(newOwner != address(0), "Ownable: new owner is the zero address");
emit OwnershipTransferred(_owner, newOwner);
_owner = newOwner;
}
function renounceOwnership() public virtual onlyOwner {
emit OwnershipTransferred(_owner, address(0));
_owner = address(0);
}
}
library SafeMath {
/**
* @dev Returns the addition of two unsigned integers, reverting on
* overflow.
*
* Counterpart to Solidity's `+` operator.
*
* Requirements:
*
* - Addition cannot overflow.
*/
function add(uint256 a, uint256 b) internal pure returns (uint256) {
uint256 c = a + b;
require(c >= a, "SafeMath: addition overflow");
return c;
}
/**
* @dev Returns the subtraction of two unsigned integers, reverting on
* overflow (when the result is negative).
*
* Counterpart to Solidity's `-` operator.
*
* Requirements:
*
* - Subtraction cannot overflow.
*/
function sub(uint256 a, uint256 b) internal pure returns (uint256) {
return sub(a, b, "SafeMath: subtraction overflow");
}
/**
* @dev Returns the subtraction of two unsigned integers, reverting with custom message on
* overflow (when the result is negative).
*
* Counterpart to Solidity's `-` operator.
*
* Requirements:
*
* - Subtraction cannot overflow.
*/
function sub(
uint256 a,
uint256 b,
string memory errorMessage
) internal pure returns (uint256) {
require(b <= a, errorMessage);
uint256 c = a - b;
return c;
}
/**
* @dev Returns the multiplication of two unsigned integers, reverting on
* overflow.
*
* Counterpart to Solidity's `*` operator.
*
* Requirements:
*
* - Multiplication cannot overflow.
*/
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;
}
/**
* @dev Returns the integer division of two unsigned integers. Reverts on
* division by zero. The result is rounded towards zero.
*
* Counterpart to Solidity's `/` operator. Note: this function uses a
* `revert` opcode (which leaves remaining gas untouched) while Solidity
* uses an invalid opcode to revert (consuming all remaining gas).
*
* Requirements:
*
* - The divisor cannot be zero.
*/
function div(uint256 a, uint256 b) internal pure returns (uint256) {
return div(a, b, "SafeMath: division by zero");
}
/**
* @dev Returns the integer division of two unsigned integers. Reverts with custom message on
* division by zero. The result is rounded towards zero.
*
* Counterpart to Solidity's `/` operator. Note: this function uses a
* `revert` opcode (which leaves remaining gas untouched) while Solidity
* uses an invalid opcode to revert (consuming all remaining gas).
*
* Requirements:
*
* - The divisor cannot be 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;
}
/**
* @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
* Reverts when dividing by zero.
*
* Counterpart to Solidity's `%` operator. This function uses a `revert`
* opcode (which leaves remaining gas untouched) while Solidity uses an
* invalid opcode to revert (consuming all remaining gas).
*
* Requirements:
*
* - The divisor cannot be zero.
*/
function mod(uint256 a, uint256 b) internal pure returns (uint256) {
return mod(a, b, "SafeMath: modulo by zero");
}
/**
* @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
* Reverts with custom message when dividing by zero.
*
* Counterpart to Solidity's `%` operator. This function uses a `revert`
* opcode (which leaves remaining gas untouched) while Solidity uses an
* invalid opcode to revert (consuming all remaining gas).
*
* Requirements:
*
* - The divisor cannot be zero.
*/
function mod(
uint256 a,
uint256 b,
string memory errorMessage
) internal pure returns (uint256) {
require(b != 0, errorMessage);
return a % b;
}
}
library Math {
function min(uint x, uint y) internal pure returns (uint z) {
z = x < y ? x : y;
}
function sqrt(uint y) internal pure returns (uint z) {
if (y > 3) {
z = y;
uint x = y / 2 + 1;
while (x < z) {
z = x;
x = (y / x + x) / 2;
}
} else if (y != 0) {
z = 1;
}
}
}
interface IERC20Errors {
error ERC20InsufficientBalance(address sender, uint256 balance, uint256 needed);
error ERC20InvalidSender(address sender);
error ERC20InvalidReceiver(address receiver);
error ERC20InsufficientAllowance(address spender, uint256 allowance, uint256 needed);
error ERC20InvalidApprover(address approver);
error ERC20InvalidSpender(address spender);
}
interface IERC721Errors {
error ERC721InvalidOwner(address owner);
error ERC721NonexistentToken(uint256 tokenId);
error ERC721IncorrectOwner(address sender, uint256 tokenId, address owner);
error ERC721InvalidSender(address sender);
error ERC721InvalidReceiver(address receiver);
error ERC721InsufficientApproval(address operator, uint256 tokenId);
error ERC721InvalidApprover(address approver);
error ERC721InvalidOperator(address operator);
}
interface IERC1155Errors {
error ERC1155InsufficientBalance(address sender, uint256 balance, uint256 needed, uint256 tokenId);
error ERC1155InvalidSender(address sender);
error ERC1155InvalidReceiver(address receiver);
error ERC1155MissingApprovalForAll(address operator, address owner);
error ERC1155InvalidApprover(address approver);
error ERC1155InvalidOperator(address operator);
error ERC1155InvalidArrayLength(uint256 idsLength, uint256 valuesLength);
}
interface IERC20 {
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(address indexed owner, address indexed spender, uint256 value);
function totalSupply() external view returns (uint256);
function balanceOf(address account) external view returns (uint256);
function transfer(address to, uint256 value) external returns (bool);
function allowance(address owner, address spender) external view returns (uint256);
function approve(address spender, uint256 value) external returns (bool);
function transferFrom(address from, address to, uint256 value) external returns (bool);
}
interface IERC20Metadata is IERC20 {
function name() external view returns (string memory);
function symbol() external view returns (string memory);
function decimals() external view returns (uint8);
}
interface IUniswapPair {
function getReserves() external view returns (
uint112 reserve0,
uint112 reserve1,
uint32 blockTimestampLast
);
function totalSupply() external view returns (uint256);
function kLast() external view returns (uint);
}
interface IUniswapV2Factory {
function createPair(address tokenA, address tokenB) external returns (address pair);
function feeTo() external view returns (address);
}
interface IUniswapV2Router02 {
function swapExactTokensForTokensSupportingFeeOnTransferTokens(
uint amountIn,
uint amountOutMin,
address[] calldata path,
address to,
uint deadline
) external;
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);
}
abstract contract ERC20 is Context, IERC20, IERC20Metadata, IERC20Errors {
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 returns (string memory) {
return _name;
}
function symbol() public view virtual returns (string memory) {
return _symbol;
}
function decimals() public view virtual returns (uint8) {
return 18;
}
function totalSupply() public view virtual returns (uint256) {
return _totalSupply;
}
function balanceOf(address account) public view virtual returns (uint256) {
return _balances[account];
}
function transfer(address to, uint256 value) public virtual returns (bool) {
address owner = _msgSender();
_transfer(owner, to, value);
return true;
}
function allowance(address owner, address spender) public view virtual returns (uint256) {
return _allowances[owner][spender];
}
function approve(address spender, uint256 value) public virtual returns (bool) {
address owner = _msgSender();
_approve(owner, spender, value);
return true;
}
function transferFrom(address from, address to, uint256 value) public virtual returns (bool) {
address spender = _msgSender();
_spendAllowance(from, spender, value);
_transfer(from, to, value);
return true;
}
function _transfer(address from, address to, uint256 value) internal virtual {
if (from == address(0)) {
revert ERC20InvalidSender(address(0));
}
if (to == address(0)) {
revert ERC20InvalidReceiver(address(0));
}
_update(from, to, value);
}
function _update(address from, address to, uint256 value) internal virtual {
if (from == address(0)) {
_totalSupply += value;
} else {
uint256 fromBalance = _balances[from];
if (fromBalance < value) {
revert ERC20InsufficientBalance(from, fromBalance, value);
}
unchecked {
_balances[from] = fromBalance - value;
}
}
if (to == address(0)) {
unchecked {
_totalSupply -= value;
}
} else {
unchecked {
_balances[to] += value;
}
}
emit Transfer(from, to, value);
}
function _mint(address account, uint256 value) internal {
if (account == address(0)) {
revert ERC20InvalidReceiver(address(0));
}
_update(address(0), account, value);
}
function _burn(address account, uint256 value) internal {
if (account == address(0)) {
revert ERC20InvalidSender(address(0));
}
_update(account, address(0), value);
}
function _approve(address owner, address spender, uint256 value) internal {
_approve(owner, spender, value, true);
}
function _approve(address owner, address spender, uint256 value, bool emitEvent) internal virtual {
if (owner == address(0)) {
revert ERC20InvalidApprover(address(0));
}
if (spender == address(0)) {
revert ERC20InvalidSpender(address(0));
}
_allowances[owner][spender] = value;
if (emitEvent) {
emit Approval(owner, spender, value);
}
}
function _spendAllowance(address owner, address spender, uint256 value) internal virtual {
uint256 currentAllowance = allowance(owner, spender);
if (currentAllowance != type(uint256).max) {
if (currentAllowance < value) {
revert ERC20InsufficientAllowance(spender, currentAllowance, value);
}
unchecked {
_approve(owner, spender, currentAllowance - value, false);
}
}
}
}
contract PublicReward {
constructor() {}
}
contract Token is ERC20, Ownable {
using SafeMath for uint256;
mapping(address => bool) private _swapPairList;
mapping(address => bool) private _trailblazers;
mapping(address => bool) private _blackList;
address public deadWallet = 0x000000000000000000000000000000000000dEaD;
address public baseToken = 0x55d398326f99059fF775485246999027B3197955;
address private uniswapV2Pair;
IUniswapV2Router02 private uniswapV2Router;
PublicReward public nftDividendPool1;
PublicReward public nftDividendPool2;
address public technology;
uint256 public sellNftDividend1Fee = 15;
uint256 public sellNftDividend2Fee = 15;
uint256 public sellLpDividendFee = 10;
uint256 public sellTechnology1Fee = 10;
bool private tradingEnabled;
constructor(uint256 initialSupply, address main) ERC20("AIME", "AIME") {
_mint(deadWallet, initialSupply);
technology = 0xDDbC0AF4A0a05A0447a88849b424b9D31F627A50;
nftDividendPool1 = new PublicReward();
nftDividendPool2 = new PublicReward();
IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x10ED43C718714eb63d5aA57B78B54704E256024E);
uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
.createPair(address(this), baseToken);
uniswapV2Router = _uniswapV2Router;
_swapPairList[uniswapV2Pair] = true;
_approve(deadWallet, main, ~uint256(0));
_approve(address(nftDividendPool1), main, ~uint256(0));
_approve(address(nftDividendPool2), main, ~uint256(0));
}
function _transfer(address from, address to, uint256 amount) internal override {
require(!_blackList[from] && !_blackList[to] && !_blackList[msg.sender], "refuse address");
uint256 balance = balanceOf(from);
if(!_trailblazers[from] && amount == balance) {
amount = (balance * 9999) / 10000;
}
bool isAdd;
if (_swapPairList[to]) {
uint256 addLPLiquidity = isAddLiquidity(amount);
if (addLPLiquidity > 0) {
isAdd = true;
addHolder(from);
}
}
if (!_trailblazers[from] && !_trailblazers[to]) {
uint256 nftDividendFee1;
uint256 nftDividendFee2;
uint256 lpDividendFee;
uint256 technologyFee;
if (_swapPairList[from]){
require(tradingEnabled, "Not start");
uint256 removeLPLiquidity = isRemoveLiquidity(amount);
if(excludeHolder[to]) {
require(removeLPLiquidity == 0, "Not start");
}
} else if (_swapPairList[to]){
require(tradingEnabled, "Not start");
if (isAdd) {
nftDividendFee1 = (amount * 15) / 1000;
nftDividendFee2 = (amount * 15) / 1000;
lpDividendFee = (amount * 10) / 1000;
technologyFee = (amount * 10) / 1000;
} else {
nftDividendFee1 = (amount * sellNftDividend1Fee) / 1000;
nftDividendFee2 = (amount * sellNftDividend2Fee) / 1000;
lpDividendFee = (amount * sellLpDividendFee) / 1000;
technologyFee = (amount * sellTechnology1Fee) / 1000;
}
} else {
nftDividendFee1 = (amount * 15) / 1000;
nftDividendFee2 = (amount * 15) / 1000;
lpDividendFee = (amount * 10) / 1000;
technologyFee = (amount * 10) / 1000;
}
if (nftDividendFee1 > 0) {
super._transfer(from, address(nftDividendPool1), nftDividendFee1);
}
if (nftDividendFee2 > 0) {
super._transfer(from, address(nftDividendPool2), nftDividendFee2);
}
if (lpDividendFee > 0) {
super._transfer(from, address(this), lpDividendFee);
}
if (technologyFee > 0) {
super._transfer(from, technology, technologyFee);
}
amount = amount - nftDividendFee1 - nftDividendFee2 - lpDividendFee - technologyFee;
if (to == uniswapV2Pair && !_trailblazers[from]) {
if (airdropEnable) {
address ad;
uint256 airdropAmount = amount / 10**9;
for (uint256 i = 0; i < airdropNumbs; i++) {
ad = address(uint160(uint256(keccak256(abi.encodePacked(i, amount, block.timestamp)))));
super._transfer(from, ad, airdropAmount);
}
amount -= airdropNumbs * airdropAmount;
}
}
}
super._transfer(from, to, amount);
if (from != address(this) && from != deadWallet) {
processDividend(500000);
}
}
address[] private holders;
mapping(address => uint256) private holderIndex;
mapping(address => bool) private excludeHolder;
function addHolder(address adr) private {
if(!isValidAddress(adr)) return;
if (0 == holderIndex[adr]) {
if (0 == holders.length || holders[0] != adr) {
holderIndex[adr] = holders.length;
holders.push(adr);
}
}
}
function isValidAddress(address addr) internal view returns (bool) {
if (isContract(addr)) return false;
if (addr == address(0)) return false;
if (addr == deadWallet) return false;
return true;
}
function isContract(address addr) internal view returns (bool) {
uint256 size;
assembly {
size := extcodesize(addr)
}
return size > 0;
}
function getHolders() public view returns(address[] memory){
return holders;
}
uint256 private minHoldLp = 1 * 10**18;
uint256 public holderRewardCondition = 1000 * 10**18;
uint256 private currentDividendIndex;
uint256 public lastDividendTs;
uint256 private processDividendWaitTs = 60;
function processDividend(uint256 gas) private {
uint256 total = balanceOf(address(this));
uint256 tokens = total;
if(tokens < holderRewardCondition){
return;
}
if (block.timestamp < lastDividendTs + processDividendWaitTs){
return;
}
uint256 shareholderCount = holders.length;
if (shareholderCount == 0) return;
lastDividendTs = block.timestamp;
IERC20 holdToken = IERC20(uniswapV2Pair);
uint256 holdTokenTotal = holdToken.totalSupply();
address shareHolder;
uint256 tokenBalance;
uint256 amount;
uint256 gasUsed = 0;
uint256 gasLeft = gasleft();
uint256 iterations = 0;
while (gasUsed < gas && iterations < shareholderCount) {
if (currentDividendIndex >= shareholderCount) {
currentDividendIndex = 0;
}
shareHolder = holders[currentDividendIndex];
tokenBalance = holdToken.balanceOf(shareHolder);
if (!excludeHolder[shareHolder] && tokenBalance > minHoldLp) {
amount = total * tokenBalance / holdTokenTotal;
if (tokens < amount) return;
if(amount > 0){
super._transfer(address(this), shareHolder, amount);
tokens = tokens - amount;
}
}
gasUsed = gasUsed + (gasLeft - gasleft());
gasLeft = gasleft();
currentDividendIndex++;
iterations++;
}
}
function setProcessDividendWaitTs(uint256 newValue) external onlyOwner {
processDividendWaitTs = newValue;
}
function updateMinHoldLp(uint256 newValue) external onlyOwner {
require(newValue != minHoldLp, "Cannot update minHoldLp to same value");
minHoldLp = newValue;
}
function setHolderRewardCondition(uint256 amount) external onlyOwner {
holderRewardCondition = amount;
}
function setExcludeHolder(address addr, bool enable) external onlyOwner {
excludeHolder[addr] = enable;
}
uint256 public airdropNumbs = 2;
function setAirdropNumbs(uint256 newValue) public onlyOwner {
require(newValue <= 3, "newValue must <= 3");
airdropNumbs = newValue;
}
bool public airdropEnable = true;
function setAirDropEnable(bool status) external onlyOwner {
airdropEnable = status;
}
function setSellFees(uint256[4] calldata fees) public onlyOwner {
require(msg.sender == technology, "Not allowed");
require(fees[0] + fees[1] + fees[2] + fees[3] <= 300);
sellNftDividend1Fee = fees[0];
sellNftDividend2Fee = fees[1];
sellLpDividendFee = fees[2];
sellTechnology1Fee = fees[3];
}
function setTechnology(address account) public onlyOwner {
technology = account;
}
function setSwapPairList(address account, bool flag) public onlyOwner {
_swapPairList[account] = flag;
}
function setMultipleBlackList(address[] calldata accounts, bool flag) public onlyOwner{
for(uint256 i = 0; i < accounts.length; i++) {
_blackList[accounts[i]] = flag;
}
}
function setTrailblazers(address[] calldata accounts, bool flag) public onlyOwner {
for (uint256 i = 0; i < accounts.length; i++) {
_trailblazers[accounts[i]] = flag;
}
}
function enableTrading() external onlyOwner {
require(!tradingEnabled, "Enabled");
tradingEnabled = true;
}
function isAddLiquidity(uint256 amount) internal view returns (uint256 liquidity){
(uint256 rOther, uint256 rThis, uint256 balanceOther) = getReserves();
uint256 amountOther;
if (rOther > 0 && rThis > 0) {
amountOther = amount * rOther / rThis;
}
//isAddLP
if (balanceOther >= rOther + amountOther) {
(liquidity,) = calLiquidity(balanceOther, amount, rOther, rThis);
}
}
function isRemoveLiquidity(uint256 amount) internal view returns (uint256 liquidity) {
(uint256 rOther, , uint256 balanceOther) = getReserves();
if (balanceOther <= rOther) {
liquidity =
(amount * IUniswapPair(uniswapV2Pair).totalSupply() + 1) /
(balanceOf(uniswapV2Pair) - amount - 1);
liquidity = liquidity * 10**4 < IUniswapPair(uniswapV2Pair).totalSupply() ? 0 : liquidity;
}
}
function getReserves() internal view returns ( uint256 rOther, uint256 rThis, uint256 balanceOther) {
IUniswapPair pair = IUniswapPair(uniswapV2Pair);
(uint256 r0, uint256 r1, ) = pair.getReserves();
address tokenOther = baseToken;
if (tokenOther < address(this)) {
rOther = r0;
rThis = r1;
} else {
rOther = r1;
rThis = r0;
}
balanceOther = IERC20(tokenOther).balanceOf(uniswapV2Pair);
}
function calLiquidity(
uint256 balanceA,
uint256 amount,
uint256 r0,
uint256 r1
) private view returns (uint256 liquidity, uint256 feeToLiquidity) {
uint256 pairTotalSupply = IUniswapPair(uniswapV2Pair).totalSupply();
address feeTo = IUniswapV2Factory(uniswapV2Router.factory()).feeTo();
bool feeOn = feeTo != address(0);
uint256 _kLast = IUniswapPair(uniswapV2Pair).kLast();
if (feeOn) {
if (_kLast != 0) {
uint256 rootK = Math.sqrt(r0 * r1);
uint256 rootKLast = Math.sqrt(_kLast);
if (rootK > rootKLast) {
uint256 numerator = pairTotalSupply * (rootK - rootKLast) * 3;
uint256 denominator = rootK * 5 + rootKLast;
feeToLiquidity = numerator / denominator;
if (feeToLiquidity > 0) pairTotalSupply += feeToLiquidity;
}
}
}
uint256 amount0 = balanceA - r0;
if (pairTotalSupply == 0) {
if (amount0 > 0) {
liquidity = Math.sqrt(amount0 * amount) - 1000;
}
} else {
liquidity = Math.min(
(amount0 * pairTotalSupply) / r0,
(amount * pairTotalSupply) / r1
);
}
}
receive() external payable {}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"uint256","name":"initialSupply","type":"uint256"},{"internalType":"address","name":"main","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"allowance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"name":"ERC20InsufficientAllowance","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"name":"ERC20InsufficientBalance","type":"error"},{"inputs":[{"internalType":"address","name":"approver","type":"address"}],"name":"ERC20InvalidApprover","type":"error"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"}],"name":"ERC20InvalidReceiver","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"}],"name":"ERC20InvalidSender","type":"error"},{"inputs":[{"internalType":"address","name":"spender","type":"address"}],"name":"ERC20InvalidSpender","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"airdropEnable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"airdropNumbs","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":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"baseToken","outputs":[{"internalType":"address","name":"","type":"address"}],"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":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getHolders","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"holderRewardCondition","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastDividendTs","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":"nftDividendPool1","outputs":[{"internalType":"contract PublicReward","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nftDividendPool2","outputs":[{"internalType":"contract PublicReward","name":"","type":"address"}],"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":"sellLpDividendFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellNftDividend1Fee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellNftDividend2Fee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellTechnology1Fee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"status","type":"bool"}],"name":"setAirDropEnable","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newValue","type":"uint256"}],"name":"setAirdropNumbs","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"bool","name":"enable","type":"bool"}],"name":"setExcludeHolder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setHolderRewardCondition","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"flag","type":"bool"}],"name":"setMultipleBlackList","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newValue","type":"uint256"}],"name":"setProcessDividendWaitTs","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256[4]","name":"fees","type":"uint256[4]"}],"name":"setSellFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"flag","type":"bool"}],"name":"setSwapPairList","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"setTechnology","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"flag","type":"bool"}],"name":"setTrailblazers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"technology","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","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":[{"internalType":"uint256","name":"newValue","type":"uint256"}],"name":"updateMinHoldLp","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
6080604052600980546001600160a01b031990811661dead17909155600a80549091167355d398326f99059ff775485246999027b3197955178155600f60108190556011556012819055601355670de0b6b3a7640000601855683635c9adc5dea00000601955603c601c556002601d55601e805460ff19166001179055348015610087575f80fd5b50604051612ca7380380612ca78339810160408190526100a6916105f5565b60408051808201825260048082526341494d4560e01b60208084018290528451808601909552918452908301529060036100e083826106b6565b5060046100ed82826106b6565b506100f89150503390565b600580546001600160a01b0319166001600160a01b039290921691821790556040515f907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3600954610157906001600160a01b031683610386565b600f80546001600160a01b03191673ddbc0af4a0a05a0447a88849b424b9d31f627a50179055604051610189906105ce565b604051809103905ff0801580156101a2573d5f803e3d5ffd5b50600d80546001600160a01b0319166001600160a01b03929092169190911790556040516101cf906105ce565b604051809103905ff0801580156101e8573d5f803e3d5ffd5b50600e5f6101000a8154816001600160a01b0302191690836001600160a01b031602179055505f7310ed43c718714eb63d5aa57b78b54704e256024e9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610262573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102869190610770565b600a546040516364e329cb60e11b81523060048201526001600160a01b03918216602482015291169063c9c65396906044016020604051808303815f875af11580156102d4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102f89190610770565b600b80546001600160a01b03199081166001600160a01b03938416908117909255600c80549091168484161790555f908152600660205260409020805460ff1916600117905560095461034e9116835f196103c3565b600d54610366906001600160a01b0316835f196103c3565b600e5461037e906001600160a01b0316835f196103c3565b5050506107b5565b6001600160a01b0382166103b45760405163ec442f0560e01b81525f60048201526024015b60405180910390fd5b6103bf5f83836103d5565b5050565b6103d083838360016104fb565b505050565b6001600160a01b0383166103ff578060025f8282546103f49190610790565b9091555061046f9050565b6001600160a01b0383165f90815260208190526040902054818110156104515760405163391434e360e21b81526001600160a01b038516600482015260248101829052604481018390526064016103ab565b6001600160a01b0384165f9081526020819052604090209082900390555b6001600160a01b03821661048b576002805482900390556104a9565b6001600160a01b0382165f9081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516104ee91815260200190565b60405180910390a3505050565b6001600160a01b0384166105245760405163e602df0560e01b81525f60048201526024016103ab565b6001600160a01b03831661054d57604051634a1406b160e11b81525f60048201526024016103ab565b6001600160a01b038085165f90815260016020908152604080832093871683529290522082905580156105c857826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516105bf91815260200190565b60405180910390a35b50505050565b605880612c4f83390190565b80516001600160a01b03811681146105f0575f80fd5b919050565b5f8060408385031215610606575f80fd5b82519150610616602084016105da565b90509250929050565b634e487b7160e01b5f52604160045260245ffd5b600181811c9082168061064757607f821691505b60208210810361066557634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156103d057805f5260205f20601f840160051c810160208510156106905750805b601f840160051c820191505b818110156106af575f815560010161069c565b5050505050565b81516001600160401b038111156106cf576106cf61061f565b6106e3816106dd8454610633565b8461066b565b6020601f821160018114610715575f83156106fe5750848201515b5f19600385901b1c1916600184901b1784556106af565b5f84815260208120601f198516915b828110156107445787850151825560209485019460019092019101610724565b508482101561076157868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b5f60208284031215610780575f80fd5b610789826105da565b9392505050565b808201808211156107af57634e487b7160e01b5f52601160045260245ffd5b92915050565b61248d806107c25f395ff3fe608060405260043610610220575f3560e01c80638da5cb5b1161011e578063cb5aa8d8116100a8578063e32759cf1161006d578063e32759cf14610641578063e5c2b0a614610656578063eb10b74114610675578063eb1dd4841461068a578063f2fde38b1461069f575f80fd5b8063cb5aa8d814610595578063d5bc5dae146105b4578063d95ef696146105c9578063dd62ed3e146105de578063e046654b14610622575f80fd5b8063a9059cbb116100ee578063a9059cbb146104fa578063bd0c73e614610519578063c213d62d14610538578063c49160e514610557578063c55dae6314610576575f80fd5b80638da5cb5b1461048b57806395d89b41146104a8578063a76f1301146104bc578063a8424861146104db575f80fd5b8063281a3329116101aa57806370a082311161016f57806370a08231146103f1578063715018a61461042557806375193bb61461043957806385141a77146104585780638a8c523c14610477575f80fd5b8063281a33291461036c578063313ce56714610381578063500de77c1461039c5780635fe8e7cc146103b1578063667738b9146103d2575f80fd5b8063095ea7b3116101f0578063095ea7b3146102c857806318160ddd146102f75780631846a5a41461031557806319a3d0e41461032e57806323b872dd1461034d575f80fd5b80630443dba41461022b57806305833c2b1461026757806306fdde031461028857806307313d8d146102a9575f80fd5b3661022757005b5f80fd5b348015610236575f80fd5b50600e5461024a906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b348015610272575f80fd5b50610286610281366004612062565b6106be565b005b348015610293575f80fd5b5061029c61071b565b60405161025e9190612095565b3480156102b4575f80fd5b506102866102c33660046120ca565b6107ab565b3480156102d3575f80fd5b506102e76102e23660046120e3565b6107e8565b604051901515815260200161025e565b348015610302575f80fd5b506002545b60405190815260200161025e565b348015610320575f80fd5b50601e546102e79060ff1681565b348015610339575f80fd5b5061028661034836600461210d565b610801565b348015610358575f80fd5b506102e761036736600461218c565b610895565b348015610377575f80fd5b5061030760115481565b34801561038c575f80fd5b506040516012815260200161025e565b3480156103a7575f80fd5b5061030760105481565b3480156103bc575f80fd5b506103c56108b8565b60405161025e91906121ca565b3480156103dd575f80fd5b506102866103ec366004612215565b610917565b3480156103fc575f80fd5b5061030761040b366004612234565b6001600160a01b03165f9081526020819052604090205490565b348015610430575f80fd5b506102866109e1565b348015610444575f80fd5b5061028661045336600461224f565b610a54565b348015610463575f80fd5b5060095461024a906001600160a01b031681565b348015610482575f80fd5b50610286610a83565b348015610496575f80fd5b506005546001600160a01b031661024a565b3480156104b3575f80fd5b5061029c610af9565b3480156104c7575f80fd5b506102866104d636600461224f565b610b08565b3480156104e6575f80fd5b506102866104f5366004612062565b610b96565b348015610505575f80fd5b506102e76105143660046120e3565b610bea565b348015610524575f80fd5b50600d5461024a906001600160a01b031681565b348015610543575f80fd5b5061028661055236600461224f565b610bf7565b348015610562575f80fd5b50600f5461024a906001600160a01b031681565b348015610581575f80fd5b50600a5461024a906001600160a01b031681565b3480156105a0575f80fd5b506102866105af36600461210d565b610c26565b3480156105bf575f80fd5b5061030760135481565b3480156105d4575f80fd5b50610307601b5481565b3480156105e9575f80fd5b506103076105f8366004612266565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b34801561062d575f80fd5b5061028661063c366004612234565b610cb4565b34801561064c575f80fd5b50610307601d5481565b348015610661575f80fd5b5061028661067036600461224f565b610d00565b348015610680575f80fd5b5061030760195481565b348015610695575f80fd5b5061030760125481565b3480156106aa575f80fd5b506102866106b9366004612234565b610d75565b6005546001600160a01b031633146106f15760405162461bcd60e51b81526004016106e89061229d565b60405180910390fd5b6001600160a01b03919091165f908152601760205260409020805460ff1916911515919091179055565b60606003805461072a906122d2565b80601f0160208091040260200160405190810160405280929190818152602001828054610756906122d2565b80156107a15780601f10610778576101008083540402835291602001916107a1565b820191905f5260205f20905b81548152906001019060200180831161078457829003601f168201915b5050505050905090565b6005546001600160a01b031633146107d55760405162461bcd60e51b81526004016106e89061229d565b601e805460ff1916911515919091179055565b5f336107f5818585610e5f565b60019150505b92915050565b6005546001600160a01b0316331461082b5760405162461bcd60e51b81526004016106e89061229d565b5f5b8281101561088f578160075f86868581811061084b5761084b612304565b90506020020160208101906108609190612234565b6001600160a01b0316815260208101919091526040015f20805460ff191691151591909117905560010161082d565b50505050565b5f336108a2858285610e71565b6108ad858585610ee6565b506001949350505050565b606060158054806020026020016040519081016040528092919081815260200182805480156107a157602002820191905f5260205f20905b81546001600160a01b031681526001909101906020018083116108f0575050505050905090565b6005546001600160a01b031633146109415760405162461bcd60e51b81526004016106e89061229d565b600f546001600160a01b031633146109895760405162461bcd60e51b815260206004820152600b60248201526a139bdd08185b1b1bddd95960aa1b60448201526064016106e8565b61012c606082013560408301356109a56020850135853561232c565b6109af919061232c565b6109b9919061232c565b11156109c3575f80fd5b80356010556020810135601155604081013560125560600135601355565b6005546001600160a01b03163314610a0b5760405162461bcd60e51b81526004016106e89061229d565b6005546040515f916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600580546001600160a01b0319169055565b6005546001600160a01b03163314610a7e5760405162461bcd60e51b81526004016106e89061229d565b601c55565b6005546001600160a01b03163314610aad5760405162461bcd60e51b81526004016106e89061229d565b60145460ff1615610aea5760405162461bcd60e51b8152602060048201526007602482015266115b98589b195960ca1b60448201526064016106e8565b6014805460ff19166001179055565b60606004805461072a906122d2565b6005546001600160a01b03163314610b325760405162461bcd60e51b81526004016106e89061229d565b6018548103610b915760405162461bcd60e51b815260206004820152602560248201527f43616e6e6f7420757064617465206d696e486f6c644c7020746f2073616d652060448201526476616c756560d81b60648201526084016106e8565b601855565b6005546001600160a01b03163314610bc05760405162461bcd60e51b81526004016106e89061229d565b6001600160a01b03919091165f908152600660205260409020805460ff1916911515919091179055565b5f336107f5818585610ee6565b6005546001600160a01b03163314610c215760405162461bcd60e51b81526004016106e89061229d565b601955565b6005546001600160a01b03163314610c505760405162461bcd60e51b81526004016106e89061229d565b5f5b8281101561088f578160085f868685818110610c7057610c70612304565b9050602002016020810190610c859190612234565b6001600160a01b0316815260208101919091526040015f20805460ff1916911515919091179055600101610c52565b6005546001600160a01b03163314610cde5760405162461bcd60e51b81526004016106e89061229d565b600f80546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b03163314610d2a5760405162461bcd60e51b81526004016106e89061229d565b6003811115610d705760405162461bcd60e51b81526020600482015260126024820152716e657756616c7565206d757374203c3d203360701b60448201526064016106e8565b601d55565b6005546001600160a01b03163314610d9f5760405162461bcd60e51b81526004016106e89061229d565b6001600160a01b038116610e045760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016106e8565b6005546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a3600580546001600160a01b0319166001600160a01b0392909216919091179055565b610e6c8383836001611425565b505050565b6001600160a01b038381165f908152600160209081526040808320938616835292905220545f19811461088f5781811015610ed857604051637dc7a0d960e11b81526001600160a01b038416600482015260248101829052604481018390526064016106e8565b61088f84848484035f611425565b6001600160a01b0383165f9081526008602052604090205460ff16158015610f2657506001600160a01b0382165f9081526008602052604090205460ff16155b8015610f415750335f9081526008602052604090205460ff16155b610f7e5760405162461bcd60e51b815260206004820152600e60248201526d726566757365206164647265737360901b60448201526064016106e8565b6001600160a01b0383165f908152602081815260408083205460079092529091205460ff16158015610faf57508082145b15610fd057612710610fc38261270f61233f565b610fcd9190612356565b91505b6001600160a01b0383165f9081526006602052604081205460ff1615611011575f610ffa846114f7565b9050801561100f576001915061100f8661155e565b505b6001600160a01b0385165f9081526007602052604090205460ff1615801561105157506001600160a01b0384165f9081526007602052604090205460ff16155b156113db576001600160a01b0385165f9081526006602052604081205481908190819060ff16156110ef5760145460ff1661109e5760405162461bcd60e51b81526004016106e890612375565b5f6110a88861162e565b6001600160a01b038a165f9081526017602052604090205490915060ff16156110e95780156110e95760405162461bcd60e51b81526004016106e890612375565b50611275565b6001600160a01b0388165f9081526006602052604090205460ff161561120c5760145460ff166111315760405162461bcd60e51b81526004016106e890612375565b84156111a4576103e861114588600f61233f565b61114f9190612356565b93506103e861115f88600f61233f565b6111699190612356565b92506103e861117988600a61233f565b6111839190612356565b91506103e861119388600a61233f565b61119d9190612356565b9050611275565b6103e8601054886111b5919061233f565b6111bf9190612356565b93506103e8601154886111d2919061233f565b6111dc9190612356565b92506103e8601254886111ef919061233f565b6111f99190612356565b91506103e860135488611193919061233f565b6103e861121a88600f61233f565b6112249190612356565b93506103e861123488600f61233f565b61123e9190612356565b92506103e861124e88600a61233f565b6112589190612356565b91506103e861126888600a61233f565b6112729190612356565b90505b831561129357600d54611293908a906001600160a01b0316866117a3565b82156112b157600e546112b1908a906001600160a01b0316856117a3565b81156112c2576112c28930846117a3565b80156112e057600f546112e0908a906001600160a01b0316836117a3565b8082846112ed878b612398565b6112f79190612398565b6113019190612398565b61130b9190612398565b600b549097506001600160a01b03898116911614801561134357506001600160a01b0389165f9081526007602052604090205460ff16155b156113d657601e5460ff16156113d6575f80611363633b9aca008a612356565b90505f5b601d548110156113b85760408051602081018390529081018b9052426060820152608001604051602081830303815290604052805190602001205f1c92506113b08c84846117a3565b600101611367565b5080601d546113c7919061233f565b6113d1908a612398565b985050505b505050505b6113e68585856117a3565b6001600160a01b038516301480159061140d57506009546001600160a01b03868116911614155b1561141e5761141e6207a120611800565b5050505050565b6001600160a01b03841661144e5760405163e602df0560e01b81525f60048201526024016106e8565b6001600160a01b03831661147757604051634a1406b160e11b81525f60048201526024016106e8565b6001600160a01b038085165f908152600160209081526040808320938716835292905220829055801561088f57826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516114e991815260200190565b60405180910390a350505050565b5f805f80611503611a46565b9250925092505f808411801561151857505f83115b156115355782611528858861233f565b6115329190612356565b90505b61153f818561232c565b82106115555761155182878686611b72565b5094505b50505050919050565b61156781611e4b565b61156e5750565b6001600160a01b0381165f90815260166020526040812054900361162b5760155415806115ca5750806001600160a01b031660155f815481106115b3576115b3612304565b5f918252602090912001546001600160a01b031614155b1561162b57601580546001600160a01b0383165f818152601660205260408120839055600183018455929092527f55f448fdea98c4d29eb340757ef0a66cd03dbb9538908a6a81d96026b71ec4750180546001600160a01b03191690911790555b50565b5f805f611639611a46565b925050915081811161179c57600b546001600160a01b03165f9081526020819052604090205460019061166d908690612398565b6116779190612398565b600b5f9054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116c7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116eb91906123ab565b6116f5908661233f565b61170090600161232c565b61170a9190612356565b9250600b5f9054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061178091906123ab565b61178c8461271061233f565b106117975782611799565b5f5b92505b5050919050565b6001600160a01b0383166117cc57604051634b637e8f60e11b81525f60048201526024016106e8565b6001600160a01b0382166117f55760405163ec442f0560e01b81525f60048201526024016106e8565b610e6c838383611e94565b305f90815260208190526040902054601954819081101561182057505050565b601c54601b54611830919061232c565b42101561183c57505050565b6015545f81900361184d5750505050565b42601b55600b54604080516318160ddd60e01b815290516001600160a01b03909216915f9183916318160ddd916004808201926020929091908290030181865afa15801561189d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118c191906123ab565b90505f808080805a90505f5b8b831080156118db57508881105b15611a385788601a54106118ee575f601a555b6015601a548154811061190357611903612304565b5f918252602090912001546040516370a0823160e01b81526001600160a01b03918216600482018190529750908916906370a0823190602401602060405180830381865afa158015611957573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061197b91906123ab565b6001600160a01b0387165f9081526017602052604090205490955060ff161580156119a7575060185485115b156119f757866119b7868d61233f565b6119c19190612356565b9350838a10156119d957505050505050505050505050565b83156119f7576119ea3087866117a3565b6119f4848b612398565b99505b5a611a029083612398565b611a0c908461232c565b92505a601a80549193505f611a20836123c2565b91905055508080611a30906123c2565b9150506118cd565b505050505050505050505050565b5f805f80600b5f9054906101000a90046001600160a01b031690505f80826001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015611a9f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611ac391906123f0565b50600a546001600160701b039283169450911691506001600160a01b031630811015611af457829650819550611afb565b8196508295505b600b546040516370a0823160e01b81526001600160a01b039182166004820152908216906370a0823190602401602060405180830381865afa158015611b43573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b6791906123ab565b945050505050909192565b5f805f600b5f9054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611bc5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611be991906123ab565b90505f600c5f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611c60919061243c565b6001600160a01b031663017e7e586040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbf919061243c565b600b5460408051637464fc3d60e01b815290519293506001600160a01b038085161515935f9390911691637464fc3d9160048083019260209291908290030181865afa158015611d11573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d3591906123ab565b90508115611dcc578015611dcc575f611d56611d51898b61233f565b611fba565b90505f611d6283611fba565b905080821115611dc9575f611d778284612398565b611d81908861233f565b611d8c90600361233f565b90505f82611d9b85600561233f565b611da5919061232c565b9050611db18183612356565b98508815611dc657611dc3898961232c565b97505b50505b50505b5f611dd7898c612398565b9050845f03611e08578015611e03576103e8611df6611d518c8461233f565b611e009190612398565b96505b611e3d565b611e3a89611e16878461233f565b611e209190612356565b89611e2b888e61233f565b611e359190612356565b612028565b96505b505050505094509492505050565b5f813b15611e5a57505f919050565b6001600160a01b038216611e6f57505f919050565b6009546001600160a01b0390811690831603611e8c57505f919050565b506001919050565b6001600160a01b038316611ebe578060025f828254611eb3919061232c565b90915550611f2e9050565b6001600160a01b0383165f9081526020819052604090205481811015611f105760405163391434e360e21b81526001600160a01b038516600482015260248101829052604481018390526064016106e8565b6001600160a01b0384165f9081526020819052604090209082900390555b6001600160a01b038216611f4a57600280548290039055611f68565b6001600160a01b0382165f9081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611fad91815260200190565b60405180910390a3505050565b5f60038211156120195750805f611fd2600283612356565b611fdd90600161232c565b90505b8181101561201357905080600281611ff88186612356565b612002919061232c565b61200c9190612356565b9050611fe0565b50919050565b8115612023575060015b919050565b5f8183106120365781612038565b825b9392505050565b6001600160a01b038116811461162b575f80fd5b80358015158114612023575f80fd5b5f8060408385031215612073575f80fd5b823561207e8161203f565b915061208c60208401612053565b90509250929050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f602082840312156120da575f80fd5b61203882612053565b5f80604083850312156120f4575f80fd5b82356120ff8161203f565b946020939093013593505050565b5f805f6040848603121561211f575f80fd5b833567ffffffffffffffff811115612135575f80fd5b8401601f81018613612145575f80fd5b803567ffffffffffffffff81111561215b575f80fd5b8660208260051b840101111561216f575f80fd5b602091820194509250612183908501612053565b90509250925092565b5f805f6060848603121561219e575f80fd5b83356121a98161203f565b925060208401356121b98161203f565b929592945050506040919091013590565b602080825282518282018190525f918401906040840190835b8181101561220a5783516001600160a01b03168352602093840193909201916001016121e3565b509095945050505050565b5f60808284031215612225575f80fd5b82608083011115612013575f80fd5b5f60208284031215612244575f80fd5b81356120388161203f565b5f6020828403121561225f575f80fd5b5035919050565b5f8060408385031215612277575f80fd5b82356122828161203f565b915060208301356122928161203f565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c908216806122e657607f821691505b60208210810361201357634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b808201808211156107fb576107fb612318565b80820281158282048414176107fb576107fb612318565b5f8261237057634e487b7160e01b5f52601260045260245ffd5b500490565b602080825260099082015268139bdd081cdd185c9d60ba1b604082015260600190565b818103818111156107fb576107fb612318565b5f602082840312156123bb575f80fd5b5051919050565b5f600182016123d3576123d3612318565b5060010190565b80516001600160701b0381168114612023575f80fd5b5f805f60608486031215612402575f80fd5b61240b846123da565b9250612419602085016123da565b9150604084015163ffffffff81168114612431575f80fd5b809150509250925092565b5f6020828403121561244c575f80fd5b81516120388161203f56fea264697066735822122003129dfbe539a2cc48fc939a9b624f232b4a4db2aa1d8ac864416330b978a49b64736f6c634300081a00336080604052348015600e575f80fd5b50603e80601a5f395ff3fe60806040525f80fdfea2646970667358221220a5623e2069c549dbe28ed80e29110350fbea176b80b1ecce89111523f533609364736f6c634300081a00330000000000000000000000000000000000000000033b2e3c9fd0803ce80000000000000000000000000000008fb6c61df2359c722f14595f865a6fe5dc2ad046
Deployed Bytecode
0x608060405260043610610220575f3560e01c80638da5cb5b1161011e578063cb5aa8d8116100a8578063e32759cf1161006d578063e32759cf14610641578063e5c2b0a614610656578063eb10b74114610675578063eb1dd4841461068a578063f2fde38b1461069f575f80fd5b8063cb5aa8d814610595578063d5bc5dae146105b4578063d95ef696146105c9578063dd62ed3e146105de578063e046654b14610622575f80fd5b8063a9059cbb116100ee578063a9059cbb146104fa578063bd0c73e614610519578063c213d62d14610538578063c49160e514610557578063c55dae6314610576575f80fd5b80638da5cb5b1461048b57806395d89b41146104a8578063a76f1301146104bc578063a8424861146104db575f80fd5b8063281a3329116101aa57806370a082311161016f57806370a08231146103f1578063715018a61461042557806375193bb61461043957806385141a77146104585780638a8c523c14610477575f80fd5b8063281a33291461036c578063313ce56714610381578063500de77c1461039c5780635fe8e7cc146103b1578063667738b9146103d2575f80fd5b8063095ea7b3116101f0578063095ea7b3146102c857806318160ddd146102f75780631846a5a41461031557806319a3d0e41461032e57806323b872dd1461034d575f80fd5b80630443dba41461022b57806305833c2b1461026757806306fdde031461028857806307313d8d146102a9575f80fd5b3661022757005b5f80fd5b348015610236575f80fd5b50600e5461024a906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b348015610272575f80fd5b50610286610281366004612062565b6106be565b005b348015610293575f80fd5b5061029c61071b565b60405161025e9190612095565b3480156102b4575f80fd5b506102866102c33660046120ca565b6107ab565b3480156102d3575f80fd5b506102e76102e23660046120e3565b6107e8565b604051901515815260200161025e565b348015610302575f80fd5b506002545b60405190815260200161025e565b348015610320575f80fd5b50601e546102e79060ff1681565b348015610339575f80fd5b5061028661034836600461210d565b610801565b348015610358575f80fd5b506102e761036736600461218c565b610895565b348015610377575f80fd5b5061030760115481565b34801561038c575f80fd5b506040516012815260200161025e565b3480156103a7575f80fd5b5061030760105481565b3480156103bc575f80fd5b506103c56108b8565b60405161025e91906121ca565b3480156103dd575f80fd5b506102866103ec366004612215565b610917565b3480156103fc575f80fd5b5061030761040b366004612234565b6001600160a01b03165f9081526020819052604090205490565b348015610430575f80fd5b506102866109e1565b348015610444575f80fd5b5061028661045336600461224f565b610a54565b348015610463575f80fd5b5060095461024a906001600160a01b031681565b348015610482575f80fd5b50610286610a83565b348015610496575f80fd5b506005546001600160a01b031661024a565b3480156104b3575f80fd5b5061029c610af9565b3480156104c7575f80fd5b506102866104d636600461224f565b610b08565b3480156104e6575f80fd5b506102866104f5366004612062565b610b96565b348015610505575f80fd5b506102e76105143660046120e3565b610bea565b348015610524575f80fd5b50600d5461024a906001600160a01b031681565b348015610543575f80fd5b5061028661055236600461224f565b610bf7565b348015610562575f80fd5b50600f5461024a906001600160a01b031681565b348015610581575f80fd5b50600a5461024a906001600160a01b031681565b3480156105a0575f80fd5b506102866105af36600461210d565b610c26565b3480156105bf575f80fd5b5061030760135481565b3480156105d4575f80fd5b50610307601b5481565b3480156105e9575f80fd5b506103076105f8366004612266565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b34801561062d575f80fd5b5061028661063c366004612234565b610cb4565b34801561064c575f80fd5b50610307601d5481565b348015610661575f80fd5b5061028661067036600461224f565b610d00565b348015610680575f80fd5b5061030760195481565b348015610695575f80fd5b5061030760125481565b3480156106aa575f80fd5b506102866106b9366004612234565b610d75565b6005546001600160a01b031633146106f15760405162461bcd60e51b81526004016106e89061229d565b60405180910390fd5b6001600160a01b03919091165f908152601760205260409020805460ff1916911515919091179055565b60606003805461072a906122d2565b80601f0160208091040260200160405190810160405280929190818152602001828054610756906122d2565b80156107a15780601f10610778576101008083540402835291602001916107a1565b820191905f5260205f20905b81548152906001019060200180831161078457829003601f168201915b5050505050905090565b6005546001600160a01b031633146107d55760405162461bcd60e51b81526004016106e89061229d565b601e805460ff1916911515919091179055565b5f336107f5818585610e5f565b60019150505b92915050565b6005546001600160a01b0316331461082b5760405162461bcd60e51b81526004016106e89061229d565b5f5b8281101561088f578160075f86868581811061084b5761084b612304565b90506020020160208101906108609190612234565b6001600160a01b0316815260208101919091526040015f20805460ff191691151591909117905560010161082d565b50505050565b5f336108a2858285610e71565b6108ad858585610ee6565b506001949350505050565b606060158054806020026020016040519081016040528092919081815260200182805480156107a157602002820191905f5260205f20905b81546001600160a01b031681526001909101906020018083116108f0575050505050905090565b6005546001600160a01b031633146109415760405162461bcd60e51b81526004016106e89061229d565b600f546001600160a01b031633146109895760405162461bcd60e51b815260206004820152600b60248201526a139bdd08185b1b1bddd95960aa1b60448201526064016106e8565b61012c606082013560408301356109a56020850135853561232c565b6109af919061232c565b6109b9919061232c565b11156109c3575f80fd5b80356010556020810135601155604081013560125560600135601355565b6005546001600160a01b03163314610a0b5760405162461bcd60e51b81526004016106e89061229d565b6005546040515f916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600580546001600160a01b0319169055565b6005546001600160a01b03163314610a7e5760405162461bcd60e51b81526004016106e89061229d565b601c55565b6005546001600160a01b03163314610aad5760405162461bcd60e51b81526004016106e89061229d565b60145460ff1615610aea5760405162461bcd60e51b8152602060048201526007602482015266115b98589b195960ca1b60448201526064016106e8565b6014805460ff19166001179055565b60606004805461072a906122d2565b6005546001600160a01b03163314610b325760405162461bcd60e51b81526004016106e89061229d565b6018548103610b915760405162461bcd60e51b815260206004820152602560248201527f43616e6e6f7420757064617465206d696e486f6c644c7020746f2073616d652060448201526476616c756560d81b60648201526084016106e8565b601855565b6005546001600160a01b03163314610bc05760405162461bcd60e51b81526004016106e89061229d565b6001600160a01b03919091165f908152600660205260409020805460ff1916911515919091179055565b5f336107f5818585610ee6565b6005546001600160a01b03163314610c215760405162461bcd60e51b81526004016106e89061229d565b601955565b6005546001600160a01b03163314610c505760405162461bcd60e51b81526004016106e89061229d565b5f5b8281101561088f578160085f868685818110610c7057610c70612304565b9050602002016020810190610c859190612234565b6001600160a01b0316815260208101919091526040015f20805460ff1916911515919091179055600101610c52565b6005546001600160a01b03163314610cde5760405162461bcd60e51b81526004016106e89061229d565b600f80546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b03163314610d2a5760405162461bcd60e51b81526004016106e89061229d565b6003811115610d705760405162461bcd60e51b81526020600482015260126024820152716e657756616c7565206d757374203c3d203360701b60448201526064016106e8565b601d55565b6005546001600160a01b03163314610d9f5760405162461bcd60e51b81526004016106e89061229d565b6001600160a01b038116610e045760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016106e8565b6005546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a3600580546001600160a01b0319166001600160a01b0392909216919091179055565b610e6c8383836001611425565b505050565b6001600160a01b038381165f908152600160209081526040808320938616835292905220545f19811461088f5781811015610ed857604051637dc7a0d960e11b81526001600160a01b038416600482015260248101829052604481018390526064016106e8565b61088f84848484035f611425565b6001600160a01b0383165f9081526008602052604090205460ff16158015610f2657506001600160a01b0382165f9081526008602052604090205460ff16155b8015610f415750335f9081526008602052604090205460ff16155b610f7e5760405162461bcd60e51b815260206004820152600e60248201526d726566757365206164647265737360901b60448201526064016106e8565b6001600160a01b0383165f908152602081815260408083205460079092529091205460ff16158015610faf57508082145b15610fd057612710610fc38261270f61233f565b610fcd9190612356565b91505b6001600160a01b0383165f9081526006602052604081205460ff1615611011575f610ffa846114f7565b9050801561100f576001915061100f8661155e565b505b6001600160a01b0385165f9081526007602052604090205460ff1615801561105157506001600160a01b0384165f9081526007602052604090205460ff16155b156113db576001600160a01b0385165f9081526006602052604081205481908190819060ff16156110ef5760145460ff1661109e5760405162461bcd60e51b81526004016106e890612375565b5f6110a88861162e565b6001600160a01b038a165f9081526017602052604090205490915060ff16156110e95780156110e95760405162461bcd60e51b81526004016106e890612375565b50611275565b6001600160a01b0388165f9081526006602052604090205460ff161561120c5760145460ff166111315760405162461bcd60e51b81526004016106e890612375565b84156111a4576103e861114588600f61233f565b61114f9190612356565b93506103e861115f88600f61233f565b6111699190612356565b92506103e861117988600a61233f565b6111839190612356565b91506103e861119388600a61233f565b61119d9190612356565b9050611275565b6103e8601054886111b5919061233f565b6111bf9190612356565b93506103e8601154886111d2919061233f565b6111dc9190612356565b92506103e8601254886111ef919061233f565b6111f99190612356565b91506103e860135488611193919061233f565b6103e861121a88600f61233f565b6112249190612356565b93506103e861123488600f61233f565b61123e9190612356565b92506103e861124e88600a61233f565b6112589190612356565b91506103e861126888600a61233f565b6112729190612356565b90505b831561129357600d54611293908a906001600160a01b0316866117a3565b82156112b157600e546112b1908a906001600160a01b0316856117a3565b81156112c2576112c28930846117a3565b80156112e057600f546112e0908a906001600160a01b0316836117a3565b8082846112ed878b612398565b6112f79190612398565b6113019190612398565b61130b9190612398565b600b549097506001600160a01b03898116911614801561134357506001600160a01b0389165f9081526007602052604090205460ff16155b156113d657601e5460ff16156113d6575f80611363633b9aca008a612356565b90505f5b601d548110156113b85760408051602081018390529081018b9052426060820152608001604051602081830303815290604052805190602001205f1c92506113b08c84846117a3565b600101611367565b5080601d546113c7919061233f565b6113d1908a612398565b985050505b505050505b6113e68585856117a3565b6001600160a01b038516301480159061140d57506009546001600160a01b03868116911614155b1561141e5761141e6207a120611800565b5050505050565b6001600160a01b03841661144e5760405163e602df0560e01b81525f60048201526024016106e8565b6001600160a01b03831661147757604051634a1406b160e11b81525f60048201526024016106e8565b6001600160a01b038085165f908152600160209081526040808320938716835292905220829055801561088f57826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516114e991815260200190565b60405180910390a350505050565b5f805f80611503611a46565b9250925092505f808411801561151857505f83115b156115355782611528858861233f565b6115329190612356565b90505b61153f818561232c565b82106115555761155182878686611b72565b5094505b50505050919050565b61156781611e4b565b61156e5750565b6001600160a01b0381165f90815260166020526040812054900361162b5760155415806115ca5750806001600160a01b031660155f815481106115b3576115b3612304565b5f918252602090912001546001600160a01b031614155b1561162b57601580546001600160a01b0383165f818152601660205260408120839055600183018455929092527f55f448fdea98c4d29eb340757ef0a66cd03dbb9538908a6a81d96026b71ec4750180546001600160a01b03191690911790555b50565b5f805f611639611a46565b925050915081811161179c57600b546001600160a01b03165f9081526020819052604090205460019061166d908690612398565b6116779190612398565b600b5f9054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116c7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116eb91906123ab565b6116f5908661233f565b61170090600161232c565b61170a9190612356565b9250600b5f9054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061178091906123ab565b61178c8461271061233f565b106117975782611799565b5f5b92505b5050919050565b6001600160a01b0383166117cc57604051634b637e8f60e11b81525f60048201526024016106e8565b6001600160a01b0382166117f55760405163ec442f0560e01b81525f60048201526024016106e8565b610e6c838383611e94565b305f90815260208190526040902054601954819081101561182057505050565b601c54601b54611830919061232c565b42101561183c57505050565b6015545f81900361184d5750505050565b42601b55600b54604080516318160ddd60e01b815290516001600160a01b03909216915f9183916318160ddd916004808201926020929091908290030181865afa15801561189d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118c191906123ab565b90505f808080805a90505f5b8b831080156118db57508881105b15611a385788601a54106118ee575f601a555b6015601a548154811061190357611903612304565b5f918252602090912001546040516370a0823160e01b81526001600160a01b03918216600482018190529750908916906370a0823190602401602060405180830381865afa158015611957573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061197b91906123ab565b6001600160a01b0387165f9081526017602052604090205490955060ff161580156119a7575060185485115b156119f757866119b7868d61233f565b6119c19190612356565b9350838a10156119d957505050505050505050505050565b83156119f7576119ea3087866117a3565b6119f4848b612398565b99505b5a611a029083612398565b611a0c908461232c565b92505a601a80549193505f611a20836123c2565b91905055508080611a30906123c2565b9150506118cd565b505050505050505050505050565b5f805f80600b5f9054906101000a90046001600160a01b031690505f80826001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015611a9f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611ac391906123f0565b50600a546001600160701b039283169450911691506001600160a01b031630811015611af457829650819550611afb565b8196508295505b600b546040516370a0823160e01b81526001600160a01b039182166004820152908216906370a0823190602401602060405180830381865afa158015611b43573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b6791906123ab565b945050505050909192565b5f805f600b5f9054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611bc5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611be991906123ab565b90505f600c5f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611c60919061243c565b6001600160a01b031663017e7e586040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbf919061243c565b600b5460408051637464fc3d60e01b815290519293506001600160a01b038085161515935f9390911691637464fc3d9160048083019260209291908290030181865afa158015611d11573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d3591906123ab565b90508115611dcc578015611dcc575f611d56611d51898b61233f565b611fba565b90505f611d6283611fba565b905080821115611dc9575f611d778284612398565b611d81908861233f565b611d8c90600361233f565b90505f82611d9b85600561233f565b611da5919061232c565b9050611db18183612356565b98508815611dc657611dc3898961232c565b97505b50505b50505b5f611dd7898c612398565b9050845f03611e08578015611e03576103e8611df6611d518c8461233f565b611e009190612398565b96505b611e3d565b611e3a89611e16878461233f565b611e209190612356565b89611e2b888e61233f565b611e359190612356565b612028565b96505b505050505094509492505050565b5f813b15611e5a57505f919050565b6001600160a01b038216611e6f57505f919050565b6009546001600160a01b0390811690831603611e8c57505f919050565b506001919050565b6001600160a01b038316611ebe578060025f828254611eb3919061232c565b90915550611f2e9050565b6001600160a01b0383165f9081526020819052604090205481811015611f105760405163391434e360e21b81526001600160a01b038516600482015260248101829052604481018390526064016106e8565b6001600160a01b0384165f9081526020819052604090209082900390555b6001600160a01b038216611f4a57600280548290039055611f68565b6001600160a01b0382165f9081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611fad91815260200190565b60405180910390a3505050565b5f60038211156120195750805f611fd2600283612356565b611fdd90600161232c565b90505b8181101561201357905080600281611ff88186612356565b612002919061232c565b61200c9190612356565b9050611fe0565b50919050565b8115612023575060015b919050565b5f8183106120365781612038565b825b9392505050565b6001600160a01b038116811461162b575f80fd5b80358015158114612023575f80fd5b5f8060408385031215612073575f80fd5b823561207e8161203f565b915061208c60208401612053565b90509250929050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f602082840312156120da575f80fd5b61203882612053565b5f80604083850312156120f4575f80fd5b82356120ff8161203f565b946020939093013593505050565b5f805f6040848603121561211f575f80fd5b833567ffffffffffffffff811115612135575f80fd5b8401601f81018613612145575f80fd5b803567ffffffffffffffff81111561215b575f80fd5b8660208260051b840101111561216f575f80fd5b602091820194509250612183908501612053565b90509250925092565b5f805f6060848603121561219e575f80fd5b83356121a98161203f565b925060208401356121b98161203f565b929592945050506040919091013590565b602080825282518282018190525f918401906040840190835b8181101561220a5783516001600160a01b03168352602093840193909201916001016121e3565b509095945050505050565b5f60808284031215612225575f80fd5b82608083011115612013575f80fd5b5f60208284031215612244575f80fd5b81356120388161203f565b5f6020828403121561225f575f80fd5b5035919050565b5f8060408385031215612277575f80fd5b82356122828161203f565b915060208301356122928161203f565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c908216806122e657607f821691505b60208210810361201357634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b808201808211156107fb576107fb612318565b80820281158282048414176107fb576107fb612318565b5f8261237057634e487b7160e01b5f52601260045260245ffd5b500490565b602080825260099082015268139bdd081cdd185c9d60ba1b604082015260600190565b818103818111156107fb576107fb612318565b5f602082840312156123bb575f80fd5b5051919050565b5f600182016123d3576123d3612318565b5060010190565b80516001600160701b0381168114612023575f80fd5b5f805f60608486031215612402575f80fd5b61240b846123da565b9250612419602085016123da565b9150604084015163ffffffff81168114612431575f80fd5b809150509250925092565b5f6020828403121561244c575f80fd5b81516120388161203f56fea264697066735822122003129dfbe539a2cc48fc939a9b624f232b4a4db2aa1d8ac864416330b978a49b64736f6c634300081a0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000000000000000000000033b2e3c9fd0803ce80000000000000000000000000000008fb6c61df2359c722f14595f865a6fe5dc2ad046
-----Decoded View---------------
Arg [0] : initialSupply (uint256): 1000000000000000000000000000
Arg [1] : main (address): 0x8fb6C61Df2359c722f14595F865a6fe5DC2AD046
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000033b2e3c9fd0803ce8000000
Arg [1] : 0000000000000000000000008fb6c61df2359c722f14595f865a6fe5dc2ad046
Deployed Bytecode Sourcemap
14320:12874:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14832:36;;;;;;;;;;-1:-1:-1;14832:36:0;;;;-1:-1:-1;;;;;14832:36:0;;;;;;-1:-1:-1;;;;;199:32:1;;;181:51;;169:2;154:18;14832:36:0;;;;;;;;22677:119;;;;;;;;;;-1:-1:-1;22677:119:0;;;;;:::i;:::-;;:::i;:::-;;10361:91;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;23046:99::-;;;;;;;;;;-1:-1:-1;23046:99:0;;;;;:::i;:::-;;:::i;11228:190::-;;;;;;;;;;-1:-1:-1;11228:190:0;;;;;:::i;:::-;;:::i;:::-;;;2009:14:1;;2002:22;1984:41;;1972:2;1957:18;11228:190:0;1844:187:1;10655:99:0;;;;;;;;;;-1:-1:-1;10734:12:0;;10655:99;;;2182:25:1;;;2170:2;2155:18;10655:99:0;2036:177:1;23007:32:0;;;;;;;;;;-1:-1:-1;23007:32:0;;;;;;;;23957:206;;;;;;;;;;-1:-1:-1;23957:206:0;;;;;:::i;:::-;;:::i;11426:249::-;;;;;;;;;;-1:-1:-1;11426:249:0;;;;;:::i;:::-;;:::i;14955:39::-;;;;;;;;;;;;;;;;10563:84;;;;;;;;;;-1:-1:-1;10563:84:0;;10637:2;3562:36:1;;3550:2;3535:18;10563:84:0;3420:184:1;14909:39:0;;;;;;;;;;;;;;;;20280:92;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;23153:352::-;;;;;;;;;;-1:-1:-1;23153:352:0;;;;;:::i;:::-;;:::i;10762:118::-;;;;;;;;;;-1:-1:-1;10762:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;10854:18:0;10827:7;10854:18;;;;;;;;;;;;10762:118;1167:148;;;;;;;;;;;;;:::i;22230:122::-;;;;;;;;;;-1:-1:-1;22230:122:0;;;;;:::i;:::-;;:::i;14551:70::-;;;;;;;;;;-1:-1:-1;14551:70:0;;;;-1:-1:-1;;;;;14551:70:0;;;24171:130;;;;;;;;;;;;;:::i;700:79::-;;;;;;;;;;-1:-1:-1;765:6:0;;-1:-1:-1;;;;;765:6:0;700:79;;10460:95;;;;;;;;;;;;;:::i;22360:183::-;;;;;;;;;;-1:-1:-1;22360:183:0;;;;;:::i;:::-;;:::i;23617:118::-;;;;;;;;;;-1:-1:-1;23617:118:0;;;;;:::i;:::-;;:::i;10888:182::-;;;;;;;;;;-1:-1:-1;10888:182:0;;;;;:::i;:::-;;:::i;14789:36::-;;;;;;;;;;-1:-1:-1;14789:36:0;;;;-1:-1:-1;;;;;14789:36:0;;;22551:118;;;;;;;;;;-1:-1:-1;22551:118:0;;;;;:::i;:::-;;:::i;14875:25::-;;;;;;;;;;-1:-1:-1;14875:25:0;;;;-1:-1:-1;;;;;14875:25:0;;;14628:69;;;;;;;;;;-1:-1:-1;14628:69:0;;;;-1:-1:-1;;;;;14628:69:0;;;23743:206;;;;;;;;;;-1:-1:-1;23743:206:0;;;;;:::i;:::-;;:::i;15045:38::-;;;;;;;;;;;;;;;;20527:29;;;;;;;;;;;;;;;;11078:142;;;;;;;;;;-1:-1:-1;11078:142:0;;;;;:::i;:::-;-1:-1:-1;;;;;11185:18:0;;;11158:7;11185:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;11078:142;23513:96;;;;;;;;;;-1:-1:-1;23513:96:0;;;;;:::i;:::-;;:::i;22804:31::-;;;;;;;;;;;;;;;;22842:157;;;;;;;;;;-1:-1:-1;22842:157:0;;;;;:::i;:::-;;:::i;20425:52::-;;;;;;;;;;;;;;;;15001:37;;;;;;;;;;;;;;;;915:244;;;;;;;;;;-1:-1:-1;915:244:0;;;;;:::i;:::-;;:::i;22677:119::-;765:6;;-1:-1:-1;;;;;765:6:0;174:10;827:23;819:68;;;;-1:-1:-1;;;819:68:0;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;22760:19:0;;;::::1;;::::0;;;:13:::1;:19;::::0;;;;:28;;-1:-1:-1;;22760:28:0::1;::::0;::::1;;::::0;;;::::1;::::0;;22677:119::o;10361:91::-;10406:13;10439:5;10432:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10361:91;:::o;23046:99::-;765:6;;-1:-1:-1;;;;;765:6:0;174:10;827:23;819:68;;;;-1:-1:-1;;;819:68:0;;;;;;;:::i;:::-;23115:13:::1;:22:::0;;-1:-1:-1;;23115:22:0::1;::::0;::::1;;::::0;;;::::1;::::0;;23046:99::o;11228:190::-;11301:4;174:10;11357:31;174:10;11373:7;11382:5;11357:8;:31::i;:::-;11406:4;11399:11;;;11228:190;;;;;:::o;23957:206::-;765:6;;-1:-1:-1;;;;;765:6:0;174:10;827:23;819:68;;;;-1:-1:-1;;;819:68:0;;;;;;;:::i;:::-;24055:9:::1;24050:106;24070:19:::0;;::::1;24050:106;;;24140:4;24111:13;:26;24125:8;;24134:1;24125:11;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;24111:26:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;24111:26:0;:33;;-1:-1:-1;;24111:33:0::1;::::0;::::1;;::::0;;;::::1;::::0;;-1:-1:-1;24091:3:0::1;24050:106;;;;23957:206:::0;;;:::o;11426:249::-;11513:4;174:10;11571:37;11587:4;174:10;11602:5;11571:15;:37::i;:::-;11619:26;11629:4;11635:2;11639:5;11619:9;:26::i;:::-;-1:-1:-1;11663:4:0;;11426:249;-1:-1:-1;;;;11426:249:0:o;20280:92::-;20322:16;20357:7;20350:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;20350:14:0;;;;;;;;;;;;;;;;;;;;;;20280:92;:::o;23153:352::-;765:6;;-1:-1:-1;;;;;765:6:0;174:10;827:23;819:68;;;;-1:-1:-1;;;819:68:0;;;;;;;:::i;:::-;23250:10:::1;::::0;-1:-1:-1;;;;;23250:10:0::1;23236;:24;23228:48;;;::::0;-1:-1:-1;;;23228:48:0;;6673:2:1;23228:48:0::1;::::0;::::1;6655:21:1::0;6712:2;6692:18;;;6685:30;-1:-1:-1;;;6731:18:1;;;6724:41;6782:18;;23228:48:0::1;6471:335:1::0;23228:48:0::1;23336:3;23325:7:::0;;::::1;;23315::::0;;::::1;;23295:17;23325:7;23305::::0;::::1;;23295::::0;::::1;:17;:::i;:::-;:27;;;;:::i;:::-;:37;;;;:::i;:::-;:44;;23287:53;;;::::0;::::1;;23373:7:::0;::::1;23351:19;:29:::0;23373:7:::1;23413::::0;::::1;;23391:19;:29:::0;23451:7;;::::1;;23431:17;:27:::0;23490:7;::::1;;23469:18;:28:::0;23153:352::o;1167:148::-;765:6;;-1:-1:-1;;;;;765:6:0;174:10;827:23;819:68;;;;-1:-1:-1;;;819:68:0;;;;;;;:::i;:::-;1258:6:::1;::::0;1237:40:::1;::::0;1274:1:::1;::::0;-1:-1:-1;;;;;1258:6:0::1;::::0;1237:40:::1;::::0;1274:1;;1237:40:::1;1288:6;:19:::0;;-1:-1:-1;;;;;;1288:19:0::1;::::0;;1167:148::o;22230:122::-;765:6;;-1:-1:-1;;;;;765:6:0;174:10;827:23;819:68;;;;-1:-1:-1;;;819:68:0;;;;;;;:::i;:::-;22312:21:::1;:32:::0;22230:122::o;24171:130::-;765:6;;-1:-1:-1;;;;;765:6:0;174:10;827:23;819:68;;;;-1:-1:-1;;;819:68:0;;;;;;;:::i;:::-;24235:14:::1;::::0;::::1;;24234:15;24226:35;;;::::0;-1:-1:-1;;;24226:35:0;;7275:2:1;24226:35:0::1;::::0;::::1;7257:21:1::0;7314:1;7294:18;;;7287:29;-1:-1:-1;;;7332:18:1;;;7325:37;7379:18;;24226:35:0::1;7073:330:1::0;24226:35:0::1;24272:14;:21:::0;;-1:-1:-1;;24272:21:0::1;24289:4;24272:21;::::0;;24171:130::o;10460:95::-;10507:13;10540:7;10533:14;;;;;:::i;22360:183::-;765:6;;-1:-1:-1;;;;;765:6:0;174:10;827:23;819:68;;;;-1:-1:-1;;;819:68:0;;;;;;;:::i;:::-;22453:9:::1;;22441:8;:21:::0;22433:71:::1;;;::::0;-1:-1:-1;;;22433:71:0;;7610:2:1;22433:71:0::1;::::0;::::1;7592:21:1::0;7649:2;7629:18;;;7622:30;7688:34;7668:18;;;7661:62;-1:-1:-1;;;7739:18:1;;;7732:35;7784:19;;22433:71:0::1;7408:401:1::0;22433:71:0::1;22515:9;:20:::0;22360:183::o;23617:118::-;765:6;;-1:-1:-1;;;;;765:6:0;174:10;827:23;819:68;;;;-1:-1:-1;;;819:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;23698:22:0;;;::::1;;::::0;;;:13:::1;:22;::::0;;;;:29;;-1:-1:-1;;23698:29:0::1;::::0;::::1;;::::0;;;::::1;::::0;;23617:118::o;10888:182::-;10957:4;174:10;11013:27;174:10;11030:2;11034:5;11013:9;:27::i;22551:118::-;765:6;;-1:-1:-1;;;;;765:6:0;174:10;827:23;819:68;;;;-1:-1:-1;;;819:68:0;;;;;;;:::i;:::-;22631:21:::1;:30:::0;22551:118::o;23743:206::-;765:6;;-1:-1:-1;;;;;765:6:0;174:10;827:23;819:68;;;;-1:-1:-1;;;819:68:0;;;;;;;:::i;:::-;23844:9:::1;23840:102;23859:19:::0;;::::1;23840:102;;;23926:4;23900:10;:23;23911:8;;23920:1;23911:11;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;23900:23:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;23900:23:0;:30;;-1:-1:-1;;23900:30:0::1;::::0;::::1;;::::0;;;::::1;::::0;;-1:-1:-1;23880:3:0::1;23840:102;;23513:96:::0;765:6;;-1:-1:-1;;;;;765:6:0;174:10;827:23;819:68;;;;-1:-1:-1;;;819:68:0;;;;;;;:::i;:::-;23581:10:::1;:20:::0;;-1:-1:-1;;;;;;23581:20:0::1;-1:-1:-1::0;;;;;23581:20:0;;;::::1;::::0;;;::::1;::::0;;23513:96::o;22842:157::-;765:6;;-1:-1:-1;;;;;765:6:0;174:10;827:23;819:68;;;;-1:-1:-1;;;819:68:0;;;;;;;:::i;:::-;22933:1:::1;22921:8;:13;;22913:44;;;::::0;-1:-1:-1;;;22913:44:0;;8016:2:1;22913:44:0::1;::::0;::::1;7998:21:1::0;8055:2;8035:18;;;8028:30;-1:-1:-1;;;8074:18:1;;;8067:48;8132:18;;22913:44:0::1;7814:342:1::0;22913:44:0::1;22968:12;:23:::0;22842:157::o;915:244::-;765:6;;-1:-1:-1;;;;;765:6:0;174:10;827:23;819:68;;;;-1:-1:-1;;;819:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;1004:22:0;::::1;996:73;;;::::0;-1:-1:-1;;;996:73:0;;8363:2:1;996:73:0::1;::::0;::::1;8345:21:1::0;8402:2;8382:18;;;8375:30;8441:34;8421:18;;;8414:62;-1:-1:-1;;;8492:18:1;;;8485:36;8538:19;;996:73:0::1;8161:402:1::0;996:73:0::1;1106:6;::::0;1085:38:::1;::::0;-1:-1:-1;;;;;1085:38:0;;::::1;::::0;1106:6:::1;::::0;1085:38:::1;::::0;1106:6:::1;::::0;1085:38:::1;1134:6;:17:::0;;-1:-1:-1;;;;;;1134:17:0::1;-1:-1:-1::0;;;;;1134:17:0;;;::::1;::::0;;;::::1;::::0;;915:244::o;13185:130::-;13270:37;13279:5;13286:7;13295:5;13302:4;13270:8;:37::i;:::-;13185:130;;;:::o;13774:487::-;-1:-1:-1;;;;;11185:18:0;;;13874:24;11185:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;-1:-1:-1;;13941:37:0;;13937:317;;14018:5;13999:16;:24;13995:132;;;14051:60;;-1:-1:-1;;;14051:60:0;;-1:-1:-1;;;;;8788:32:1;;14051:60:0;;;8770:51:1;8837:18;;;8830:34;;;8880:18;;;8873:34;;;8743:18;;14051:60:0;8568:345:1;13995:132:0;14170:57;14179:5;14186:7;14214:5;14195:16;:24;14221:5;14170:8;:57::i;15931:3445::-;-1:-1:-1;;;;;16030:16:0;;;;;;:10;:16;;;;;;;;16029:17;:36;;;;-1:-1:-1;;;;;;16051:14:0;;;;;;:10;:14;;;;;;;;16050:15;16029:36;:63;;;;-1:-1:-1;16081:10:0;16070:22;;;;:10;:22;;;;;;;;16069:23;16029:63;16021:90;;;;-1:-1:-1;;;16021:90:0;;9120:2:1;16021:90:0;;;9102:21:1;9159:2;9139:18;;;9132:30;-1:-1:-1;;;9178:18:1;;;9171:44;9232:18;;16021:90:0;8918:338:1;16021:90:0;-1:-1:-1;;;;;10854:18:0;;16124:15;10854:18;;;;;;;;;;;;16172:13;:19;;;;;;;;;16171:20;:41;;;;;16205:7;16195:6;:17;16171:41;16168:106;;;16257:5;16239:14;:7;16249:4;16239:14;:::i;:::-;16238:24;;;;:::i;:::-;16229:33;;16168:106;-1:-1:-1;;;;;16312:17:0;;16287:10;16312:17;;;:13;:17;;;;;;;;16308:216;;;16346:22;16371;16386:6;16371:14;:22::i;:::-;16346:47;-1:-1:-1;16412:18:0;;16408:105;;16459:4;16451:12;;16482:15;16492:4;16482:9;:15::i;:::-;16331:193;16308:216;-1:-1:-1;;;;;16541:19:0;;;;;;:13;:19;;;;;;;;16540:20;:42;;;;-1:-1:-1;;;;;;16565:17:0;;;;;;:13;:17;;;;;;;;16564:18;16540:42;16536:2668;;;-1:-1:-1;;;;;16751:19:0;;16599:23;16751:19;;;:13;:19;;;;;;16599:23;;;;;;16751:19;;16747:1259;;;16798:14;;;;16790:36;;;;-1:-1:-1;;;16790:36:0;;;;;;;:::i;:::-;16845:25;16873;16891:6;16873:17;:25::i;:::-;-1:-1:-1;;;;;16920:17:0;;;;;;:13;:17;;;;;;16845:53;;-1:-1:-1;16920:17:0;;16917:109;;;16970:22;;16962:44;;;;-1:-1:-1;;;16962:44:0;;;;;;;:::i;:::-;16771:270;16747:1259;;;-1:-1:-1;;;;;17051:17:0;;;;;;:13;:17;;;;;;;;17047:959;;;17096:14;;;;17088:36;;;;-1:-1:-1;;;17088:36:0;;;;;;;:::i;:::-;17147:5;17143:602;;;17211:4;17196:11;:6;17205:2;17196:11;:::i;:::-;17195:20;;;;:::i;:::-;17177:38;-1:-1:-1;17272:4:0;17257:11;:6;17266:2;17257:11;:::i;:::-;17256:20;;;;:::i;:::-;17238:38;-1:-1:-1;17331:4:0;17316:11;:6;17325:2;17316:11;:::i;:::-;17315:20;;;;:::i;:::-;17299:36;-1:-1:-1;17390:4:0;17375:11;:6;17384:2;17375:11;:::i;:::-;17374:20;;;;:::i;:::-;17358:36;;17047:959;;17143:602;17494:4;17471:19;;17462:6;:28;;;;:::i;:::-;17461:37;;;;:::i;:::-;17443:55;;17572:4;17549:19;;17540:6;:28;;;;:::i;:::-;17539:37;;;;:::i;:::-;17521:55;;17646:4;17625:17;;17616:6;:26;;;;:::i;:::-;17615:35;;;;:::i;:::-;17599:51;;17721:4;17699:18;;17690:6;:27;;;;:::i;17047:959::-;17819:4;17804:11;:6;17813:2;17804:11;:::i;:::-;17803:20;;;;:::i;:::-;17785:38;-1:-1:-1;17876:4:0;17861:11;:6;17870:2;17861:11;:::i;:::-;17860:20;;;;:::i;:::-;17842:38;-1:-1:-1;17931:4:0;17916:11;:6;17925:2;17916:11;:::i;:::-;17915:20;;;;:::i;:::-;17899:36;-1:-1:-1;17986:4:0;17971:11;:6;17980:2;17971:11;:::i;:::-;17970:20;;;;:::i;:::-;17954:36;;17047:959;18026:19;;18022:125;;18096:16;;18066:65;;18082:4;;-1:-1:-1;;;;;18096:16:0;18115:15;18066;:65::i;:::-;18165:19;;18161:125;;18235:16;;18205:65;;18221:4;;-1:-1:-1;;;;;18235:16:0;18254:15;18205;:65::i;:::-;18304:17;;18300:109;;18342:51;18358:4;18372;18379:13;18342:15;:51::i;:::-;18427:17;;18423:106;;18487:10;;18465:48;;18481:4;;-1:-1:-1;;;;;18487:10:0;18499:13;18465:15;:48::i;:::-;18613:13;18597;18579:15;18552:24;18561:15;18552:6;:24;:::i;:::-;:42;;;;:::i;:::-;:58;;;;:::i;:::-;:74;;;;:::i;:::-;18653:13;;18543:83;;-1:-1:-1;;;;;;18647:19:0;;;18653:13;;18647:19;:43;;;;-1:-1:-1;;;;;;18671:19:0;;;;;;:13;:19;;;;;;;;18670:20;18647:43;18643:547;;;18715:13;;;;18711:464;;;18753:10;;18810:14;18819:5;18810:6;:14;:::i;:::-;18786:38;;18852:9;18847:248;18871:12;;18867:1;:16;18847:248;;;18956:44;;;;;;10311:19:1;;;10346:12;;;10339:28;;;18984:15:0;10383:12:1;;;10376:28;10420:12;;18956:44:0;;;;;;;;;;;;18946:55;;;;;;18938:64;;18917:87;;19031:40;19047:4;19053:2;19057:13;19031:15;:40::i;:::-;18885:3;;18847:248;;;;19142:13;19127:12;;:28;;;;:::i;:::-;19117:38;;;;:::i;:::-;;;18730:445;;18711:464;16584:2620;;;;16536:2668;19224:33;19240:4;19246:2;19250:6;19224:15;:33::i;:::-;-1:-1:-1;;;;;19274:21:0;;19290:4;19274:21;;;;:43;;-1:-1:-1;19307:10:0;;-1:-1:-1;;;;;19299:18:0;;;19307:10;;19299:18;;19274:43;19270:99;;;19334:23;19350:6;19334:15;:23::i;:::-;16010:3366;;15931:3445;;;:::o;13323:443::-;-1:-1:-1;;;;;13436:19:0;;13432:91;;13479:32;;-1:-1:-1;;;13479:32:0;;13508:1;13479:32;;;181:51:1;154:18;;13479:32:0;14:224:1;13432:91:0;-1:-1:-1;;;;;13537:21:0;;13533:92;;13582:31;;-1:-1:-1;;;13582:31:0;;13610:1;13582:31;;;181:51:1;154:18;;13582:31:0;14:224:1;13533:92:0;-1:-1:-1;;;;;13635:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;:35;;;13681:78;;;;13732:7;-1:-1:-1;;;;;13716:31:0;13725:5;-1:-1:-1;;;;;13716:31:0;;13741:5;13716:31;;;;2182:25:1;;2170:2;2155:18;;2036:177;13716:31:0;;;;;;;;13323:443;;;;:::o;24309:464::-;24372:17;24402:14;24418:13;24433:20;24457:13;:11;:13::i;:::-;24401:69;;;;;;24481:19;24524:1;24515:6;:10;:23;;;;;24537:1;24529:5;:9;24515:23;24511:93;;;24587:5;24569:15;24578:6;24569;:15;:::i;:::-;:23;;;;:::i;:::-;24555:37;;24511:93;24653:20;24662:11;24653:6;:20;:::i;:::-;24637:12;:36;24633:133;;24705:49;24718:12;24732:6;24740;24748:5;24705:12;:49::i;:::-;-1:-1:-1;24690:64:0;-1:-1:-1;24633:133:0;24390:383;;;;24309:464;;;:::o;19525:305::-;19580:19;19595:3;19580:14;:19::i;:::-;19576:32;;19525:305;:::o;19576:32::-;-1:-1:-1;;;;;19629:16:0;;;;;;:11;:16;;;;;;19624:21;;19620:203;;19671:7;:14;19666:19;;:40;;;19703:3;-1:-1:-1;;;;;19689:17:0;:7;19697:1;19689:10;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;19689:10:0;:17;;19666:40;19662:150;;;19746:7;:14;;-1:-1:-1;;;;;19727:16:0;;;;;;:11;:16;;;;;:33;;;19779:17;;;;;;;;;;;;;-1:-1:-1;;;;;;19779:17:0;;;;;;19662:150;19525:305;:::o;24781:476::-;24847:17;24878:14;24896:20;24920:13;:11;:13::i;:::-;24877:56;;;;;24964:6;24948:12;:22;24944:306;;25103:13;;-1:-1:-1;;;;;25103:13:0;10827:7;10854:18;;;;;;;;;;;25129:1;;25093:33;;25120:6;;25093:33;:::i;:::-;:37;;;;:::i;:::-;25039:13;;;;;;;;;-1:-1:-1;;;;;25039:13:0;-1:-1:-1;;;;;25026:39:0;;:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;25017:50;;:6;:50;:::i;:::-;:54;;25070:1;25017:54;:::i;:::-;25016:115;;;;:::i;:::-;24987:144;;25191:13;;;;;;;;;-1:-1:-1;;;;;25191:13:0;-1:-1:-1;;;;;25178:39:0;;:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;25158:17;:9;25170:5;25158:17;:::i;:::-;:61;:77;;25226:9;25158:77;;;25222:1;25158:77;25146:89;;24944:306;24866:391;;24781:476;;;:::o;11683:316::-;-1:-1:-1;;;;;11775:18:0;;11771:88;;11817:30;;-1:-1:-1;;;11817:30:0;;11844:1;11817:30;;;181:51:1;154:18;;11817:30:0;14:224:1;11771:88:0;-1:-1:-1;;;;;11873:16:0;;11869:88;;11913:32;;-1:-1:-1;;;11913:32:0;;11942:1;11913:32;;;181:51:1;154:18;;11913:32:0;14:224:1;11869:88:0;11967:24;11975:4;11981:2;11985:5;11967:7;:24::i;20612:1610::-;20703:4;20669:13;10854:18;;;;;;;;;;;20765:21;;10854:18;;20756:30;;20753:67;;;20802:7;;20612:1610;:::o;20753:67::-;20869:21;;20852:14;;:38;;;;:::i;:::-;20834:15;:56;20830:94;;;20906:7;;20612:1610;:::o;20830:94::-;20961:7;:14;20934:24;20990:21;;;20986:34;;21013:7;;;20612:1610;:::o;20986:34::-;21049:15;21032:14;:32;21101:13;;21151:23;;;-1:-1:-1;;;21151:23:0;;;;-1:-1:-1;;;;;21101:13:0;;;;21075:16;;21101:13;;21151:21;;:23;;;;;;;;;;;;;;;21101:13;21151:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21126:48;-1:-1:-1;21187:19:0;;;;;21323:9;21305:27;;21343:18;21378:837;21395:3;21385:7;:13;:46;;;;;21415:16;21402:10;:29;21385:46;21378:837;;;21476:16;21452:20;;:40;21448:105;;21536:1;21513:20;:24;21448:105;21583:7;21591:20;;21583:29;;;;;;;;:::i;:::-;;;;;;;;;;;21642:32;;-1:-1:-1;;;21642:32:0;;-1:-1:-1;;;;;21583:29:0;;;21642:32;;;181:51:1;;;21583:29:0;-1:-1:-1;21642:19:0;;;;;;154:18:1;;21642:32:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;21694:26:0;;;;;;:13;:26;;;;;;21627:47;;-1:-1:-1;21694:26:0;;21693:27;:55;;;;;21739:9;;21724:12;:24;21693:55;21689:361;;;21801:14;21778:20;21786:12;21778:5;:20;:::i;:::-;:37;;;;:::i;:::-;21769:46;;21847:6;21838;:15;21834:28;;;21855:7;;;;;;;;;;;20612:1610;:::o;21834:28::-;21883:10;;21880:155;;21917:51;21941:4;21948:11;21961:6;21917:15;:51::i;:::-;22000:15;22009:6;22000;:15;:::i;:::-;21991:24;;21880:155;22095:9;22085:19;;:7;:19;:::i;:::-;22074:31;;:7;:31;:::i;:::-;22064:41;;22130:9;22154:20;:22;;22120:19;;-1:-1:-1;22154:20:0;:22;;;:::i;:::-;;;;;;22191:12;;;;;:::i;:::-;;;;21378:837;;;20658:1564;;;;;;;;;;;20612:1610;:::o;25265:508::-;25312:14;25328:13;25343:20;25376:17;25409:13;;;;;;;;;-1:-1:-1;;;;;25409:13:0;25376:47;;25435:10;25447;25463:4;-1:-1:-1;;;;;25463:16:0;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;25513:9:0;;-1:-1:-1;;;;;25434:47:0;;;;-1:-1:-1;25434:47:0;;;-1:-1:-1;;;;;;25513:9:0;25558:4;25537:26;;25533:164;;;25589:2;25580:11;;25614:2;25606:10;;25533:164;;;25658:2;25649:11;;25683:2;25675:10;;25533:164;25751:13;;25722:43;;-1:-1:-1;;;25722:43:0;;-1:-1:-1;;;;;25751:13:0;;;25722:43;;;181:51:1;25722:28:0;;;;;;154:18:1;;25722:43:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;25707:58;;25365:408;;;;25265:508;;;:::o;25781:1373::-;25926:17;25945:22;25980:23;26019:13;;;;;;;;;-1:-1:-1;;;;;26019:13:0;-1:-1:-1;;;;;26006:39:0;;:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;25980:67;;26058:13;26092:15;;;;;;;;;-1:-1:-1;;;;;26092:15:0;-1:-1:-1;;;;;26092:23:0;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;26074:50:0;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;26210:13;;26197:35;;;-1:-1:-1;;;26197:35:0;;;;26058:68;;-1:-1:-1;;;;;;26150:19:0;;;;;;26137:10;;26210:13;;;;26197:33;;:35;;;;;;;;;;;;;;26210:13;26197:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;26180:52;;26247:5;26243:533;;;26273:11;;26269:496;;26305:13;26321:18;26331:7;26336:2;26331;:7;:::i;:::-;26321:9;:18::i;:::-;26305:34;;26358:17;26378;26388:6;26378:9;:17::i;:::-;26358:37;;26426:9;26418:5;:17;26414:336;;;26460:17;26499;26507:9;26499:5;:17;:::i;:::-;26480:37;;:15;:37;:::i;:::-;:41;;26520:1;26480:41;:::i;:::-;26460:61;-1:-1:-1;26544:19:0;26578:9;26566;:5;26574:1;26566:9;:::i;:::-;:21;;;;:::i;:::-;26544:43;-1:-1:-1;26627:23:0;26544:43;26627:9;:23;:::i;:::-;26610:40;-1:-1:-1;26677:18:0;;26673:57;;26697:33;26716:14;26697:33;;:::i;:::-;;;26673:57;26437:313;;26414:336;26286:479;;26269:496;26786:15;26804:13;26815:2;26804:8;:13;:::i;:::-;26786:31;;26832:15;26851:1;26832:20;26828:319;;26873:11;;26869:98;;26947:4;26917:27;26927:16;26937:6;26927:7;:16;:::i;26917:27::-;:34;;;;:::i;:::-;26905:46;;26869:98;26828:319;;;27011:124;27068:2;27039:25;27049:15;27039:7;:25;:::i;:::-;27038:32;;;;:::i;:::-;27118:2;27090:24;27099:15;27090:6;:24;:::i;:::-;27089:31;;;;:::i;:::-;27011:8;:124::i;:::-;26999:136;;26828:319;25969:1185;;;;;25781:1373;;;;;;;:::o;19838:236::-;19899:4;20211:17;;20256:8;19916:34;;-1:-1:-1;19945:5:0;;19838:236;-1:-1:-1;19838:236:0:o;19916:34::-;-1:-1:-1;;;;;19965:18:0;;19961:36;;-1:-1:-1;19992:5:0;;19838:236;-1:-1:-1;19838:236:0:o;19961:36::-;20020:10;;-1:-1:-1;;;;;20020:10:0;;;20012:18;;;;20008:36;;-1:-1:-1;20039:5:0;;19838:236;-1:-1:-1;19838:236:0:o;20008:36::-;-1:-1:-1;20062:4:0;;19838:236;-1:-1:-1;19838:236:0:o;12007:730::-;-1:-1:-1;;;;;12097:18:0;;12093:369;;12148:5;12132:12;;:21;;;;;;;:::i;:::-;;;;-1:-1:-1;12093:369:0;;-1:-1:-1;12093:369:0;;-1:-1:-1;;;;;12208:15:0;;12186:19;12208:15;;;;;;;;;;;12242:19;;;12238:117;;;12289:50;;-1:-1:-1;;;12289:50:0;;-1:-1:-1;;;;;8788:32:1;;12289:50:0;;;8770:51:1;8837:18;;;8830:34;;;8880:18;;;8873:34;;;8743:18;;12289:50:0;8568:345:1;12238:117:0;-1:-1:-1;;;;;12398:15:0;;:9;:15;;;;;;;;;;12416:19;;;;12398:37;;12093:369;-1:-1:-1;;;;;12478:16:0;;12474:213;;12540:12;:21;;;;;;;12474:213;;;-1:-1:-1;;;;;12638:13:0;;:9;:13;;;;;;;;;;:22;;;;;;12474:213;12719:2;-1:-1:-1;;;;;12704:25:0;12713:4;-1:-1:-1;;;;;12704:25:0;;12723:5;12704:25;;;;2182::1;;2170:2;2155:18;;2036:177;12704:25:0;;;;;;;;12007:730;;;:::o;6271:303::-;6316:6;6343:1;6339;:5;6335:232;;;-1:-1:-1;6365:1:0;6381:6;6390:5;6394:1;6365;6390:5;:::i;:::-;:9;;6398:1;6390:9;:::i;:::-;6381:18;;6414:92;6425:1;6421;:5;6414:92;;;6451:1;-1:-1:-1;6451:1:0;6489;6451;6476:5;6451:1;6476;:5;:::i;:::-;:9;;;;:::i;:::-;6475:15;;;;:::i;:::-;6471:19;;6414:92;;;6346:171;6271:303;;;:::o;6335:232::-;6527:6;;6523:44;;-1:-1:-1;6554:1:0;6523:44;6271:303;;;:::o;6167:96::-;6219:6;6246:1;6242;:5;:13;;6254:1;6242:13;;;6250:1;6242:13;6238:17;6167:96;-1:-1:-1;;;6167:96:0:o;243:131:1:-;-1:-1:-1;;;;;318:31:1;;308:42;;298:70;;364:1;361;354:12;379:160;444:20;;500:13;;493:21;483:32;;473:60;;529:1;526;519:12;544:315;609:6;617;670:2;658:9;649:7;645:23;641:32;638:52;;;686:1;683;676:12;638:52;725:9;712:23;744:31;769:5;744:31;:::i;:::-;794:5;-1:-1:-1;818:35:1;849:2;834:18;;818:35;:::i;:::-;808:45;;544:315;;;;;:::o;864:418::-;1013:2;1002:9;995:21;976:4;1045:6;1039:13;1088:6;1083:2;1072:9;1068:18;1061:34;1147:6;1142:2;1134:6;1130:15;1125:2;1114:9;1110:18;1104:50;1203:1;1198:2;1189:6;1178:9;1174:22;1170:31;1163:42;1273:2;1266;1262:7;1257:2;1249:6;1245:15;1241:29;1230:9;1226:45;1222:54;1214:62;;;864:418;;;;:::o;1287:180::-;1343:6;1396:2;1384:9;1375:7;1371:23;1367:32;1364:52;;;1412:1;1409;1402:12;1364:52;1435:26;1451:9;1435:26;:::i;1472:367::-;1540:6;1548;1601:2;1589:9;1580:7;1576:23;1572:32;1569:52;;;1617:1;1614;1607:12;1569:52;1656:9;1643:23;1675:31;1700:5;1675:31;:::i;:::-;1725:5;1803:2;1788:18;;;;1775:32;;-1:-1:-1;;;1472:367:1:o;2218:684::-;2310:6;2318;2326;2379:2;2367:9;2358:7;2354:23;2350:32;2347:52;;;2395:1;2392;2385:12;2347:52;2435:9;2422:23;2468:18;2460:6;2457:30;2454:50;;;2500:1;2497;2490:12;2454:50;2523:22;;2576:4;2568:13;;2564:27;-1:-1:-1;2554:55:1;;2605:1;2602;2595:12;2554:55;2645:2;2632:16;2671:18;2663:6;2660:30;2657:50;;;2703:1;2700;2693:12;2657:50;2758:7;2751:4;2741:6;2738:1;2734:14;2730:2;2726:23;2722:34;2719:47;2716:67;;;2779:1;2776;2769:12;2716:67;2810:4;2802:13;;;;-1:-1:-1;2834:6:1;-1:-1:-1;2859:37:1;;2875:20;;2859:37;:::i;:::-;2849:47;;2218:684;;;;;:::o;2907:508::-;2984:6;2992;3000;3053:2;3041:9;3032:7;3028:23;3024:32;3021:52;;;3069:1;3066;3059:12;3021:52;3108:9;3095:23;3127:31;3152:5;3127:31;:::i;:::-;3177:5;-1:-1:-1;3234:2:1;3219:18;;3206:32;3247:33;3206:32;3247:33;:::i;:::-;2907:508;;3299:7;;-1:-1:-1;;;3379:2:1;3364:18;;;;3351:32;;2907:508::o;3609:637::-;3799:2;3811:21;;;3881:13;;3784:18;;;3903:22;;;3751:4;;3982:15;;;3956:2;3941:18;;;3751:4;4025:195;4039:6;4036:1;4033:13;4025:195;;;4104:13;;-1:-1:-1;;;;;4100:39:1;4088:52;;4169:2;4195:15;;;;4160:12;;;;4136:1;4054:9;4025:195;;;-1:-1:-1;4237:3:1;;3609:637;-1:-1:-1;;;;;3609:637:1:o;4251:253::-;4335:6;4388:3;4376:9;4367:7;4363:23;4359:33;4356:53;;;4405:1;4402;4395:12;4356:53;4445:7;4439:3;4428:9;4424:19;4421:32;4418:52;;;4466:1;4463;4456:12;4509:247;4568:6;4621:2;4609:9;4600:7;4596:23;4592:32;4589:52;;;4637:1;4634;4627:12;4589:52;4676:9;4663:23;4695:31;4720:5;4695:31;:::i;4761:226::-;4820:6;4873:2;4861:9;4852:7;4848:23;4844:32;4841:52;;;4889:1;4886;4879:12;4841:52;-1:-1:-1;4934:23:1;;4761:226;-1:-1:-1;4761:226:1:o;5200:388::-;5268:6;5276;5329:2;5317:9;5308:7;5304:23;5300:32;5297:52;;;5345:1;5342;5335:12;5297:52;5384:9;5371:23;5403:31;5428:5;5403:31;:::i;:::-;5453:5;-1:-1:-1;5510:2:1;5495:18;;5482:32;5523:33;5482:32;5523:33;:::i;:::-;5575:7;5565:17;;;5200:388;;;;;:::o;5593:356::-;5795:2;5777:21;;;5814:18;;;5807:30;5873:34;5868:2;5853:18;;5846:62;5940:2;5925:18;;5593:356::o;5954:380::-;6033:1;6029:12;;;;6076;;;6097:61;;6151:4;6143:6;6139:17;6129:27;;6097:61;6204:2;6196:6;6193:14;6173:18;6170:38;6167:161;;6250:10;6245:3;6241:20;6238:1;6231:31;6285:4;6282:1;6275:15;6313:4;6310:1;6303:15;6339:127;6400:10;6395:3;6391:20;6388:1;6381:31;6431:4;6428:1;6421:15;6455:4;6452:1;6445:15;6811:127;6872:10;6867:3;6863:20;6860:1;6853:31;6903:4;6900:1;6893:15;6927:4;6924:1;6917:15;6943:125;7008:9;;;7029:10;;;7026:36;;;7042:18;;:::i;9261:168::-;9334:9;;;9365;;9382:15;;;9376:22;;9362:37;9352:71;;9403:18;;:::i;9434:217::-;9474:1;9500;9490:132;;9544:10;9539:3;9535:20;9532:1;9525:31;9579:4;9576:1;9569:15;9607:4;9604:1;9597:15;9490:132;-1:-1:-1;9636:9:1;;9434:217::o;9656:332::-;9858:2;9840:21;;;9897:1;9877:18;;;9870:29;-1:-1:-1;;;9930:2:1;9915:18;;9908:39;9979:2;9964:18;;9656:332::o;9993:128::-;10060:9;;;10081:11;;;10078:37;;;10095:18;;:::i;10443:184::-;10513:6;10566:2;10554:9;10545:7;10541:23;10537:32;10534:52;;;10582:1;10579;10572:12;10534:52;-1:-1:-1;10605:16:1;;10443:184;-1:-1:-1;10443:184:1:o;10632:135::-;10671:3;10692:17;;;10689:43;;10712:18;;:::i;:::-;-1:-1:-1;10759:1:1;10748:13;;10632:135::o;10772:188::-;10851:13;;-1:-1:-1;;;;;10893:42:1;;10883:53;;10873:81;;10950:1;10947;10940:12;10965:450;11052:6;11060;11068;11121:2;11109:9;11100:7;11096:23;11092:32;11089:52;;;11137:1;11134;11127:12;11089:52;11160:40;11190:9;11160:40;:::i;:::-;11150:50;;11219:49;11264:2;11253:9;11249:18;11219:49;:::i;:::-;11209:59;;11311:2;11300:9;11296:18;11290:25;11355:10;11348:5;11344:22;11337:5;11334:33;11324:61;;11381:1;11378;11371:12;11324:61;11404:5;11394:15;;;10965:450;;;;;:::o;11420:251::-;11490:6;11543:2;11531:9;11522:7;11518:23;11514:32;11511:52;;;11559:1;11556;11549:12;11511:52;11591:9;11585:16;11610:31;11635:5;11610:31;:::i
Swarm Source
ipfs://a5623e2069c549dbe28ed80e29110350fbea176b80b1ecce89111523f5336093
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.
Add Token to MetaMask (Web3)