ETH Price: $3,392.36 (-1.94%)
Gas: 6 Gwei

Contract

0xfE4cbccbDBb4b6b43ED19477F18f24dD94e83C3F
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve173626662023-05-29 5:47:59417 days ago1685339279IN
0xfE4cbccb...D94e83C3F
0 ETH0.001403630.34488951
Approve171350902023-04-27 4:16:59449 days ago1682569019IN
0xfE4cbccb...D94e83C3F
0 ETH0.0016936836.38972823
Approve171349392023-04-27 3:46:35449 days ago1682567195IN
0xfE4cbccb...D94e83C3F
0 ETH0.0016379435.19214387
Approve171349252023-04-27 3:43:47449 days ago1682567027IN
0xfE4cbccb...D94e83C3F
0 ETH0.0014831632.06487874
Approve171348392023-04-27 3:26:35449 days ago1682565995IN
0xfE4cbccb...D94e83C3F
0 ETH0.001867740.12863738
Transfer171348212023-04-27 3:22:59449 days ago1682565779IN
0xfE4cbccb...D94e83C3F
0 ETH0.0018594231.64605947
Approve171347842023-04-27 3:15:35449 days ago1682565335IN
0xfE4cbccb...D94e83C3F
0 ETH0.0016578835.62057456
Transfer171347752023-04-27 3:13:47449 days ago1682565227IN
0xfE4cbccb...D94e83C3F
0 ETH0.0029815136.07095499
Approve171347732023-04-27 3:13:23449 days ago1682565203IN
0xfE4cbccb...D94e83C3F
0 ETH0.0017119436.73466572
Approve171347722023-04-27 3:13:11449 days ago1682565191IN
0xfE4cbccb...D94e83C3F
0 ETH0.0017163436.82913357
Approve171347612023-04-27 3:10:59449 days ago1682565059IN
0xfE4cbccb...D94e83C3F
0 ETH0.001685236.16088981
Approve171347592023-04-27 3:10:35449 days ago1682565035IN
0xfE4cbccb...D94e83C3F
0 ETH0.0017499337.54976498
Approve171347452023-04-27 3:07:47449 days ago1682564867IN
0xfE4cbccb...D94e83C3F
0 ETH0.0026515256.8961035
Approve171347412023-04-27 3:06:47449 days ago1682564807IN
0xfE4cbccb...D94e83C3F
0 ETH0.0017517737.58925811
Approve171347372023-04-27 3:05:59449 days ago1682564759IN
0xfE4cbccb...D94e83C3F
0 ETH0.0016773435.99216511
Transfer Ownersh...171347212023-04-27 3:02:47449 days ago1682564567IN
0xfE4cbccb...D94e83C3F
0 ETH0.0010162436.41676223
Set Parameters171347132023-04-27 3:01:11449 days ago1682564471IN
0xfE4cbccb...D94e83C3F
0 ETH0.0014178433.13877576
Set Structure171347082023-04-27 3:00:11449 days ago1682564411IN
0xfE4cbccb...D94e83C3F
0 ETH0.0013968734.21275165
Approve171346812023-04-27 2:54:47449 days ago1682564087IN
0xfE4cbccb...D94e83C3F
0 ETH0.0028237760.59223139
Approve171346732023-04-27 2:53:11449 days ago1682563991IN
0xfE4cbccb...D94e83C3F
0 ETH0.0016271634.91552872
Set Structure171346602023-04-27 2:50:35449 days ago1682563835IN
0xfE4cbccb...D94e83C3F
0 ETH0.0016944435.08448152
Approve171346562023-04-27 2:49:47449 days ago1682563787IN
0xfE4cbccb...D94e83C3F
0 ETH0.0011597443.43144325
Set Structure171346442023-04-27 2:47:23449 days ago1682563643IN
0xfE4cbccb...D94e83C3F
0 ETH0.0017480236.19404208
Approve171346392023-04-27 2:46:23449 days ago1682563583IN
0xfE4cbccb...D94e83C3F
0 ETH0.001515532.72164467
Approve171346382023-04-27 2:46:11449 days ago1682563571IN
0xfE4cbccb...D94e83C3F
0 ETH0.0015176132.56467715
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
171348312023-04-27 3:24:59449 days ago1682565899
0xfE4cbccb...D94e83C3F
0.00007769 ETH
171348312023-04-27 3:24:59449 days ago1682565899
0xfE4cbccb...D94e83C3F
0.07769929 ETH
171348312023-04-27 3:24:59449 days ago1682565899
0xfE4cbccb...D94e83C3F
0.07777699 ETH
171347182023-04-27 3:02:11449 days ago1682564531
0xfE4cbccb...D94e83C3F
0.00009783 ETH
171347182023-04-27 3:02:11449 days ago1682564531
0xfE4cbccb...D94e83C3F
0.0978351 ETH
171347182023-04-27 3:02:11449 days ago1682564531
0xfE4cbccb...D94e83C3F
0.09793294 ETH
171347182023-04-27 3:02:11449 days ago1682564531
0xfE4cbccb...D94e83C3F
0.00012095 ETH
171347182023-04-27 3:02:11449 days ago1682564531
0xfE4cbccb...D94e83C3F
0.12095207 ETH
171347182023-04-27 3:02:11449 days ago1682564531
0xfE4cbccb...D94e83C3F
0.12107302 ETH
171347172023-04-27 3:01:59449 days ago1682564519
0xfE4cbccb...D94e83C3F
0.00012095 ETH
171347172023-04-27 3:01:59449 days ago1682564519
0xfE4cbccb...D94e83C3F
0.12095207 ETH
171347172023-04-27 3:01:59449 days ago1682564519
0xfE4cbccb...D94e83C3F
0.12107302 ETH
171347162023-04-27 3:01:47449 days ago1682564507
0xfE4cbccb...D94e83C3F
0.0001614 ETH
171347162023-04-27 3:01:47449 days ago1682564507
0xfE4cbccb...D94e83C3F
0.16140012 ETH
171347162023-04-27 3:01:47449 days ago1682564507
0xfE4cbccb...D94e83C3F
0.16156152 ETH
171346612023-04-27 2:50:47449 days ago1682563847
0xfE4cbccb...D94e83C3F
0.00014208 ETH
171346612023-04-27 2:50:47449 days ago1682563847
0xfE4cbccb...D94e83C3F
0.14208361 ETH
171346612023-04-27 2:50:47449 days ago1682563847
0xfE4cbccb...D94e83C3F
0.14222569 ETH
171346612023-04-27 2:50:47449 days ago1682563847
0xfE4cbccb...D94e83C3F
0.00017787 ETH
171346612023-04-27 2:50:47449 days ago1682563847
0xfE4cbccb...D94e83C3F
0.17787273 ETH
171346612023-04-27 2:50:47449 days ago1682563847
0xfE4cbccb...D94e83C3F
0.1780506 ETH
171346492023-04-27 2:48:23449 days ago1682563703
0xfE4cbccb...D94e83C3F
0.00021998 ETH
171346492023-04-27 2:48:23449 days ago1682563703
0xfE4cbccb...D94e83C3F
0.21998141 ETH
171346492023-04-27 2:48:23449 days ago1682563703
0xfE4cbccb...D94e83C3F
0.2202014 ETH
171346212023-04-27 2:42:47449 days ago1682563367
0xfE4cbccb...D94e83C3F
0.00019456 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
YOLO

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-04-27
*/

/**
 🔥✅🔥✅🔥✅🔥✅🔥✅ 🔥✅🔥✅🔥✅🔥✅🔥✅ 🔥✅🔥✅🔥✅🔥✅🔥✅ 🔥✅
Embracing  the wave of MEMECOIN HYPE, there is only one thing to say!
YOLO of course this is $NFA

https://t.me/YoloNFA

https://www.yolo-meme.com/

https://twitter.com/YoloNFA

🔥✅🔥✅🔥✅🔥✅🔥✅ 🔥✅🔥✅🔥✅🔥✅🔥✅ 🔥✅🔥✅🔥✅🔥✅🔥✅ 🔥✅
*/

// SPDX-License-Identifier: MIT

pragma solidity 0.8.18;


library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {return a + b;}
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {return a - b;}
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {return a * b;}
    function div(uint256 a, uint256 b) internal pure returns (uint256) {return a / b;}
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {return a % b;}
    
    function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {uint256 c = a + b; if(c < a) return(false, 0); return(true, c);}}

    function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {if(b > a) return(false, 0); return(true, a - b);}}

    function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {if (a == 0) return(true, 0); uint256 c = a * b;
        if(c / a != b) return(false, 0); return(true, c);}}

    function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {if(b == 0) return(false, 0); return(true, a / b);}}

    function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {if(b == 0) return(false, 0); return(true, a % b);}}

    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        unchecked{require(b <= a, errorMessage); return a - b;}}

    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        unchecked{require(b > 0, errorMessage); return a / b;}}

    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        unchecked{require(b > 0, errorMessage); return a % b;}}}

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function decimals() external view returns (uint8);
    function symbol() external view returns (string memory);
    function name() external view returns (string memory);
    function getOwner() external view returns (address);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address _owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);}

abstract contract Ownable {
    address internal owner;
    constructor(address _owner) {owner = _owner;}
    modifier onlyOwner() {require(isOwner(msg.sender), "!OWNER"); _;}
    function isOwner(address account) public view returns (bool) {return account == owner;}
    function transferOwnership(address payable adr) public onlyOwner {owner = adr; emit OwnershipTransferred(adr);}
    event OwnershipTransferred(address owner);
}

interface IFactory{
        function createPair(address tokenA, address tokenB) external returns (address pair);
        function getPair(address tokenA, address tokenB) external view returns (address pair);
}

interface IRouter {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);

    function removeLiquidityWithPermit(
        address tokenA,
        address tokenB,
        uint liquidity,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountA, uint amountB);

    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;

    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline) external;
}

contract YOLO is IERC20, Ownable {
    using SafeMath for uint256;
    string private constant _name = 'Yolo';
    string private constant _symbol = 'NFA';
    uint8 private constant _decimals = 9;
    uint256 private _totalSupply = 1000000000000 * (10 ** _decimals);
    uint256 private _maxTxAmountPercent = 300; // 10000;
    uint256 private _maxTransferPercent = 150;
    uint256 private _maxWalletPercent = 300;
    mapping (address => uint256) _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) public isFeeExempt;
    mapping (address => bool) private isBot;
    IRouter router;
    address public pair;
    bool private tradingAllowed = false;
    uint256 private liquidityFee = 0;
    uint256 private marketingFee = 0;
    uint256 private developmentFee = 1000;
    uint256 private burnFee = 0;
    uint256 private totalFee = 2000;
    uint256 private sellFee = 4000;
    uint256 private transferFee = 6000;
    uint256 private denominator = 10000;
    bool private swapEnabled = true;
    uint256 private swapTimes;
    bool private swapping;
    uint256 swapAmount = 2;
    uint256 private swapThreshold = ( _totalSupply * 959 ) / 100000;
    uint256 private minTokenAmount = ( _totalSupply * 10 ) / 100000;
    modifier lockTheSwap {swapping = true; _; swapping = false;}

    address internal constant DEAD = 0x000000000000000000000000000000000000dEaD;
    address internal constant development_receiver = 0xBc49EED849CddE70A5A16827bc8d4f67b32D7633; 
    address internal constant marketing_receiver = 0xBc49EED849CddE70A5A16827bc8d4f67b32D7633;
    address internal constant liquidity_receiver = 0xBc49EED849CddE70A5A16827bc8d4f67b32D7633;

    constructor() Ownable(msg.sender) {
        IRouter _router = IRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        address _pair = IFactory(_router.factory()).createPair(address(this), _router.WETH());
        router = _router;
        pair = _pair;
        isFeeExempt[address(this)] = true;
        isFeeExempt[liquidity_receiver] = true;
        isFeeExempt[marketing_receiver] = true;
        isFeeExempt[msg.sender] = true;
        _balances[msg.sender] = _totalSupply;
        emit Transfer(address(0), msg.sender, _totalSupply);
    }

    receive() external payable {}
    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 startTrading() external onlyOwner {tradingAllowed = true;}
    function getOwner() external view override returns (address) { return owner; }
    function balanceOf(address account) public view override returns (uint256) {return _balances[account];}
    function transfer(address recipient, uint256 amount) public override returns (bool) {_transfer(msg.sender, recipient, amount);return true;}
    function allowance(address owner, address spender) public view override returns (uint256) {return _allowances[owner][spender];}
    function isCont(address addr) internal view returns (bool) {uint size; assembly { size := extcodesize(addr) } return size > 0; }
    function setisBot(address _address, bool _enabled) external onlyOwner {isBot[_address] = _enabled;}
    function setisExempt(address _address, bool _enabled) external onlyOwner {isFeeExempt[_address] = _enabled;}
    function approve(address spender, uint256 amount) public override returns (bool) {_approve(msg.sender, spender, amount);return true;}
    function totalSupply() public view override returns (uint256) {return _totalSupply.sub(balanceOf(DEAD)).sub(balanceOf(address(0)));}
    function _maxWalletToken() public view returns (uint256) {return totalSupply() * _maxWalletPercent / denominator;}
    function _maxTxAmount() public view returns (uint256) {return totalSupply() * _maxTxAmountPercent / denominator;}
    function _maxTransferAmount() public view returns (uint256) {return totalSupply() * _maxTransferPercent / denominator;}

    function preTxCheck(address sender, address recipient, uint256 amount) internal view {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        require(amount > uint256(0), "Transfer amount must be greater than zero");
        require(amount <= balanceOf(sender),"You are trying to transfer more than your balance");
    }

    function _transfer(address sender, address recipient, uint256 amount) private {
        preTxCheck(sender, recipient, amount);
        checkTradingAllowed(sender, recipient);
        checkMaxWallet(sender, recipient, amount); 
        swapbackCounters(sender, recipient);
        checkTxLimit(sender, recipient, amount); 
        swapBack(sender, recipient, amount);
        _balances[sender] = _balances[sender].sub(amount);
        uint256 amountReceived = shouldTakeFee(sender, recipient) ? takeFee(sender, recipient, amount) : amount;
        _balances[recipient] = _balances[recipient].add(amountReceived);
        emit Transfer(sender, recipient, amountReceived);
    }

    function setStructure(uint256 _liquidity, uint256 _marketing, uint256 _burn, uint256 _development, uint256 _total, uint256 _sell, uint256 _trans) external onlyOwner {
        liquidityFee = _liquidity;
        marketingFee = _marketing;
        burnFee = _burn;
        developmentFee = _development;
        totalFee = _total;
        sellFee = _sell;
        transferFee = _trans;
        require(totalFee <= denominator.div(1) && sellFee <= denominator.div(1), "totalFee and sellFee cannot be more than 20%");
    }

    function setParameters(uint256 _buy, uint256 _trans, uint256 _wallet) external onlyOwner {
        uint256 newTx = (totalSupply() * _buy) / 10000;
        uint256 newTransfer = (totalSupply() * _trans) / 10000;
        uint256 newWallet = (totalSupply() * _wallet) / 10000;
        _maxTxAmountPercent = _buy;
        _maxTransferPercent = _trans;
        _maxWalletPercent = _wallet;
        uint256 limit = totalSupply().mul(5).div(1000);
        require(newTx >= limit && newTransfer >= limit && newWallet >= limit, "Max TXs and Max Wallet cannot be less than .5%");
    }

    function checkTradingAllowed(address sender, address recipient) internal view {
        if(!isFeeExempt[sender] && !isFeeExempt[recipient]){require(tradingAllowed, "tradingAllowed");}
    }
    
    function checkMaxWallet(address sender, address recipient, uint256 amount) internal view {
        if(!isFeeExempt[sender] && !isFeeExempt[recipient] && recipient != address(pair) && recipient != address(DEAD)){
            require((_balances[recipient].add(amount)) <= _maxWalletToken(), "Exceeds maximum wallet amount.");}
    }

    function swapbackCounters(address sender, address recipient) internal {
        if(recipient == pair && !isFeeExempt[sender]){swapTimes += uint256(1);}
    }

    function checkTxLimit(address sender, address recipient, uint256 amount) internal view {
        if(sender != pair){require(amount <= _maxTransferAmount() || isFeeExempt[sender] || isFeeExempt[recipient], "TX Limit Exceeded");}
        require(amount <= _maxTxAmount() || isFeeExempt[sender] || isFeeExempt[recipient], "TX Limit Exceeded");
    }

    function swapAndLiquify(uint256 tokens) private lockTheSwap {
        uint256 _denominator = (liquidityFee.add(1).add(marketingFee).add(developmentFee)).mul(2);
        uint256 tokensToAddLiquidityWith = tokens.mul(liquidityFee).div(_denominator);
        uint256 toSwap = tokens.sub(tokensToAddLiquidityWith);
        uint256 initialBalance = address(this).balance;
        swapTokensForETH(toSwap);
        uint256 deltaBalance = address(this).balance.sub(initialBalance);
        uint256 unitBalance= deltaBalance.div(_denominator.sub(liquidityFee));
        uint256 ETHToAddLiquidityWith = unitBalance.mul(liquidityFee);
        if(ETHToAddLiquidityWith > uint256(0)){addLiquidity(tokensToAddLiquidityWith, ETHToAddLiquidityWith); }
        uint256 marketingAmt = unitBalance.mul(2).mul(marketingFee);
        if(marketingAmt > 0){payable(marketing_receiver).transfer(marketingAmt);}
        uint256 remainingBalance = address(this).balance;
        if(remainingBalance > uint256(0)){payable(development_receiver).transfer(remainingBalance);}
    }

    function addLiquidity(uint256 tokenAmount, uint256 ETHAmount) private {
        _approve(address(this), address(router), tokenAmount);
        router.addLiquidityETH{value: ETHAmount}(
            address(this),
            tokenAmount,
            0,
            0,
            liquidity_receiver,
            block.timestamp);
    }

    function swapTokensForETH(uint256 tokenAmount) private {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = router.WETH();
        _approve(address(this), address(router), tokenAmount);
        router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp);
    }

    function shouldSwapBack(address sender, address recipient, uint256 amount) internal view returns (bool) {
        bool aboveMin = amount >= minTokenAmount;
        bool aboveThreshold = balanceOf(address(this)) >= swapThreshold;
        return !swapping && swapEnabled && tradingAllowed && aboveMin && !isFeeExempt[sender] && recipient == pair && swapTimes >= swapAmount && aboveThreshold;
    }

    function setSwapbackSettings(uint256 _swapAmount, uint256 _swapThreshold, uint256 _minTokenAmount) external onlyOwner {
        swapAmount = _swapAmount; swapThreshold = _totalSupply.mul(_swapThreshold).div(uint256(100000)); 
        minTokenAmount = _totalSupply.mul(_minTokenAmount).div(uint256(100000));
    }

    function swapBack(address sender, address recipient, uint256 amount) internal {
        if(shouldSwapBack(sender, recipient, amount)){swapAndLiquify(swapThreshold); swapTimes = uint256(0);}
    }

    function shouldTakeFee(address sender, address recipient) internal view returns (bool) {
        return !isFeeExempt[sender] && !isFeeExempt[recipient];
    }

    function getTotalFee(address sender, address recipient) internal view returns (uint256) {
        if(isBot[sender] || isBot[recipient]){return denominator.sub(uint256(100));}
        if(recipient == pair){return sellFee;}
        if(sender == pair){return totalFee;}
        return transferFee;
    }

    function takeFee(address sender, address recipient, uint256 amount) internal returns (uint256) {
        if(getTotalFee(sender, recipient) > 0){
        uint256 feeAmount = amount.div(denominator).mul(getTotalFee(sender, recipient));
        _balances[address(this)] = _balances[address(this)].add(feeAmount);
        emit Transfer(sender, address(this), feeAmount);
        if(burnFee > uint256(0)){_transfer(address(this), address(DEAD), amount.div(denominator).mul(burnFee));}
        return amount.sub(feeAmount);} return amount;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, msg.sender, _allowances[sender][msg.sender].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);
    }

}

Contract Security Audit

Contract ABI

[{"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":"address","name":"owner","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":"_maxTransferAmount","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":"_maxWalletToken","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":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isFeeExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buy","type":"uint256"},{"internalType":"uint256","name":"_trans","type":"uint256"},{"internalType":"uint256","name":"_wallet","type":"uint256"}],"name":"setParameters","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_liquidity","type":"uint256"},{"internalType":"uint256","name":"_marketing","type":"uint256"},{"internalType":"uint256","name":"_burn","type":"uint256"},{"internalType":"uint256","name":"_development","type":"uint256"},{"internalType":"uint256","name":"_total","type":"uint256"},{"internalType":"uint256","name":"_sell","type":"uint256"},{"internalType":"uint256","name":"_trans","type":"uint256"}],"name":"setStructure","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_swapAmount","type":"uint256"},{"internalType":"uint256","name":"_swapThreshold","type":"uint256"},{"internalType":"uint256","name":"_minTokenAmount","type":"uint256"}],"name":"setSwapbackSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setisBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setisExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startTrading","outputs":[],"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":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"adr","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052620000126009600a62000437565b620000239064e8d4a510006200044f565b600181815561012c60028181556096600355600491909155600a805460ff60a01b191690556000600b819055600c8190556103e8600d55600e556107d0600f55610fa06010556117706011556127106012556013805460ff1916909217909155601655620186a09062000099906103bf6200044f565b620000a5919062000469565b601755620186a0600154600a620000bd91906200044f565b620000c9919062000469565b601855348015620000d957600080fd5b50600080546001600160a01b031916331781556040805163c45a015560e01b81529051737a250d5630b4cf539739df2c5dacb4c659f2488d9291839163c45a0155916004808201926020929091908290030181865afa15801562000141573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200016791906200048c565b6001600160a01b031663c9c6539630846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001b5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001db91906200048c565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000229573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200024f91906200048c565b600980546001600160a01b038581166001600160a01b031992831617909255600a805492841692909116919091179055306000908152600760209081526040808320805460ff1990811660019081179092557f2b1a50b36ed502f0e203e069175267df8fe10a5a23e6695a04a8a2338b16932a8054821683179055338086528386208054909216831790915590546005845282852081905591519182529394507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050620004b7565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620003795781600019048211156200035d576200035d62000322565b808516156200036b57918102915b93841c93908002906200033d565b509250929050565b600082620003925750600162000431565b81620003a15750600062000431565b8160018114620003ba5760028114620003c557620003e5565b600191505062000431565b60ff841115620003d957620003d962000322565b50506001821b62000431565b5060208310610133831016604e8410600b84101617156200040a575081810a62000431565b62000416838362000338565b80600019048211156200042d576200042d62000322565b0290505b92915050565b60006200044860ff84168362000381565b9392505050565b808202811582820484141762000431576200043162000322565b6000826200048757634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156200049f57600080fd5b81516001600160a01b03811681146200044857600080fd5b611b4a80620004c76000396000f3fe6080604052600436106101445760003560e01c806348ff2b8b116100b657806395d89b411161006f57806395d89b41146103bb578063a8aa1b31146103e7578063a9059cbb14610407578063dd62ed3e14610427578063e94dd17c1461046d578063f2fde38b1461048d57600080fd5b806348ff2b8b146102e957806370a082311461030957806378109e541461033f5780637d1db4a514610354578063893d20e8146103695780638c41180e1461039b57600080fd5b806323b872dd1161010857806323b872dd14610219578063293230b8146102395780632f54bf6e1461024e578063313ce5671461027d57806334c5d2ce146102995780633f4218e0146102b957600080fd5b8063044019301461015057806306fdde0314610172578063095ea7b3146101b157806318160ddd146101e15780631f976b7e1461020457600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b5061017061016b3660046117b1565b6104ad565b005b34801561017e57600080fd5b50604080518082019091526004815263596f6c6f60e01b60208201525b6040516101a891906117fd565b60405180910390f35b3480156101bd57600080fd5b506101d16101cc366004611863565b61059b565b60405190151581526020016101a8565b3480156101ed57600080fd5b506101f66105b2565b6040519081526020016101a8565b34801561021057600080fd5b506101f6610623565b34801561022557600080fd5b506101d161023436600461188f565b610647565b34801561024557600080fd5b506101706106b1565b34801561025a57600080fd5b506101d16102693660046118d0565b6000546001600160a01b0391821691161490565b34801561028957600080fd5b50604051600981526020016101a8565b3480156102a557600080fd5b506101706102b43660046118ed565b6106f0565b3480156102c557600080fd5b506101d16102d43660046118d0565b60076020526000908152604090205460ff1681565b3480156102f557600080fd5b50610170610304366004611919565b610837565b34801561031557600080fd5b506101f66103243660046118d0565b6001600160a01b031660009081526005602052604090205490565b34801561034b57600080fd5b506101f661088c565b34801561036057600080fd5b506101f661089c565b34801561037557600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016101a8565b3480156103a757600080fd5b506101706103b6366004611919565b6108ac565b3480156103c757600080fd5b506040805180820190915260038152624e464160e81b602082015261019b565b3480156103f357600080fd5b50600a54610383906001600160a01b031681565b34801561041357600080fd5b506101d1610422366004611863565b610901565b34801561043357600080fd5b506101f6610442366004611957565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205490565b34801561047957600080fd5b506101706104883660046118ed565b61090e565b34801561049957600080fd5b506101706104a83660046118d0565b610974565b6000546001600160a01b031633146104e05760405162461bcd60e51b81526004016104d790611985565b60405180910390fd5b600b879055600c869055600e859055600d849055600f839055601082905560118190556012546105119060016109f2565b600f5411158015610531575060125461052b9060016109f2565b60105411155b6105925760405162461bcd60e51b815260206004820152602c60248201527f746f74616c46656520616e642073656c6c4665652063616e6e6f74206265206d60448201526b6f7265207468616e2032302560a01b60648201526084016104d7565b50505050505050565b60006105a83384846109fe565b5060015b92915050565b60056020527f05b8ccbb9d4d8fb16ea74ce3c29a41f1b461fbdaff4714a0d9a8eb05499746bc5461dead60009081527f7d509c07f0d4edcc2dd1b53aae68677132eb562dcba78e36381b63ccaf66e6ba54600154919261061e9290916106189190610b22565b90610b22565b905090565b60006012546003546106336105b2565b61063d91906119bb565b61061e91906119d2565b6000610654848484610b2e565b6106a684336106a185604051806060016040528060288152602001611aed602891396001600160a01b038a1660009081526006602090815260408083203384529091529020549190610c54565b6109fe565b5060015b9392505050565b6000546001600160a01b031633146106db5760405162461bcd60e51b81526004016104d790611985565b600a805460ff60a01b1916600160a01b179055565b6000546001600160a01b0316331461071a5760405162461bcd60e51b81526004016104d790611985565b6000612710846107286105b2565b61073291906119bb565b61073c91906119d2565b905060006127108461074c6105b2565b61075691906119bb565b61076091906119d2565b90506000612710846107706105b2565b61077a91906119bb565b61078491906119d2565b600287905560038690556004859055905060006107b66103e86107b060056107aa6105b2565b90610c80565b906109f2565b90508084101580156107c85750808310155b80156107d45750808210155b6105925760405162461bcd60e51b815260206004820152602e60248201527f4d61782054587320616e64204d61782057616c6c65742063616e6e6f7420626560448201526d206c657373207468616e202e352560901b60648201526084016104d7565b6000546001600160a01b031633146108615760405162461bcd60e51b81526004016104d790611985565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b60006012546004546106336105b2565b60006012546002546106336105b2565b6000546001600160a01b031633146108d65760405162461bcd60e51b81526004016104d790611985565b6001600160a01b03919091166000908152600860205260409020805460ff1916911515919091179055565b60006105a8338484610b2e565b6000546001600160a01b031633146109385760405162461bcd60e51b81526004016104d790611985565b601683905560015461095390620186a0906107b09085610c80565b60175560015461096c90620186a0906107b09084610c80565b601855505050565b6000546001600160a01b0316331461099e5760405162461bcd60e51b81526004016104d790611985565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a150565b60006106aa82846119d2565b6001600160a01b038316610a605760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104d7565b6001600160a01b038216610ac15760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104d7565b6001600160a01b0383811660008181526006602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006106aa82846119f4565b610b39838383610c8c565b610b438383610e3b565b610b4e838383610ed0565b610b588383610fc1565b610b63838383611018565b610b6e83838361114f565b6001600160a01b038316600090815260056020526040902054610b919082610b22565b6001600160a01b038416600090815260056020526040812091909155610bb78484611174565b610bc15781610bcc565b610bcc8484846111ba565b6001600160a01b038416600090815260056020526040902054909150610bf290826112a8565b6001600160a01b0380851660008181526005602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610c469085815260200190565b60405180910390a350505050565b60008184841115610c785760405162461bcd60e51b81526004016104d791906117fd565b505050900390565b60006106aa82846119bb565b6001600160a01b038316610cf05760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104d7565b6001600160a01b038216610d525760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104d7565b60008111610db45760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104d7565b6001600160a01b038316600090815260056020526040902054811115610e365760405162461bcd60e51b815260206004820152603160248201527f596f752061726520747279696e6720746f207472616e73666572206d6f7265206044820152707468616e20796f75722062616c616e636560781b60648201526084016104d7565b505050565b6001600160a01b03821660009081526007602052604090205460ff16158015610e7d57506001600160a01b03811660009081526007602052604090205460ff16155b15610ecc57600a54600160a01b900460ff16610ecc5760405162461bcd60e51b815260206004820152600e60248201526d1d1c98591a5b99d05b1b1bddd95960921b60448201526064016104d7565b5050565b6001600160a01b03831660009081526007602052604090205460ff16158015610f1257506001600160a01b03821660009081526007602052604090205460ff16155b8015610f2c5750600a546001600160a01b03838116911614155b8015610f4357506001600160a01b03821661dead14155b15610e3657610f5061088c565b6001600160a01b038316600090815260056020526040902054610f7390836112a8565b1115610e365760405162461bcd60e51b815260206004820152601e60248201527f45786365656473206d6178696d756d2077616c6c657420616d6f756e742e000060448201526064016104d7565b600a546001600160a01b038281169116148015610ff757506001600160a01b03821660009081526007602052604090205460ff16155b15610ecc5760016014600082825461100f9190611a07565b90915550505050565b600a546001600160a01b038481169116146110be57611035610623565b8111158061105b57506001600160a01b03831660009081526007602052604090205460ff165b8061107e57506001600160a01b03821660009081526007602052604090205460ff165b6110be5760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b60448201526064016104d7565b6110c661089c565b811115806110ec57506001600160a01b03831660009081526007602052604090205460ff165b8061110f57506001600160a01b03821660009081526007602052604090205460ff165b610e365760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b60448201526064016104d7565b61115a8383836112b4565b15610e365761116a601754611367565b6000601455505050565b6001600160a01b03821660009081526007602052604081205460ff161580156106aa5750506001600160a01b031660009081526007602052604090205460ff1615919050565b6000806111c785856114f2565b11156112a15760006111ea6111dc86866114f2565b6012546107aa9086906109f2565b3060009081526005602052604090205490915061120790826112a8565b30600081815260056020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112589085815260200190565b60405180910390a3600e541561128f5761128f3061dead61128a600e546107aa601254896109f290919063ffffffff16565b610b2e565b6112998382610b22565b9150506106aa565b5092915050565b60006106aa8284611a07565b6018546017543060009081526005602052604081205460155491938510159211159060ff161580156112e8575060135460ff165b80156112fd5750600a54600160a01b900460ff165b80156113065750815b801561132b57506001600160a01b03861660009081526007602052604090205460ff16155b80156113445750600a546001600160a01b038681169116145b8015611354575060165460145410155b801561135d5750805b9695505050505050565b6015805460ff19166001908117909155600d54600c54600b546000936113a1936002936107aa93919261139b9283916112a8565b906112a8565b905060006113be826107b0600b5486610c8090919063ffffffff16565b905060006113cc8483610b22565b9050476113d882611593565b60006113e44783610b22565b90506000611407611400600b5488610b2290919063ffffffff16565b83906109f2565b90506000611420600b5483610c8090919063ffffffff16565b905080156114325761143286826116ed565b600c54600090611447906107aa856002610c80565b905080156114925760405173bc49eed849cdde70a5a16827bc8d4f67b32d76339082156108fc029083906000818181858888f19350505050158015611490573d6000803e3d6000fd5b505b4780156114dc5760405173bc49eed849cdde70a5a16827bc8d4f67b32d76339082156108fc029083906000818181858888f193505050501580156114da573d6000803e3d6000fd5b505b50506015805460ff191690555050505050505050565b6001600160a01b03821660009081526008602052604081205460ff168061153157506001600160a01b03821660009081526008602052604090205460ff165b1561154b57601254611544906064610b22565b90506105ac565b600a546001600160a01b039081169083160361156a57506010546105ac565b600a546001600160a01b03908116908416036115895750600f546105ac565b5060115492915050565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106115c8576115c8611a1a565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611621573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116459190611a30565b8160018151811061165857611658611a1a565b6001600160a01b03928316602091820292909201015260095461167e91309116846109fe565b60095460405163791ac94760e01b81526001600160a01b039091169063791ac947906116b7908590600090869030904290600401611a4d565b600060405180830381600087803b1580156116d157600080fd5b505af11580156116e5573d6000803e3d6000fd5b505050505050565b6009546117059030906001600160a01b0316846109fe565b60095460405163f305d71960e01b815230600482015260248101849052600060448201819052606482015273bc49eed849cdde70a5a16827bc8d4f67b32d763360848201524260a48201526001600160a01b039091169063f305d71990839060c40160606040518083038185885af1158015611785573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906117aa9190611abe565b5050505050565b600080600080600080600060e0888a0312156117cc57600080fd5b505085359760208701359750604087013596606081013596506080810135955060a0810135945060c0013592509050565b600060208083528351808285015260005b8181101561182a5785810183015185820160400152820161180e565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461186057600080fd5b50565b6000806040838503121561187657600080fd5b82356118818161184b565b946020939093013593505050565b6000806000606084860312156118a457600080fd5b83356118af8161184b565b925060208401356118bf8161184b565b929592945050506040919091013590565b6000602082840312156118e257600080fd5b81356106aa8161184b565b60008060006060848603121561190257600080fd5b505081359360208301359350604090920135919050565b6000806040838503121561192c57600080fd5b82356119378161184b565b91506020830135801515811461194c57600080fd5b809150509250929050565b6000806040838503121561196a57600080fd5b82356119758161184b565b9150602083013561194c8161184b565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176105ac576105ac6119a5565b6000826119ef57634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156105ac576105ac6119a5565b808201808211156105ac576105ac6119a5565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611a4257600080fd5b81516106aa8161184b565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611a9d5784516001600160a01b031683529383019391830191600101611a78565b50506001600160a01b03969096166060850152505050608001529392505050565b600080600060608486031215611ad357600080fd5b835192506020840151915060408401519050925092509256fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220d4136f1ec469a30608fa295c9e0f9dc2ffabdbb780fd697407d08d882630a3f664736f6c63430008120033

Deployed Bytecode

0x6080604052600436106101445760003560e01c806348ff2b8b116100b657806395d89b411161006f57806395d89b41146103bb578063a8aa1b31146103e7578063a9059cbb14610407578063dd62ed3e14610427578063e94dd17c1461046d578063f2fde38b1461048d57600080fd5b806348ff2b8b146102e957806370a082311461030957806378109e541461033f5780637d1db4a514610354578063893d20e8146103695780638c41180e1461039b57600080fd5b806323b872dd1161010857806323b872dd14610219578063293230b8146102395780632f54bf6e1461024e578063313ce5671461027d57806334c5d2ce146102995780633f4218e0146102b957600080fd5b8063044019301461015057806306fdde0314610172578063095ea7b3146101b157806318160ddd146101e15780631f976b7e1461020457600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b5061017061016b3660046117b1565b6104ad565b005b34801561017e57600080fd5b50604080518082019091526004815263596f6c6f60e01b60208201525b6040516101a891906117fd565b60405180910390f35b3480156101bd57600080fd5b506101d16101cc366004611863565b61059b565b60405190151581526020016101a8565b3480156101ed57600080fd5b506101f66105b2565b6040519081526020016101a8565b34801561021057600080fd5b506101f6610623565b34801561022557600080fd5b506101d161023436600461188f565b610647565b34801561024557600080fd5b506101706106b1565b34801561025a57600080fd5b506101d16102693660046118d0565b6000546001600160a01b0391821691161490565b34801561028957600080fd5b50604051600981526020016101a8565b3480156102a557600080fd5b506101706102b43660046118ed565b6106f0565b3480156102c557600080fd5b506101d16102d43660046118d0565b60076020526000908152604090205460ff1681565b3480156102f557600080fd5b50610170610304366004611919565b610837565b34801561031557600080fd5b506101f66103243660046118d0565b6001600160a01b031660009081526005602052604090205490565b34801561034b57600080fd5b506101f661088c565b34801561036057600080fd5b506101f661089c565b34801561037557600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016101a8565b3480156103a757600080fd5b506101706103b6366004611919565b6108ac565b3480156103c757600080fd5b506040805180820190915260038152624e464160e81b602082015261019b565b3480156103f357600080fd5b50600a54610383906001600160a01b031681565b34801561041357600080fd5b506101d1610422366004611863565b610901565b34801561043357600080fd5b506101f6610442366004611957565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205490565b34801561047957600080fd5b506101706104883660046118ed565b61090e565b34801561049957600080fd5b506101706104a83660046118d0565b610974565b6000546001600160a01b031633146104e05760405162461bcd60e51b81526004016104d790611985565b60405180910390fd5b600b879055600c869055600e859055600d849055600f839055601082905560118190556012546105119060016109f2565b600f5411158015610531575060125461052b9060016109f2565b60105411155b6105925760405162461bcd60e51b815260206004820152602c60248201527f746f74616c46656520616e642073656c6c4665652063616e6e6f74206265206d60448201526b6f7265207468616e2032302560a01b60648201526084016104d7565b50505050505050565b60006105a83384846109fe565b5060015b92915050565b60056020527f05b8ccbb9d4d8fb16ea74ce3c29a41f1b461fbdaff4714a0d9a8eb05499746bc5461dead60009081527f7d509c07f0d4edcc2dd1b53aae68677132eb562dcba78e36381b63ccaf66e6ba54600154919261061e9290916106189190610b22565b90610b22565b905090565b60006012546003546106336105b2565b61063d91906119bb565b61061e91906119d2565b6000610654848484610b2e565b6106a684336106a185604051806060016040528060288152602001611aed602891396001600160a01b038a1660009081526006602090815260408083203384529091529020549190610c54565b6109fe565b5060015b9392505050565b6000546001600160a01b031633146106db5760405162461bcd60e51b81526004016104d790611985565b600a805460ff60a01b1916600160a01b179055565b6000546001600160a01b0316331461071a5760405162461bcd60e51b81526004016104d790611985565b6000612710846107286105b2565b61073291906119bb565b61073c91906119d2565b905060006127108461074c6105b2565b61075691906119bb565b61076091906119d2565b90506000612710846107706105b2565b61077a91906119bb565b61078491906119d2565b600287905560038690556004859055905060006107b66103e86107b060056107aa6105b2565b90610c80565b906109f2565b90508084101580156107c85750808310155b80156107d45750808210155b6105925760405162461bcd60e51b815260206004820152602e60248201527f4d61782054587320616e64204d61782057616c6c65742063616e6e6f7420626560448201526d206c657373207468616e202e352560901b60648201526084016104d7565b6000546001600160a01b031633146108615760405162461bcd60e51b81526004016104d790611985565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b60006012546004546106336105b2565b60006012546002546106336105b2565b6000546001600160a01b031633146108d65760405162461bcd60e51b81526004016104d790611985565b6001600160a01b03919091166000908152600860205260409020805460ff1916911515919091179055565b60006105a8338484610b2e565b6000546001600160a01b031633146109385760405162461bcd60e51b81526004016104d790611985565b601683905560015461095390620186a0906107b09085610c80565b60175560015461096c90620186a0906107b09084610c80565b601855505050565b6000546001600160a01b0316331461099e5760405162461bcd60e51b81526004016104d790611985565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a150565b60006106aa82846119d2565b6001600160a01b038316610a605760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104d7565b6001600160a01b038216610ac15760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104d7565b6001600160a01b0383811660008181526006602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006106aa82846119f4565b610b39838383610c8c565b610b438383610e3b565b610b4e838383610ed0565b610b588383610fc1565b610b63838383611018565b610b6e83838361114f565b6001600160a01b038316600090815260056020526040902054610b919082610b22565b6001600160a01b038416600090815260056020526040812091909155610bb78484611174565b610bc15781610bcc565b610bcc8484846111ba565b6001600160a01b038416600090815260056020526040902054909150610bf290826112a8565b6001600160a01b0380851660008181526005602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610c469085815260200190565b60405180910390a350505050565b60008184841115610c785760405162461bcd60e51b81526004016104d791906117fd565b505050900390565b60006106aa82846119bb565b6001600160a01b038316610cf05760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104d7565b6001600160a01b038216610d525760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104d7565b60008111610db45760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104d7565b6001600160a01b038316600090815260056020526040902054811115610e365760405162461bcd60e51b815260206004820152603160248201527f596f752061726520747279696e6720746f207472616e73666572206d6f7265206044820152707468616e20796f75722062616c616e636560781b60648201526084016104d7565b505050565b6001600160a01b03821660009081526007602052604090205460ff16158015610e7d57506001600160a01b03811660009081526007602052604090205460ff16155b15610ecc57600a54600160a01b900460ff16610ecc5760405162461bcd60e51b815260206004820152600e60248201526d1d1c98591a5b99d05b1b1bddd95960921b60448201526064016104d7565b5050565b6001600160a01b03831660009081526007602052604090205460ff16158015610f1257506001600160a01b03821660009081526007602052604090205460ff16155b8015610f2c5750600a546001600160a01b03838116911614155b8015610f4357506001600160a01b03821661dead14155b15610e3657610f5061088c565b6001600160a01b038316600090815260056020526040902054610f7390836112a8565b1115610e365760405162461bcd60e51b815260206004820152601e60248201527f45786365656473206d6178696d756d2077616c6c657420616d6f756e742e000060448201526064016104d7565b600a546001600160a01b038281169116148015610ff757506001600160a01b03821660009081526007602052604090205460ff16155b15610ecc5760016014600082825461100f9190611a07565b90915550505050565b600a546001600160a01b038481169116146110be57611035610623565b8111158061105b57506001600160a01b03831660009081526007602052604090205460ff165b8061107e57506001600160a01b03821660009081526007602052604090205460ff165b6110be5760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b60448201526064016104d7565b6110c661089c565b811115806110ec57506001600160a01b03831660009081526007602052604090205460ff165b8061110f57506001600160a01b03821660009081526007602052604090205460ff165b610e365760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b60448201526064016104d7565b61115a8383836112b4565b15610e365761116a601754611367565b6000601455505050565b6001600160a01b03821660009081526007602052604081205460ff161580156106aa5750506001600160a01b031660009081526007602052604090205460ff1615919050565b6000806111c785856114f2565b11156112a15760006111ea6111dc86866114f2565b6012546107aa9086906109f2565b3060009081526005602052604090205490915061120790826112a8565b30600081815260056020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112589085815260200190565b60405180910390a3600e541561128f5761128f3061dead61128a600e546107aa601254896109f290919063ffffffff16565b610b2e565b6112998382610b22565b9150506106aa565b5092915050565b60006106aa8284611a07565b6018546017543060009081526005602052604081205460155491938510159211159060ff161580156112e8575060135460ff165b80156112fd5750600a54600160a01b900460ff165b80156113065750815b801561132b57506001600160a01b03861660009081526007602052604090205460ff16155b80156113445750600a546001600160a01b038681169116145b8015611354575060165460145410155b801561135d5750805b9695505050505050565b6015805460ff19166001908117909155600d54600c54600b546000936113a1936002936107aa93919261139b9283916112a8565b906112a8565b905060006113be826107b0600b5486610c8090919063ffffffff16565b905060006113cc8483610b22565b9050476113d882611593565b60006113e44783610b22565b90506000611407611400600b5488610b2290919063ffffffff16565b83906109f2565b90506000611420600b5483610c8090919063ffffffff16565b905080156114325761143286826116ed565b600c54600090611447906107aa856002610c80565b905080156114925760405173bc49eed849cdde70a5a16827bc8d4f67b32d76339082156108fc029083906000818181858888f19350505050158015611490573d6000803e3d6000fd5b505b4780156114dc5760405173bc49eed849cdde70a5a16827bc8d4f67b32d76339082156108fc029083906000818181858888f193505050501580156114da573d6000803e3d6000fd5b505b50506015805460ff191690555050505050505050565b6001600160a01b03821660009081526008602052604081205460ff168061153157506001600160a01b03821660009081526008602052604090205460ff165b1561154b57601254611544906064610b22565b90506105ac565b600a546001600160a01b039081169083160361156a57506010546105ac565b600a546001600160a01b03908116908416036115895750600f546105ac565b5060115492915050565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106115c8576115c8611a1a565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611621573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116459190611a30565b8160018151811061165857611658611a1a565b6001600160a01b03928316602091820292909201015260095461167e91309116846109fe565b60095460405163791ac94760e01b81526001600160a01b039091169063791ac947906116b7908590600090869030904290600401611a4d565b600060405180830381600087803b1580156116d157600080fd5b505af11580156116e5573d6000803e3d6000fd5b505050505050565b6009546117059030906001600160a01b0316846109fe565b60095460405163f305d71960e01b815230600482015260248101849052600060448201819052606482015273bc49eed849cdde70a5a16827bc8d4f67b32d763360848201524260a48201526001600160a01b039091169063f305d71990839060c40160606040518083038185885af1158015611785573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906117aa9190611abe565b5050505050565b600080600080600080600060e0888a0312156117cc57600080fd5b505085359760208701359750604087013596606081013596506080810135955060a0810135945060c0013592509050565b600060208083528351808285015260005b8181101561182a5785810183015185820160400152820161180e565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461186057600080fd5b50565b6000806040838503121561187657600080fd5b82356118818161184b565b946020939093013593505050565b6000806000606084860312156118a457600080fd5b83356118af8161184b565b925060208401356118bf8161184b565b929592945050506040919091013590565b6000602082840312156118e257600080fd5b81356106aa8161184b565b60008060006060848603121561190257600080fd5b505081359360208301359350604090920135919050565b6000806040838503121561192c57600080fd5b82356119378161184b565b91506020830135801515811461194c57600080fd5b809150509250929050565b6000806040838503121561196a57600080fd5b82356119758161184b565b9150602083013561194c8161184b565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176105ac576105ac6119a5565b6000826119ef57634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156105ac576105ac6119a5565b808201808211156105ac576105ac6119a5565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611a4257600080fd5b81516106aa8161184b565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611a9d5784516001600160a01b031683529383019391830191600101611a78565b50506001600160a01b03969096166060850152505050608001529392505050565b600080600060608486031215611ad357600080fd5b835192506020840151915060408401519050925092509256fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220d4136f1ec469a30608fa295c9e0f9dc2ffabdbb780fd697407d08d882630a3f664736f6c63430008120033

Deployed Bytecode Sourcemap

5043:11957:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10311:527;;;;;;;;;;-1:-1:-1;10311:527:0;;;;;:::i;:::-;;:::i;:::-;;7407:67;;;;;;;;;;-1:-1:-1;7467:5:0;;;;;;;;;;;;-1:-1:-1;;;7467:5:0;;;;7407:67;;;;;;;:::i;:::-;;;;;;;;8527:133;;;;;;;;;;-1:-1:-1;8527:133:0;;;;;:::i;:::-;;:::i;:::-;;;1785:14:1;;1778:22;1760:41;;1748:2;1733:18;8527:133:0;1620:187:1;8666:132:0;;;;;;;;;;;;;:::i;:::-;;;1958:25:1;;;1946:2;1931:18;8666:132:0;1812:177:1;9043:119:0;;;;;;;;;;;;;:::i;16343:309::-;;;;;;;;;;-1:-1:-1;16343:309:0;;;;;:::i;:::-;;:::i;7630:67::-;;;;;;;;;;;;;:::i;3423:87::-;;;;;;;;;;-1:-1:-1;3423:87:0;;;;;:::i;:::-;3478:4;3503:5;-1:-1:-1;;;;;3492:16:0;;;3503:5;;3492:16;;3423:87;7557:67;;;;;;;;;;-1:-1:-1;7557:67:0;;5242:1;2849:36:1;;2837:2;2822:18;7557:67:0;2707:184:1;10846:584:0;;;;;;;;;;-1:-1:-1;10846:584:0;;;;;:::i;:::-;;:::i;5594:44::-;;;;;;;;;;-1:-1:-1;5594:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;8413:108;;;;;;;;;;-1:-1:-1;8413:108:0;;;;;:::i;:::-;;:::i;7787:103::-;;;;;;;;;;-1:-1:-1;7787:103:0;;;;;:::i;:::-;-1:-1:-1;;;;;7870:18:0;7853:7;7870:18;;;:9;:18;;;;;;;7787:103;8804:114;;;;;;;;;;;;;:::i;8924:113::-;;;;;;;;;;;;;:::i;7703:78::-;;;;;;;;;;-1:-1:-1;7755:7:0;7773:5;-1:-1:-1;;;;;7773:5:0;7703:78;;;-1:-1:-1;;;;;3802:32:1;;;3784:51;;3772:2;3757:18;7703:78:0;3638:203:1;8308:99:0;;;;;;;;;;-1:-1:-1;8308:99:0;;;;;:::i;:::-;;:::i;7480:71::-;;;;;;;;;;-1:-1:-1;7542:7:0;;;;;;;;;;;;-1:-1:-1;;;7542:7:0;;;;7480:71;;5712:19;;;;;;;;;;-1:-1:-1;5712:19:0;;;;-1:-1:-1;;;;;5712:19:0;;;7896:139;;;;;;;;;;-1:-1:-1;7896:139:0;;;;;:::i;:::-;;:::i;8041:127::-;;;;;;;;;;-1:-1:-1;8041:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;8139:18:0;;;8122:7;8139:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;8041:127;14780:315;;;;;;;;;;-1:-1:-1;14780:315:0;;;;;:::i;:::-;;:::i;3516:111::-;;;;;;;;;;-1:-1:-1;3516:111:0;;;;;:::i;:::-;;:::i;10311:527::-;3478:4;3503:5;-1:-1:-1;;;;;3503:5:0;3390:10;3492:16;3374:38;;;;-1:-1:-1;;;3374:38:0;;;;;;;:::i;:::-;;;;;;;;;10487:12:::1;:25:::0;;;10523:12:::1;:25:::0;;;10559:7:::1;:15:::0;;;10585:14:::1;:29:::0;;;10625:8:::1;:17:::0;;;10653:7:::1;:15:::0;;;10679:11:::1;:20:::0;;;10730:11:::1;::::0;:18:::1;::::0;-1:-1:-1;10730:15:0::1;:18::i;:::-;10718:8;;:30;;:63;;;;-1:-1:-1::0;10763:11:0::1;::::0;:18:::1;::::0;10779:1:::1;10763:15;:18::i;:::-;10752:7;;:29;;10718:63;10710:120;;;::::0;-1:-1:-1;;;10710:120:0;;5035:2:1;10710:120:0::1;::::0;::::1;5017:21:1::0;5074:2;5054:18;;;5047:30;5113:34;5093:18;;;5086:62;-1:-1:-1;;;5164:18:1;;;5157:42;5216:19;;10710:120:0::1;4833:408:1::0;10710:120:0::1;10311:527:::0;;;;;;;:::o;8527:133::-;8602:4;8609:37;8618:10;8630:7;8639:6;8609:8;:37::i;:::-;-1:-1:-1;8654:4:0;8527:133;;;;;:::o;8666:132::-;7870:9;:18;;;;6462:42;8719:7;7870:18;;;;;8736:12;;8719:7;;8736:60;;7870:18;;8736:33;;:12;:16;:33::i;:::-;:37;;:60::i;:::-;8729:67;;8666:132;:::o;9043:119::-;9094:7;9149:11;;9127:19;;9111:13;:11;:13::i;:::-;:35;;;;:::i;:::-;:49;;;;:::i;16343:309::-;16441:4;16458:36;16468:6;16476:9;16487:6;16458:9;:36::i;:::-;16505:117;16514:6;16522:10;16534:87;16570:6;16534:87;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;16534:19:0;;;;;;:11;:19;;;;;;;;16554:10;16534:31;;;;;;;;;:87;:35;:87::i;:::-;16505:8;:117::i;:::-;-1:-1:-1;16640:4:0;16343:309;;;;;;:::o;7630:67::-;3478:4;3503:5;-1:-1:-1;;;;;3503:5:0;3390:10;3492:16;3374:38;;;;-1:-1:-1;;;3374:38:0;;;;;;;:::i;:::-;7674:14:::1;:21:::0;;-1:-1:-1;;;;7674:21:0::1;-1:-1:-1::0;;;7674:21:0::1;::::0;;7630:67::o;10846:584::-;3478:4;3503:5;-1:-1:-1;;;;;3503:5:0;3390:10;3492:16;3374:38;;;;-1:-1:-1;;;3374:38:0;;;;;;;:::i;:::-;10946:13:::1;10987:5;10979:4;10963:13;:11;:13::i;:::-;:20;;;;:::i;:::-;10962:30;;;;:::i;:::-;10946:46;;11003:19;11052:5;11042:6;11026:13;:11;:13::i;:::-;:22;;;;:::i;:::-;11025:32;;;;:::i;:::-;11003:54;;11068:17;11116:5;11105:7;11089:13;:11;:13::i;:::-;:23;;;;:::i;:::-;11088:33;;;;:::i;:::-;11132:19;:26:::0;;;11169:19:::1;:28:::0;;;11208:17:::1;:27:::0;;;11068:53;-1:-1:-1;;11262:30:0::1;11287:4;11262:20;11280:1;11262:13;:11;:13::i;:::-;:17:::0;::::1;:20::i;:::-;:24:::0;::::1;:30::i;:::-;11246:46;;11320:5;11311;:14;;:38;;;;;11344:5;11329:11;:20;;11311:38;:60;;;;;11366:5;11353:9;:18;;11311:60;11303:119;;;::::0;-1:-1:-1;;;11303:119:0;;5975:2:1;11303:119:0::1;::::0;::::1;5957:21:1::0;6014:2;5994:18;;;5987:30;6053:34;6033:18;;;6026:62;-1:-1:-1;;;6104:18:1;;;6097:44;6158:19;;11303:119:0::1;5773:410:1::0;8413:108:0;3478:4;3503:5;-1:-1:-1;;;;;3503:5:0;3390:10;3492:16;3374:38;;;;-1:-1:-1;;;3374:38:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;8487:21:0;;;::::1;;::::0;;;:11:::1;:21;::::0;;;;:32;;-1:-1:-1;;8487:32:0::1;::::0;::::1;;::::0;;;::::1;::::0;;8413:108::o;8804:114::-;8852:7;8905:11;;8885:17;;8869:13;:11;:13::i;8924:113::-;8969:7;9024:11;;9002:19;;8986:13;:11;:13::i;8308:99::-;3478:4;3503:5;-1:-1:-1;;;;;3503:5:0;3390:10;3492:16;3374:38;;;;-1:-1:-1;;;3374:38:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;8379:15:0;;;::::1;;::::0;;;:5:::1;:15;::::0;;;;:26;;-1:-1:-1;;8379:26:0::1;::::0;::::1;;::::0;;;::::1;::::0;;8308:99::o;7896:139::-;7974:4;7981:40;7991:10;8003:9;8014:6;7981:9;:40::i;14780:315::-;3478:4;3503:5;-1:-1:-1;;;;;3503:5:0;3390:10;3492:16;3374:38;;;;-1:-1:-1;;;3374:38:0;;;;;;;:::i;:::-;14909:10:::1;:24:::0;;;14951:12:::1;::::0;:53:::1;::::0;14996:6:::1;::::0;14951:32:::1;::::0;14968:14;14951:16:::1;:32::i;:53::-;14935:13;:69:::0;15033:12:::1;::::0;:54:::1;::::0;15079:6:::1;::::0;15033:33:::1;::::0;15050:15;15033:16:::1;:33::i;:54::-;15016:14;:71:::0;-1:-1:-1;;;14780:315:0:o;3516:111::-;3478:4;3503:5;-1:-1:-1;;;;;3503:5:0;3390:10;3492:16;3374:38;;;;-1:-1:-1;;;3374:38:0;;;;;;;:::i;:::-;3582:5:::1;:11:::0;;-1:-1:-1;;;;;;3582:11:0::1;-1:-1:-1::0;;;;;3582:11:0;::::1;::::0;;::::1;::::0;;;3600:25:::1;::::0;3784:51:1;;;3600:25:0::1;::::0;3772:2:1;3757:18;3600:25:0::1;;;;;;;3516:111:::0;:::o;785:82::-;843:7;860:5;864:1;860;:5;:::i;16660:335::-;-1:-1:-1;;;;;16753:19:0;;16745:68;;;;-1:-1:-1;;;16745:68:0;;6606:2:1;16745:68:0;;;6588:21:1;6645:2;6625:18;;;6618:30;6684:34;6664:18;;;6657:62;-1:-1:-1;;;6735:18:1;;;6728:34;6779:19;;16745:68:0;6404:400:1;16745:68:0;-1:-1:-1;;;;;16832:21:0;;16824:68;;;;-1:-1:-1;;;16824:68:0;;7011:2:1;16824:68:0;;;6993:21:1;7050:2;7030:18;;;7023:30;7089:34;7069:18;;;7062:62;-1:-1:-1;;;7140:18:1;;;7133:32;7182:19;;16824:68:0;6809:398:1;16824:68:0;-1:-1:-1;;;;;16903:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;16955:32;;1958:25:1;;;16955:32:0;;1931:18:1;16955:32:0;;;;;;;16660:335;;;:::o;609:82::-;667:7;684:5;688:1;684;:5;:::i;9617:686::-;9706:37;9717:6;9725:9;9736:6;9706:10;:37::i;:::-;9754:38;9774:6;9782:9;9754:19;:38::i;:::-;9803:41;9818:6;9826:9;9837:6;9803:14;:41::i;:::-;9856:35;9873:6;9881:9;9856:16;:35::i;:::-;9902:39;9915:6;9923:9;9934:6;9902:12;:39::i;:::-;9953:35;9962:6;9970:9;9981:6;9953:8;:35::i;:::-;-1:-1:-1;;;;;10019:17:0;;;;;;:9;:17;;;;;;:29;;10041:6;10019:21;:29::i;:::-;-1:-1:-1;;;;;9999:17:0;;;;;;:9;:17;;;;;:49;;;;10084:32;10009:6;10106:9;10084:13;:32::i;:::-;:78;;10156:6;10084:78;;;10119:34;10127:6;10135:9;10146:6;10119:7;:34::i;:::-;-1:-1:-1;;;;;10196:20:0;;;;;;:9;:20;;;;;;10059:103;;-1:-1:-1;10196:40:0;;10059:103;10196:24;:40::i;:::-;-1:-1:-1;;;;;10173:20:0;;;;;;;:9;:20;;;;;;;:63;;;;10252:43;;;;;;;;;;10280:14;1958:25:1;;1946:2;1931:18;;1812:177;10252:43:0;;;;;;;;9695:608;9617:686;;;:::o;1822:162::-;1908:7;1954:12;1946:6;;;;1938:29;;;;-1:-1:-1;;;1938:29:0;;;;;;;;:::i;:::-;-1:-1:-1;;;1976:5:0;;;1822:162::o;697:82::-;755:7;772:5;776:1;772;:5;:::i;9170:439::-;-1:-1:-1;;;;;9274:20:0;;9266:70;;;;-1:-1:-1;;;9266:70:0;;7547:2:1;9266:70:0;;;7529:21:1;7586:2;7566:18;;;7559:30;7625:34;7605:18;;;7598:62;-1:-1:-1;;;7676:18:1;;;7669:35;7721:19;;9266:70:0;7345:401:1;9266:70:0;-1:-1:-1;;;;;9355:23:0;;9347:71;;;;-1:-1:-1;;;9347:71:0;;7953:2:1;9347:71:0;;;7935:21:1;7992:2;7972:18;;;7965:30;8031:34;8011:18;;;8004:62;-1:-1:-1;;;8082:18:1;;;8075:33;8125:19;;9347:71:0;7751:399:1;9347:71:0;9454:1;9437:6;:19;9429:73;;;;-1:-1:-1;;;9429:73:0;;8357:2:1;9429:73:0;;;8339:21:1;8396:2;8376:18;;;8369:30;8435:34;8415:18;;;8408:62;-1:-1:-1;;;8486:18:1;;;8479:39;8535:19;;9429:73:0;8155:405:1;9429:73:0;-1:-1:-1;;;;;7870:18:0;;7853:7;7870:18;;;:9;:18;;;;;;9521:6;:27;;9513:88;;;;-1:-1:-1;;;9513:88:0;;8767:2:1;9513:88:0;;;8749:21:1;8806:2;8786:18;;;8779:30;8845:34;8825:18;;;8818:62;-1:-1:-1;;;8896:18:1;;;8889:47;8953:19;;9513:88:0;8565:413:1;9513:88:0;9170:439;;;:::o;11438:191::-;-1:-1:-1;;;;;11531:19:0;;;;;;:11;:19;;;;;;;;11530:20;:47;;;;-1:-1:-1;;;;;;11555:22:0;;;;;;:11;:22;;;;;;;;11554:23;11530:47;11527:95;;;11587:14;;-1:-1:-1;;;11587:14:0;;;;11579:41;;;;-1:-1:-1;;;11579:41:0;;9185:2:1;11579:41:0;;;9167:21:1;9224:2;9204:18;;;9197:30;-1:-1:-1;;;9243:18:1;;;9236:44;9297:18;;11579:41:0;8983:338:1;11579:41:0;11438:191;;:::o;11641:333::-;-1:-1:-1;;;;;11745:19:0;;;;;;:11;:19;;;;;;;;11744:20;:47;;;;-1:-1:-1;;;;;;11769:22:0;;;;;;:11;:22;;;;;;;;11768:23;11744:47;:77;;;;-1:-1:-1;11816:4:0;;-1:-1:-1;;;;;11795:26:0;;;11816:4;;11795:26;;11744:77;:107;;;;-1:-1:-1;;;;;;11825:26:0;;6462:42;11825:26;;11744:107;11741:226;;;11913:17;:15;:17::i;:::-;-1:-1:-1;;;;;11876:20:0;;;;;;:9;:20;;;;;;:32;;11901:6;11876:24;:32::i;:::-;11875:55;;11867:98;;;;-1:-1:-1;;;11867:98:0;;9528:2:1;11867:98:0;;;9510:21:1;9567:2;9547:18;;;9540:30;9606:32;9586:18;;;9579:60;9656:18;;11867:98:0;9326:354:1;11982:159:0;12079:4;;-1:-1:-1;;;;;12066:17:0;;;12079:4;;12066:17;:41;;;;-1:-1:-1;;;;;;12088:19:0;;;;;;:11;:19;;;;;;;;12087:20;12066:41;12063:71;;;12130:1;12109:9;;:23;;;;;;;:::i;:::-;;;;-1:-1:-1;;11982:159:0;;:::o;12149:349::-;12260:4;;-1:-1:-1;;;;;12250:14:0;;;12260:4;;12250:14;12247:130;;12284:20;:18;:20::i;:::-;12274:6;:30;;:53;;;-1:-1:-1;;;;;;12308:19:0;;;;;;:11;:19;;;;;;;;12274:53;:79;;;-1:-1:-1;;;;;;12331:22:0;;;;;;:11;:22;;;;;;;;12274:79;12266:109;;;;-1:-1:-1;;;12266:109:0;;10017:2:1;12266:109:0;;;9999:21:1;10056:2;10036:18;;;10029:30;-1:-1:-1;;;10075:18:1;;;10068:47;10132:18;;12266:109:0;9815:341:1;12266:109:0;12405:14;:12;:14::i;:::-;12395:6;:24;;:47;;;-1:-1:-1;;;;;;12423:19:0;;;;;;:11;:19;;;;;;;;12395:47;:73;;;-1:-1:-1;;;;;;12446:22:0;;;;;;:11;:22;;;;;;;;12395:73;12387:103;;;;-1:-1:-1;;;12387:103:0;;10017:2:1;12387:103:0;;;9999:21:1;10056:2;10036:18;;;10029:30;-1:-1:-1;;;10075:18:1;;;10068:47;10132:18;;12387:103:0;9815:341:1;15103:197:0;15195:41;15210:6;15218:9;15229:6;15195:14;:41::i;:::-;15192:101;;;15238:29;15253:13;;15238:14;:29::i;:::-;15289:1;15269:9;:22;15103:197;;;:::o;15308:160::-;-1:-1:-1;;;;;15414:19:0;;15389:4;15414:19;;;:11;:19;;;;;;;;15413:20;:47;;;;-1:-1:-1;;;;;;;15438:22:0;;;;;:11;:22;;;;;;;;15437:23;;15308:160;-1:-1:-1;15308:160:0:o;15789:546::-;15875:7;15931:1;15898:30;15910:6;15918:9;15898:11;:30::i;:::-;:34;15895:418;;;15944:17;15964:59;15992:30;16004:6;16012:9;15992:11;:30::i;:::-;15975:11;;15964:23;;:6;;:10;:23::i;:59::-;16079:4;16061:24;;;;:9;:24;;;;;;15944:79;;-1:-1:-1;16061:39:0;;15944:79;16061:28;:39::i;:::-;16052:4;16034:24;;;;:9;:24;;;;;;;:66;;;;16116:42;;-1:-1:-1;;;;;16116:42:0;;;;;;;16148:9;1958:25:1;;1946:2;1931:18;;1812:177;16116:42:0;;;;;;;;16172:7;;:20;16169:104;;16194:77;16212:4;6462:42;16234:36;16262:7;;16234:23;16245:11;;16234:6;:10;;:23;;;;:::i;:36::-;16194:9;:77::i;:::-;16290:21;:6;16301:9;16290:10;:21::i;:::-;16283:28;;;;;15895:418;-1:-1:-1;16321:6:0;15789:546;-1:-1:-1;;15789:546:0:o;521:82::-;579:7;596:5;600:1;596;:5;:::i;14373:399::-;14514:14;;14589:13;;14579:4;14471;7870:18;;;:9;:18;;;;;;14621:8;;14471:4;;14504:24;;;;-1:-1:-1;14561:41:0;;14621:8;;14620:9;:24;;;;-1:-1:-1;14633:11:0;;;;14620:24;:42;;;;-1:-1:-1;14648:14:0;;-1:-1:-1;;;14648:14:0;;;;14620:42;:54;;;;;14666:8;14620:54;:78;;;;-1:-1:-1;;;;;;14679:19:0;;;;;;:11;:19;;;;;;;;14678:20;14620:78;:99;;;;-1:-1:-1;14715:4:0;;-1:-1:-1;;;;;14702:17:0;;;14715:4;;14702:17;14620:99;:126;;;;;14736:10;;14723:9;;:23;;14620:126;:144;;;;;14750:14;14620:144;14613:151;14373:399;-1:-1:-1;;;;;;14373:399:0:o;12506:1066::-;6383:8;:15;;-1:-1:-1;;6383:15:0;6394:4;6383:15;;;;;;12643:14:::1;::::0;12625:12:::1;::::0;12601::::1;::::0;6383:8;;12600:66:::1;::::0;12664:1:::1;::::0;12601:57:::1;::::0;12643:14;;12601:37:::1;::::0;;;:16:::1;:19::i;:::-;:23:::0;::::1;:37::i;12600:66::-;12577:89;;12677:32;12712:42;12741:12;12712:24;12723:12;;12712:6;:10;;:24;;;;:::i;:42::-;12677:77:::0;-1:-1:-1;12765:14:0::1;12782:36;:6:::0;12677:77;12782:10:::1;:36::i;:::-;12765:53:::0;-1:-1:-1;12854:21:0::1;12886:24;12765:53:::0;12886:16:::1;:24::i;:::-;12921:20;12944:41;:21;12970:14:::0;12944:25:::1;:41::i;:::-;12921:64;;12996:19;13017:48;13034:30;13051:12;;13034;:16;;:30;;;;:::i;:::-;13017:12:::0;;:16:::1;:48::i;:::-;12996:69;;13076:29;13108;13124:12;;13108:11;:15;;:29;;;;:::i;:::-;13076:61:::0;-1:-1:-1;13151:34:0;;13148:103:::1;;13187:61;13200:24;13226:21;13187:12;:61::i;:::-;13307:12;::::0;13261:20:::1;::::0;13284:36:::1;::::0;:18:::1;:11:::0;13300:1:::1;13284:15;:18::i;:36::-;13261:59:::0;-1:-1:-1;13334:16:0;;13331:73:::1;;13352:50;::::0;6657:42:::1;::::0;13352:50;::::1;;;::::0;13389:12;;13352:50:::1;::::0;;;13389:12;6657:42;13352:50;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;13331:73;13441:21;13476:29:::0;;13473:92:::1;;13507:56;::::0;6560:42:::1;::::0;13507:56;::::1;;;::::0;13546:16;;13507:56:::1;::::0;;;13546:16;6560:42;13507:56;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;13473:92;-1:-1:-1::0;;6403:8:0;:16;;-1:-1:-1;;6403:16:0;;;-1:-1:-1;;;;;;;;12506:1066:0:o;15476:305::-;-1:-1:-1;;;;;15578:13:0;;15555:7;15578:13;;;:5;:13;;;;;;;;;:33;;-1:-1:-1;;;;;;15595:16:0;;;;;;:5;:16;;;;;;;;15578:33;15575:76;;;15620:11;;:29;;15644:3;15620:15;:29::i;:::-;15613:36;;;;15575:76;15677:4;;-1:-1:-1;;;;;15677:4:0;;;15664:17;;;;15661:38;;-1:-1:-1;15690:7:0;;15683:14;;15661:38;15722:4;;-1:-1:-1;;;;;15722:4:0;;;15712:14;;;;15709:36;;-1:-1:-1;15735:8:0;;15728:15;;15709:36;-1:-1:-1;15762:11:0;;15476:305;;;;:::o;13931:434::-;14021:16;;;14035:1;14021:16;;;;;;;;13997:21;;14021:16;;;;;;;;;;-1:-1:-1;14021:16:0;13997:40;;14066:4;14048;14053:1;14048:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;14048:23:0;;;:7;;;;;;;;;;:23;;;;14092:6;;:13;;;-1:-1:-1;;;14092:13:0;;;;:6;;;;;:11;;:13;;;;;14048:7;;14092:13;;;;;:6;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14082:4;14087:1;14082:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;14082:23:0;;;:7;;;;;;;;;:23;14148:6;;14116:53;;14133:4;;14148:6;14157:11;14116:8;:53::i;:::-;14180:6;;:177;;-1:-1:-1;;;14180:177:0;;-1:-1:-1;;;;;14180:6:0;;;;:57;;:177;;14252:11;;14180:6;;14294:4;;14321;;14341:15;;14180:177;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13986:379;13931:434;:::o;13580:343::-;13693:6;;13661:53;;13678:4;;-1:-1:-1;;;;;13693:6:0;13702:11;13661:8;:53::i;:::-;13725:6;;:190;;-1:-1:-1;;;13725:190:0;;13788:4;13725:190;;;12007:34:1;12057:18;;;12050:34;;;13725:6:0;12100:18:1;;;12093:34;;;12143:18;;;12136:34;6753:42:0;12186:19:1;;;12179:44;13899:15:0;12239:19:1;;;12232:35;-1:-1:-1;;;;;13725:6:0;;;;:22;;13755:9;;11941:19:1;;13725:190:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;13580:343;;:::o;14:592:1:-;127:6;135;143;151;159;167;175;228:3;216:9;207:7;203:23;199:33;196:53;;;245:1;242;235:12;196:53;-1:-1:-1;;268:23:1;;;338:2;323:18;;310:32;;-1:-1:-1;389:2:1;374:18;;361:32;;440:2;425:18;;412:32;;-1:-1:-1;491:3:1;476:19;;463:33;;-1:-1:-1;543:3:1;528:19;;515:33;;-1:-1:-1;595:3:1;580:19;567:33;;-1:-1:-1;14:592:1;-1:-1:-1;14:592:1:o;611:548::-;723:4;752:2;781;770:9;763:21;813:6;807:13;856:6;851:2;840:9;836:18;829:34;881:1;891:140;905:6;902:1;899:13;891:140;;;1000:14;;;996:23;;990:30;966:17;;;985:2;962:26;955:66;920:10;;891:140;;;895:3;1080:1;1075:2;1066:6;1055:9;1051:22;1047:31;1040:42;1150:2;1143;1139:7;1134:2;1126:6;1122:15;1118:29;1107:9;1103:45;1099:54;1091:62;;;;611:548;;;;:::o;1164:131::-;-1:-1:-1;;;;;1239:31:1;;1229:42;;1219:70;;1285:1;1282;1275:12;1219:70;1164:131;:::o;1300:315::-;1368:6;1376;1429:2;1417:9;1408:7;1404:23;1400:32;1397:52;;;1445:1;1442;1435:12;1397:52;1484:9;1471:23;1503:31;1528:5;1503:31;:::i;:::-;1553:5;1605:2;1590:18;;;;1577:32;;-1:-1:-1;;;1300:315:1:o;1994:456::-;2071:6;2079;2087;2140:2;2128:9;2119:7;2115:23;2111:32;2108:52;;;2156:1;2153;2146:12;2108:52;2195:9;2182:23;2214:31;2239:5;2214:31;:::i;:::-;2264:5;-1:-1:-1;2321:2:1;2306:18;;2293:32;2334:33;2293:32;2334:33;:::i;:::-;1994:456;;2386:7;;-1:-1:-1;;;2440:2:1;2425:18;;;;2412:32;;1994:456::o;2455:247::-;2514:6;2567:2;2555:9;2546:7;2542:23;2538:32;2535:52;;;2583:1;2580;2573:12;2535:52;2622:9;2609:23;2641:31;2666:5;2641:31;:::i;2896:316::-;2973:6;2981;2989;3042:2;3030:9;3021:7;3017:23;3013:32;3010:52;;;3058:1;3055;3048:12;3010:52;-1:-1:-1;;3081:23:1;;;3151:2;3136:18;;3123:32;;-1:-1:-1;3202:2:1;3187:18;;;3174:32;;2896:316;-1:-1:-1;2896:316:1:o;3217:416::-;3282:6;3290;3343:2;3331:9;3322:7;3318:23;3314:32;3311:52;;;3359:1;3356;3349:12;3311:52;3398:9;3385:23;3417:31;3442:5;3417:31;:::i;:::-;3467:5;-1:-1:-1;3524:2:1;3509:18;;3496:32;3566:15;;3559:23;3547:36;;3537:64;;3597:1;3594;3587:12;3537:64;3620:7;3610:17;;;3217:416;;;;;:::o;3846:388::-;3914:6;3922;3975:2;3963:9;3954:7;3950:23;3946:32;3943:52;;;3991:1;3988;3981:12;3943:52;4030:9;4017:23;4049:31;4074:5;4049:31;:::i;:::-;4099:5;-1:-1:-1;4156:2:1;4141:18;;4128:32;4169:33;4128:32;4169:33;:::i;4499:329::-;4701:2;4683:21;;;4740:1;4720:18;;;4713:29;-1:-1:-1;;;4773:2:1;4758:18;;4751:36;4819:2;4804:18;;4499:329::o;5246:127::-;5307:10;5302:3;5298:20;5295:1;5288:31;5338:4;5335:1;5328:15;5362:4;5359:1;5352:15;5378:168;5451:9;;;5482;;5499:15;;;5493:22;;5479:37;5469:71;;5520:18;;:::i;5551:217::-;5591:1;5617;5607:132;;5661:10;5656:3;5652:20;5649:1;5642:31;5696:4;5693:1;5686:15;5724:4;5721:1;5714:15;5607:132;-1:-1:-1;5753:9:1;;5551:217::o;7212:128::-;7279:9;;;7300:11;;;7297:37;;;7314:18;;:::i;9685:125::-;9750:9;;;9771:10;;;9768:36;;;9784:18;;:::i;10293:127::-;10354:10;10349:3;10345:20;10342:1;10335:31;10385:4;10382:1;10375:15;10409:4;10406:1;10399:15;10425:251;10495:6;10548:2;10536:9;10527:7;10523:23;10519:32;10516:52;;;10564:1;10561;10554:12;10516:52;10596:9;10590:16;10615:31;10640:5;10615:31;:::i;10681:980::-;10943:4;10991:3;10980:9;10976:19;11022:6;11011:9;11004:25;11048:2;11086:6;11081:2;11070:9;11066:18;11059:34;11129:3;11124:2;11113:9;11109:18;11102:31;11153:6;11188;11182:13;11219:6;11211;11204:22;11257:3;11246:9;11242:19;11235:26;;11296:2;11288:6;11284:15;11270:29;;11317:1;11327:195;11341:6;11338:1;11335:13;11327:195;;;11406:13;;-1:-1:-1;;;;;11402:39:1;11390:52;;11497:15;;;;11462:12;;;;11438:1;11356:9;11327:195;;;-1:-1:-1;;;;;;;11578:32:1;;;;11573:2;11558:18;;11551:60;-1:-1:-1;;;11642:3:1;11627:19;11620:35;11539:3;10681:980;-1:-1:-1;;;10681:980:1:o;12278:306::-;12366:6;12374;12382;12435:2;12423:9;12414:7;12410:23;12406:32;12403:52;;;12451:1;12448;12441:12;12403:52;12480:9;12474:16;12464:26;;12530:2;12519:9;12515:18;12509:25;12499:35;;12574:2;12563:9;12559:18;12553:25;12543:35;;12278:306;;;;;:::o

Swarm Source

ipfs://d4136f1ec469a30608fa295c9e0f9dc2ffabdbb780fd697407d08d882630a3f6

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
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.