ETH Price: $3,395.98 (+6.21%)
Gas: 25 Gwei

Contract

0xAbcb3895D66252e96a73dfD4803BD2D889E4d984
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve197233122024-04-24 5:59:3582 days ago1713938375IN
0xAbcb3895...889E4d984
0 ETH0.0005644512.17370079
Approve188883082023-12-29 2:36:47199 days ago1703817407IN
0xAbcb3895...889E4d984
0 ETH0.000920219.7337303
Approve187140242023-12-04 15:54:35224 days ago1701705275IN
0xAbcb3895...889E4d984
0 ETH0.0015951854.48235658
Approve186677652023-11-28 4:32:23230 days ago1701145943IN
0xAbcb3895...889E4d984
0 ETH0.0015009332.18743124
Approve186677602023-11-28 4:31:23230 days ago1701145883IN
0xAbcb3895...889E4d984
0 ETH0.0017812838.4070995
Approve186569302023-11-26 16:06:59232 days ago1701014819IN
0xAbcb3895...889E4d984
0 ETH0.0012535727.06386887
Approve186566252023-11-26 15:04:59232 days ago1701011099IN
0xAbcb3895...889E4d984
0 ETH0.0015160632.51193739
Approve184455342023-10-28 1:50:47261 days ago1698457847IN
0xAbcb3895...889E4d984
0 ETH0.000625913.42244263
Approve184455332023-10-28 1:50:35261 days ago1698457835IN
0xAbcb3895...889E4d984
0 ETH0.0005061410.92460958
Approve184455282023-10-28 1:49:35261 days ago1698457775IN
0xAbcb3895...889E4d984
0 ETH0.0005995312.8569252
Approve181881442023-09-22 1:33:11297 days ago1695346391IN
0xAbcb3895...889E4d984
0 ETH0.000377058.0964258
Approve178061992023-07-30 13:39:23351 days ago1690724363IN
0xAbcb3895...889E4d984
0 ETH0.0007769316.78232336
Transfer178061912023-07-30 13:37:47351 days ago1690724267IN
0xAbcb3895...889E4d984
0 ETH0.0008296917.86680608
Approve178035752023-07-30 4:50:11351 days ago1690692611IN
0xAbcb3895...889E4d984
0 ETH0.0009342420.03480488
Approve178035652023-07-30 4:48:11351 days ago1690692491IN
0xAbcb3895...889E4d984
0 ETH0.0006686414.44303471
Transfer178035592023-07-30 4:46:59351 days ago1690692419IN
0xAbcb3895...889E4d984
0 ETH0.0006687814.40531299
Transfer178035552023-07-30 4:46:11351 days ago1690692371IN
0xAbcb3895...889E4d984
0 ETH0.0006907814.87920582
Approve178035462023-07-30 4:44:23351 days ago1690692263IN
0xAbcb3895...889E4d984
0 ETH0.0006757114.59592725
Transfer178035422023-07-30 4:43:35351 days ago1690692215IN
0xAbcb3895...889E4d984
0 ETH0.0006256513.47642185
Transfer178035312023-07-30 4:41:23351 days ago1690692083IN
0xAbcb3895...889E4d984
0 ETH0.0007609916.39161373
Transfer178035272023-07-30 4:40:35351 days ago1690692035IN
0xAbcb3895...889E4d984
0 ETH0.0007232215.58208165
Transfer178035222023-07-30 4:39:35351 days ago1690691975IN
0xAbcb3895...889E4d984
0 ETH0.0007016215.11672677
Transfer178035182023-07-30 4:38:47351 days ago1690691927IN
0xAbcb3895...889E4d984
0 ETH0.0006509314.02084099
Approve178035092023-07-30 4:36:59351 days ago1690691819IN
0xAbcb3895...889E4d984
0 ETH0.0006652114.36899993
Transfer178034992023-07-30 4:34:59351 days ago1690691699IN
0xAbcb3895...889E4d984
0 ETH0.0006396313.77748418
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
197834492024-05-02 15:51:4774 days ago1714665107
0xAbcb3895...889E4d984
0.00025664 ETH
197834492024-05-02 15:51:4774 days ago1714665107
0xAbcb3895...889E4d984
0.00025664 ETH
197238652024-04-24 7:51:3582 days ago1713945095
0xAbcb3895...889E4d984
0.00026343 ETH
197238652024-04-24 7:51:3582 days ago1713945095
0xAbcb3895...889E4d984
0.00026343 ETH
197233502024-04-24 6:07:2382 days ago1713938843
0xAbcb3895...889E4d984
0.00026616 ETH
197233502024-04-24 6:07:2382 days ago1713938843
0xAbcb3895...889E4d984
0.00026616 ETH
188883112023-12-29 2:37:23199 days ago1703817443
0xAbcb3895...889E4d984
0.00033133 ETH
188883112023-12-29 2:37:23199 days ago1703817443
0xAbcb3895...889E4d984
0.00033133 ETH
187165972023-12-05 0:31:59223 days ago1701736319
0xAbcb3895...889E4d984
0.00035409 ETH
187165972023-12-05 0:31:59223 days ago1701736319
0xAbcb3895...889E4d984
0.00035409 ETH
186683702023-11-28 6:34:47230 days ago1701153287
0xAbcb3895...889E4d984
0.00029364 ETH
186683702023-11-28 6:34:47230 days ago1701153287
0xAbcb3895...889E4d984
0.00029364 ETH
186594932023-11-27 0:44:11231 days ago1701045851
0xAbcb3895...889E4d984
0.00035383 ETH
186594932023-11-27 0:44:11231 days ago1701045851
0xAbcb3895...889E4d984
0.00035383 ETH
186569342023-11-26 16:07:47232 days ago1701014867
0xAbcb3895...889E4d984
0.00039262 ETH
186569342023-11-26 16:07:47232 days ago1701014867
0xAbcb3895...889E4d984
0.00039262 ETH
184455792023-10-28 1:59:47261 days ago1698458387
0xAbcb3895...889E4d984
0.0002707 ETH
184455792023-10-28 1:59:47261 days ago1698458387
0xAbcb3895...889E4d984
0.0002707 ETH
184455472023-10-28 1:53:23261 days ago1698458003
0xAbcb3895...889E4d984
0.00029683 ETH
184455472023-10-28 1:53:23261 days ago1698458003
0xAbcb3895...889E4d984
0.00029683 ETH
184455452023-10-28 1:52:59261 days ago1698457979
0xAbcb3895...889E4d984
0.00033774 ETH
184455452023-10-28 1:52:59261 days ago1698457979
0xAbcb3895...889E4d984
0.00033774 ETH
184455312023-10-28 1:50:11261 days ago1698457811
0xAbcb3895...889E4d984
0.0003372 ETH
184455312023-10-28 1:50:11261 days ago1698457811
0xAbcb3895...889E4d984
0.0003372 ETH
181881452023-09-22 1:33:23297 days ago1695346403
0xAbcb3895...889E4d984
0.00030787 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
KEK

Compiler Version
v0.8.6+commit.11564f7e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-07-20
*/

// SPDX-License-Identifier: MIT

// Website: https://www.lordkek.vip
// Telegram: https://t.me/realkekcoin
// Twitter: https://twitter.com/LordKeKCoin

pragma solidity ^0.8.6;
pragma experimental ABIEncoderV2;

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

library SafeMath {
    
    function 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 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 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;
        }
    }
}

abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }

    function _msgData() internal view virtual returns (bytes calldata) {
        return msg.data;
    }
}

abstract contract Ownable is Context {
    address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor() {
        _setOwner(_msgSender());
    }

    function owner() public view virtual returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function renounceOwnership() public virtual onlyOwner {
        _setOwner(address(0));
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _setOwner(newOwner);
    }

    function _setOwner(address newOwner) private {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

library Address {
    function isContract(address account) internal view returns (bool) {
        uint256 size;
        assembly {
            size := extcodesize(account)
        }
        return size > 0;
    }

    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");

        (bool success, ) = recipient.call{value: amount}("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }

    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionCall(target, data, "Address: low-level call failed");
    }

    function functionCall(
        address target,
        bytes memory data,
        string memory errorMessage) internal returns (bytes memory) {
        return functionCallWithValue(target, data, 0, errorMessage);
    }

    function functionCallWithValue(
        address target,
        bytes memory data,
        uint256 value) internal returns (bytes memory) {
        return functionCallWithValue(target, data, value, "Address: low-level call with value failed");
    }

    function functionCallWithValue(
        address target,
        bytes memory data,
        uint256 value,
        string memory errorMessage) internal returns (bytes memory) {
        require(address(this).balance >= value, "Address: insufficient balance for call");
        require(isContract(target), "Address: call to non-contract");

        (bool success, bytes memory returndata) = target.call{value: value}(data);
        return verifyCallResult(success, returndata, errorMessage);
    }

    function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) {
        return functionStaticCall(target, data, "Address: low-level static call failed");
    }

    function functionStaticCall(
        address target,
        bytes memory data,
        string memory errorMessage) internal view returns (bytes memory) {
        require(isContract(target), "Address: static call to non-contract");

        (bool success, bytes memory returndata) = target.staticcall(data);
        return verifyCallResult(success, returndata, errorMessage);
    }

    function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionDelegateCall(target, data, "Address: low-level delegate call failed");
    }

    function functionDelegateCall(
        address target,
        bytes memory data,
        string memory errorMessage) internal returns (bytes memory) {
        require(isContract(target), "Address: delegate call to non-contract");

        (bool success, bytes memory returndata) = target.delegatecall(data);
        return verifyCallResult(success, returndata, errorMessage);
    }

    function verifyCallResult(
        bool success,
        bytes memory returndata,
        string memory errorMessage) internal pure returns (bytes memory) {
        if (success) {
            return returndata;
        } else {
            if (returndata.length > 0) {

                assembly {
                    let returndata_size := mload(returndata)
                    revert(add(32, returndata), returndata_size)
                }
            } else {
                revert(errorMessage);
            }
        }
    }
}

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

interface IUniswapV2Pair {
    function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast);
    function factory() external view returns (address);
    function token0() external view returns (address);
    function token1() external view returns (address);
    function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external;
    
    event Swap(
        address indexed sender,
        uint amount0In,
        uint amount1In,
        uint amount0Out,
        uint amount1Out,
        address indexed to
    );
}

interface IUniswapV2Router02 {
    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;
    function swapETHForExactTokens(
        uint amountOut, 
        address[] calldata path, 
        address to, 
        uint deadline
    ) external payable returns (uint[] memory amounts);
    function swapExactETHForTokens(
        uint amountOutMin, 
        address[] calldata path, 
        address to, 
        uint deadline
    ) external payable returns (uint[] memory amounts);
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function swapTokensForExactETH(
        uint amountOut, 
        uint amountInMax, 
        address[] calldata path, 
        address to, 
        uint deadline
    ) external returns (uint[] memory amounts);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
     function addLiquidity(
        address tokenA,
        address tokenB,
        uint256 amountADesired,
        uint256 amountBDesired,
        uint256 amountAMin,
        uint256 amountBMin,
        address to,
        uint256 deadline
    )external
        returns (
            uint256 amountA,
            uint256 amountB,
            uint256 liquidity
        );
    function removeLiquidity(
        address tokenA,
        address tokenB,
        uint liquidity,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
        ) external returns (uint amountA, uint amountB);
}

contract KEK is Context, IERC20, Ownable {
    using SafeMath for uint256;
    using Address for address;

    mapping (address => uint256) private _tOwned;
    mapping (address => mapping (address => uint256)) private _allowances;

    mapping (address => bool) public _isExcludedFromFee;
    mapping(address => bool) public ammPairs;
   
    uint8 private _decimals = 18;
    uint256 private _tTotal;
    uint256 public supply = 77777777 * (10 ** 18);

    string private _name = "Lord Kek";
    string private _symbol = "KEK";

    uint256 public _marketFee = 1;

    IUniswapV2Router02 public uniswapV2Router;

    IERC20 public uniswapV2Pair;
    address public weth;

    address constant rootAddress = address(0x000000000000000000000000000000000000dEaD);
    address ethPair;

    address router = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
    address public marketAddress = 0xf109fCA700Af1Fe1569930f319d3e46bFFb22275;

    uint256 launchedBlock;

    bool public swapEnabled = true;
    uint256 public swapThreshold = supply / 10000;
    bool inSwap;
    modifier swapping() { inSwap = true; _; inSwap = false; }
    
    constructor () {
        address _owner = owner();
        _tOwned[_owner] = supply;
        _tTotal = supply;
        
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[address(msg.sender)] = true;
        _isExcludedFromFee[rootAddress] = true;
        _isExcludedFromFee[_owner] = true;
        _isExcludedFromFee[marketAddress] = true;

        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(router);
        uniswapV2Router = _uniswapV2Router;

        ethPair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());
        weth = _uniswapV2Router.WETH();

        uniswapV2Pair = IERC20(ethPair);
        ammPairs[ethPair] = true;

        emit Transfer(address(0), _owner, _tTotal);
    }

    function name() public view returns (string memory) {
        return _name;
    }

    function symbol() public view returns (string memory) {
        return _symbol;
    }

    function decimals() public view returns (uint8) {
        return _decimals;
    }

    function totalSupply() public view override returns (uint256) {
        return _tTotal;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return _tOwned[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 increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue));
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero"));
        return true;
    }

    function _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 _take(uint256 tValue,address from,address to) private {
        _tOwned[to] = _tOwned[to].add(tValue);
        emit Transfer(from, to, tValue);
    }

    receive() external payable {}

    struct Param{
        bool takeFee;
        uint tTransferAmount;
        uint tContract;
    }

    function _initParam(uint256 tAmount,Param memory param) private view  { 
        uint tFee;
        if (block.number - launchedBlock > 25) {
            tFee = tAmount * _marketFee / 100;
        } else {
            tFee = tAmount * 20 / 100;  
        }
        param.tContract = tFee;
        param.tTransferAmount = tAmount.sub(tFee);
    }

    function _takeFee(Param memory param,address from)private {
        if( param.tContract > 0 ){
            _take(param.tContract, from, address(this));
        }
    }

    function shouldSwapBack(address to) internal view returns (bool) {
        return (ammPairs[to]) 
        && !inSwap
        && swapEnabled
        && balanceOf(address(this)) >= swapThreshold;
    }

    function swapBack() internal swapping {
        _allowances[address(this)][address(uniswapV2Router)] = swapThreshold;
        
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = weth;
        uint256 balanceBefore = address(this).balance;

        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            swapThreshold,
            0,
            path,
            address(this),
            block.timestamp
        );

        uint256 amountEth = address(this).balance.sub(balanceBefore);

        payable(marketAddress).transfer(amountEth); 
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(amount > 0, "ERC20: transfer amount must be greater than zero");

        bool takeFee;
        Param memory param;
        param.tTransferAmount = amount;

        if(ammPairs[to] && IERC20(to).totalSupply() == 0 && launchedBlock == 0){
            launchedBlock = block.number;
        }

        if(inSwap || _isExcludedFromFee[from] || _isExcludedFromFee[to]){
            return _tokenTransfer(from,to,amount,param); 
        }

        if(ammPairs[to] || ammPairs[from]){
            takeFee = true;
        }

        if(shouldSwapBack(to)){ swapBack(); }

        param.takeFee = takeFee;
        if( takeFee ){
            _initParam(amount,param);
        }
        
        _tokenTransfer(from,to,amount,param);
    }

    function _tokenTransfer(address sender, address recipient, uint256 tAmount,Param memory param) private {
        _tOwned[sender] = _tOwned[sender].sub(tAmount);
        _tOwned[recipient] = _tOwned[recipient].add(param.tTransferAmount);

        emit Transfer(sender, recipient, param.tTransferAmount);

        if(param.takeFee == true){
            _takeFee(param,sender);
        }
    }

}

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":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":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_marketFee","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":"","type":"address"}],"name":"ammPairs","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"supply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"weth","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

6005805460ff191660121790556a405615bd5e98512f24000060075560c060405260086080819052674c6f7264204b656b60c01b60a090815262000045919081620004a3565b50604080518082019091526003808252624b454b60e81b60209092019182526200007291600991620004a3565b506001600a819055600f80546001600160a01b0319908116737a250d5630b4cf539739df2c5dacb4c659f2488d179091556010805490911673f109fca700af1fe1569930f319d3e46bffb222751790556012805460ff19169091179055600754620000e190612710906200057b565b601355348015620000f157600080fd5b50620000fd3362000453565b600080546007546001600160a01b0391821680845260016020818152604080872085905560069490945530865260038152838620805460ff19908116841790915533875284872080548216841790557f262bb27bbdd95c1cdc8e16957e36e38579ea44f7f6413dd7a9c75939def06b2c8054821684179055838752848720805482168417905560105486168752958490208054909616909117909455600f54600b80546001600160a01b03191691909416908117909355815163c45a015560e01b815291519093839263c45a01559260048281019392829003018186803b158015620001e857600080fd5b505afa158015620001fd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000223919062000549565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200026c57600080fd5b505afa15801562000281573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002a7919062000549565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b158015620002f057600080fd5b505af115801562000305573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200032b919062000549565b600e60006101000a8154816001600160a01b0302191690836001600160a01b03160217905550806001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200038b57600080fd5b505afa158015620003a0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003c6919062000549565b600d80546001600160a01b03199081166001600160a01b0393841617909155600e54600c80549184169190921681179091556000908152600460209081526040808320805460ff191660011790556006549051908152928516927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050620005db565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b828054620004b1906200059e565b90600052602060002090601f016020900481019282620004d5576000855562000520565b82601f10620004f057805160ff191683800117855562000520565b8280016001018555821562000520579182015b828111156200052057825182559160200191906001019062000503565b506200052e92915062000532565b5090565b5b808211156200052e576000815560010162000533565b6000602082840312156200055c57600080fd5b81516001600160a01b03811681146200057457600080fd5b9392505050565b6000826200059957634e487b7160e01b600052601260045260246000fd5b500490565b600181811c90821680620005b357607f821691505b60208210811415620005d557634e487b7160e01b600052602260045260246000fd5b50919050565b61127d80620005eb6000396000f3fe60806040526004361061014f5760003560e01c806370a08231116100b657806395d89b411161006f57806395d89b41146103c6578063a457c2d7146103db578063a72905a2146103fb578063a9059cbb1461042b578063dd62ed3e1461044b578063f2fde38b1461049157600080fd5b806370a08231146102f5578063715018a61461032b578063768dc7101461034257806384d6ff2f146103725780638da5cb5b1461038857806395623641146103a657600080fd5b806323b872dd1161010857806323b872dd14610239578063313ce56714610259578063395093511461027b5780633fc8cef31461029b57806349bd5a5e146102bb5780636ddd1713146102db57600080fd5b80630445b6671461015b578063047fc9aa1461018457806306fdde031461019a578063095ea7b3146101bc5780631694505e146101ec57806318160ddd1461022457600080fd5b3661015657005b600080fd5b34801561016757600080fd5b5061017160135481565b6040519081526020015b60405180910390f35b34801561019057600080fd5b5061017160075481565b3480156101a657600080fd5b506101af6104b1565b60405161017b919061105d565b3480156101c857600080fd5b506101dc6101d736600461101a565b610543565b604051901515815260200161017b565b3480156101f857600080fd5b50600b5461020c906001600160a01b031681565b6040516001600160a01b03909116815260200161017b565b34801561023057600080fd5b50600654610171565b34801561024557600080fd5b506101dc610254366004610fde565b610559565b34801561026557600080fd5b5060055460405160ff909116815260200161017b565b34801561028757600080fd5b506101dc61029636600461101a565b6105c2565b3480156102a757600080fd5b50600d5461020c906001600160a01b031681565b3480156102c757600080fd5b50600c5461020c906001600160a01b031681565b3480156102e757600080fd5b506012546101dc9060ff1681565b34801561030157600080fd5b50610171610310366004610f90565b6001600160a01b031660009081526001602052604090205490565b34801561033757600080fd5b506103406105f8565b005b34801561034e57600080fd5b506101dc61035d366004610f90565b60036020526000908152604090205460ff1681565b34801561037e57600080fd5b50610171600a5481565b34801561039457600080fd5b506000546001600160a01b031661020c565b3480156103b257600080fd5b5060105461020c906001600160a01b031681565b3480156103d257600080fd5b506101af610663565b3480156103e757600080fd5b506101dc6103f636600461101a565b610672565b34801561040757600080fd5b506101dc610416366004610f90565b60046020526000908152604090205460ff1681565b34801561043757600080fd5b506101dc61044636600461101a565b6106c1565b34801561045757600080fd5b50610171610466366004610fab565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561049d57600080fd5b506103406104ac366004610f90565b6106ce565b6060600880546104c090611193565b80601f01602080910402602001604051908101604052809291908181526020018280546104ec90611193565b80156105395780601f1061050e57610100808354040283529160200191610539565b820191906000526020600020905b81548152906001019060200180831161051c57829003601f168201915b5050505050905090565b6000610550338484610799565b50600192915050565b60006105668484846108be565b6105b884336105b3856040518060600160405280602881526020016111fb602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610b32565b610799565b5060019392505050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916105509185906105b39086610b5e565b6000546001600160a01b031633146106575760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6106616000610b71565b565b6060600980546104c090611193565b600061055033846105b385604051806060016040528060258152602001611223602591393360009081526002602090815260408083206001600160a01b038d1684529091529020549190610b32565b60006105503384846108be565b6000546001600160a01b031633146107285760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161064e565b6001600160a01b03811661078d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161064e565b61079681610b71565b50565b6001600160a01b0383166107fb5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161064e565b6001600160a01b03821661085c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161064e565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0383166109225760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161064e565b6000811161098b5760405162461bcd60e51b815260206004820152603060248201527f45524332303a207472616e7366657220616d6f756e74206d757374206265206760448201526f726561746572207468616e207a65726f60801b606482015260840161064e565b60408051606081018252600080825281830181905260208083018590526001600160a01b0386168252600490529182205460ff168015610a395750836001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156109ff57600080fd5b505afa158015610a13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a379190611044565b155b8015610a455750601154155b15610a4f57436011555b60145460ff1680610a7857506001600160a01b03851660009081526003602052604090205460ff165b80610a9b57506001600160a01b03841660009081526003602052604090205460ff165b15610ab357610aac85858584610bc1565b5050505050565b6001600160a01b03841660009081526004602052604090205460ff1680610af257506001600160a01b03851660009081526004602052604090205460ff165b15610afc57600191505b610b0584610c91565b15610b1257610b12610ced565b811580158252610b2657610b268382610e63565b610aac85858584610bc1565b60008184841115610b565760405162461bcd60e51b815260040161064e919061105d565b505050900390565b6000610b6a8284611123565b9392505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038416600090815260016020526040902054610be49083610ed4565b6001600160a01b0380861660009081526001602090815260408083209490945584015191861681529190912054610c1a91610b5e565b6001600160a01b03808516600081815260016020908152604091829020949094558484015190519081529092918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a38051151560011415610c8b57610c8b8185610ee0565b50505050565b6001600160a01b03811660009081526004602052604081205460ff168015610cbc575060145460ff16155b8015610cca575060125460ff165b8015610ce757506013543060009081526001602052604090205410155b92915050565b6014805460ff19166001179055601354306000908152600260208181526040808420600b546001600160a01b031685528252808420949094558351828152606081018552929390830190803683370190505090503081600081518110610d5557610d556111e4565b6001600160a01b039283166020918202929092010152600d54825191169082906001908110610d8657610d866111e4565b6001600160a01b039283166020918202929092010152600b5460135460405163791ac94760e01b81524793929092169163791ac94791610dd1916000908790309042906004016110b2565b600060405180830381600087803b158015610deb57600080fd5b505af1158015610dff573d6000803e3d6000fd5b505050506000610e188247610ed490919063ffffffff16565b6010546040519192506001600160a01b03169082156108fc029083906000818181858888f19350505050158015610e53573d6000803e3d6000fd5b50506014805460ff191690555050565b6000601960115443610e75919061117c565b1115610e9c576064600a5484610e8b919061115d565b610e95919061113b565b9050610eb6565b6064610ea984601461115d565b610eb3919061113b565b90505b60408201819052610ec78382610ed4565b6020909201919091525050565b6000610b6a828461117c565b604082015115610ef957610ef982604001518230610efd565b5050565b6001600160a01b038116600090815260016020526040902054610f209084610b5e565b6001600160a01b0380831660008181526001602052604090819020939093559151908416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906108b19087815260200190565b80356001600160a01b0381168114610f8b57600080fd5b919050565b600060208284031215610fa257600080fd5b610b6a82610f74565b60008060408385031215610fbe57600080fd5b610fc783610f74565b9150610fd560208401610f74565b90509250929050565b600080600060608486031215610ff357600080fd5b610ffc84610f74565b925061100a60208501610f74565b9150604084013590509250925092565b6000806040838503121561102d57600080fd5b61103683610f74565b946020939093013593505050565b60006020828403121561105657600080fd5b5051919050565b600060208083528351808285015260005b8181101561108a5785810183015185820160400152820161106e565b8181111561109c576000604083870101525b50601f01601f1916929092016040019392505050565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156111025784516001600160a01b0316835293830193918301916001016110dd565b50506001600160a01b03969096166060850152505050608001529392505050565b60008219821115611136576111366111ce565b500190565b60008261115857634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611177576111776111ce565b500290565b60008282101561118e5761118e6111ce565b500390565b600181811c908216806111a757607f821691505b602082108114156111c857634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fdfe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212206f8977a6362cf93fd7de8ab5b5140a05f95b0fab9710ae1f829466edd4ecec0764736f6c63430008060033

Deployed Bytecode

0x60806040526004361061014f5760003560e01c806370a08231116100b657806395d89b411161006f57806395d89b41146103c6578063a457c2d7146103db578063a72905a2146103fb578063a9059cbb1461042b578063dd62ed3e1461044b578063f2fde38b1461049157600080fd5b806370a08231146102f5578063715018a61461032b578063768dc7101461034257806384d6ff2f146103725780638da5cb5b1461038857806395623641146103a657600080fd5b806323b872dd1161010857806323b872dd14610239578063313ce56714610259578063395093511461027b5780633fc8cef31461029b57806349bd5a5e146102bb5780636ddd1713146102db57600080fd5b80630445b6671461015b578063047fc9aa1461018457806306fdde031461019a578063095ea7b3146101bc5780631694505e146101ec57806318160ddd1461022457600080fd5b3661015657005b600080fd5b34801561016757600080fd5b5061017160135481565b6040519081526020015b60405180910390f35b34801561019057600080fd5b5061017160075481565b3480156101a657600080fd5b506101af6104b1565b60405161017b919061105d565b3480156101c857600080fd5b506101dc6101d736600461101a565b610543565b604051901515815260200161017b565b3480156101f857600080fd5b50600b5461020c906001600160a01b031681565b6040516001600160a01b03909116815260200161017b565b34801561023057600080fd5b50600654610171565b34801561024557600080fd5b506101dc610254366004610fde565b610559565b34801561026557600080fd5b5060055460405160ff909116815260200161017b565b34801561028757600080fd5b506101dc61029636600461101a565b6105c2565b3480156102a757600080fd5b50600d5461020c906001600160a01b031681565b3480156102c757600080fd5b50600c5461020c906001600160a01b031681565b3480156102e757600080fd5b506012546101dc9060ff1681565b34801561030157600080fd5b50610171610310366004610f90565b6001600160a01b031660009081526001602052604090205490565b34801561033757600080fd5b506103406105f8565b005b34801561034e57600080fd5b506101dc61035d366004610f90565b60036020526000908152604090205460ff1681565b34801561037e57600080fd5b50610171600a5481565b34801561039457600080fd5b506000546001600160a01b031661020c565b3480156103b257600080fd5b5060105461020c906001600160a01b031681565b3480156103d257600080fd5b506101af610663565b3480156103e757600080fd5b506101dc6103f636600461101a565b610672565b34801561040757600080fd5b506101dc610416366004610f90565b60046020526000908152604090205460ff1681565b34801561043757600080fd5b506101dc61044636600461101a565b6106c1565b34801561045757600080fd5b50610171610466366004610fab565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561049d57600080fd5b506103406104ac366004610f90565b6106ce565b6060600880546104c090611193565b80601f01602080910402602001604051908101604052809291908181526020018280546104ec90611193565b80156105395780601f1061050e57610100808354040283529160200191610539565b820191906000526020600020905b81548152906001019060200180831161051c57829003601f168201915b5050505050905090565b6000610550338484610799565b50600192915050565b60006105668484846108be565b6105b884336105b3856040518060600160405280602881526020016111fb602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610b32565b610799565b5060019392505050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916105509185906105b39086610b5e565b6000546001600160a01b031633146106575760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6106616000610b71565b565b6060600980546104c090611193565b600061055033846105b385604051806060016040528060258152602001611223602591393360009081526002602090815260408083206001600160a01b038d1684529091529020549190610b32565b60006105503384846108be565b6000546001600160a01b031633146107285760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161064e565b6001600160a01b03811661078d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161064e565b61079681610b71565b50565b6001600160a01b0383166107fb5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161064e565b6001600160a01b03821661085c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161064e565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0383166109225760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161064e565b6000811161098b5760405162461bcd60e51b815260206004820152603060248201527f45524332303a207472616e7366657220616d6f756e74206d757374206265206760448201526f726561746572207468616e207a65726f60801b606482015260840161064e565b60408051606081018252600080825281830181905260208083018590526001600160a01b0386168252600490529182205460ff168015610a395750836001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156109ff57600080fd5b505afa158015610a13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a379190611044565b155b8015610a455750601154155b15610a4f57436011555b60145460ff1680610a7857506001600160a01b03851660009081526003602052604090205460ff165b80610a9b57506001600160a01b03841660009081526003602052604090205460ff165b15610ab357610aac85858584610bc1565b5050505050565b6001600160a01b03841660009081526004602052604090205460ff1680610af257506001600160a01b03851660009081526004602052604090205460ff165b15610afc57600191505b610b0584610c91565b15610b1257610b12610ced565b811580158252610b2657610b268382610e63565b610aac85858584610bc1565b60008184841115610b565760405162461bcd60e51b815260040161064e919061105d565b505050900390565b6000610b6a8284611123565b9392505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038416600090815260016020526040902054610be49083610ed4565b6001600160a01b0380861660009081526001602090815260408083209490945584015191861681529190912054610c1a91610b5e565b6001600160a01b03808516600081815260016020908152604091829020949094558484015190519081529092918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a38051151560011415610c8b57610c8b8185610ee0565b50505050565b6001600160a01b03811660009081526004602052604081205460ff168015610cbc575060145460ff16155b8015610cca575060125460ff165b8015610ce757506013543060009081526001602052604090205410155b92915050565b6014805460ff19166001179055601354306000908152600260208181526040808420600b546001600160a01b031685528252808420949094558351828152606081018552929390830190803683370190505090503081600081518110610d5557610d556111e4565b6001600160a01b039283166020918202929092010152600d54825191169082906001908110610d8657610d866111e4565b6001600160a01b039283166020918202929092010152600b5460135460405163791ac94760e01b81524793929092169163791ac94791610dd1916000908790309042906004016110b2565b600060405180830381600087803b158015610deb57600080fd5b505af1158015610dff573d6000803e3d6000fd5b505050506000610e188247610ed490919063ffffffff16565b6010546040519192506001600160a01b03169082156108fc029083906000818181858888f19350505050158015610e53573d6000803e3d6000fd5b50506014805460ff191690555050565b6000601960115443610e75919061117c565b1115610e9c576064600a5484610e8b919061115d565b610e95919061113b565b9050610eb6565b6064610ea984601461115d565b610eb3919061113b565b90505b60408201819052610ec78382610ed4565b6020909201919091525050565b6000610b6a828461117c565b604082015115610ef957610ef982604001518230610efd565b5050565b6001600160a01b038116600090815260016020526040902054610f209084610b5e565b6001600160a01b0380831660008181526001602052604090819020939093559151908416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906108b19087815260200190565b80356001600160a01b0381168114610f8b57600080fd5b919050565b600060208284031215610fa257600080fd5b610b6a82610f74565b60008060408385031215610fbe57600080fd5b610fc783610f74565b9150610fd560208401610f74565b90509250929050565b600080600060608486031215610ff357600080fd5b610ffc84610f74565b925061100a60208501610f74565b9150604084013590509250925092565b6000806040838503121561102d57600080fd5b61103683610f74565b946020939093013593505050565b60006020828403121561105657600080fd5b5051919050565b600060208083528351808285015260005b8181101561108a5785810183015185820160400152820161106e565b8181111561109c576000604083870101525b50601f01601f1916929092016040019392505050565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156111025784516001600160a01b0316835293830193918301916001016110dd565b50506001600160a01b03969096166060850152505050608001529392505050565b60008219821115611136576111366111ce565b500190565b60008261115857634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611177576111776111ce565b500290565b60008282101561118e5761118e6111ce565b500390565b600181811c908216806111a757607f821691505b602082108114156111c857634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fdfe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212206f8977a6362cf93fd7de8ab5b5140a05f95b0fab9710ae1f829466edd4ecec0764736f6c63430008060033

Deployed Bytecode Sourcemap

11064:7239:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12094:45;;;;;;;;;;;;;;;;;;;5431:25:1;;;5419:2;5404:18;12094:45:0;;;;;;;;11483;;;;;;;;;;;;;;;;13053:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;13884:161::-;;;;;;;;;;-1:-1:-1;13884:161:0;;;;;:::i;:::-;;:::i;:::-;;;1802:14:1;;1795:22;1777:41;;1765:2;1750:18;13884:161:0;1732:92:1;11654:41:0;;;;;;;;;;-1:-1:-1;11654:41:0;;;;-1:-1:-1;;;;;11654:41:0;;;;;;-1:-1:-1;;;;;1593:32:1;;;1575:51;;1563:2;1548:18;11654:41:0;1530:102:1;13330:95:0;;;;;;;;;;-1:-1:-1;13410:7:0;;13330:95;;14053:313;;;;;;;;;;-1:-1:-1;14053:313:0;;;;;:::i;:::-;;:::i;13239:83::-;;;;;;;;;;-1:-1:-1;13305:9:0;;13239:83;;13305:9;;;;6594:36:1;;6582:2;6567:18;13239:83:0;6549:87:1;14374:218:0;;;;;;;;;;-1:-1:-1;14374:218:0;;;;;:::i;:::-;;:::i;11738:19::-;;;;;;;;;;-1:-1:-1;11738:19:0;;;;-1:-1:-1;;;;;11738:19:0;;;11704:27;;;;;;;;;;-1:-1:-1;11704:27:0;;;;-1:-1:-1;;;;;11704:27:0;;;12057:30;;;;;;;;;;-1:-1:-1;12057:30:0;;;;;;;;13433:117;;;;;;;;;;-1:-1:-1;13433:117:0;;;;;:::i;:::-;-1:-1:-1;;;;;13526:16:0;13499:7;13526:16;;;:7;:16;;;;;;;13433:117;3913:94;;;;;;;;;;;;;:::i;:::-;;11308:51;;;;;;;;;;-1:-1:-1;11308:51:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;11616:29;;;;;;;;;;;;;;;;3690:87;;;;;;;;;;-1:-1:-1;3736:7:0;3763:6;-1:-1:-1;;;;;3763:6:0;3690:87;;11945:73;;;;;;;;;;-1:-1:-1;11945:73:0;;;;-1:-1:-1;;;;;11945:73:0;;;13144:87;;;;;;;;;;;;;:::i;14600:269::-;;;;;;;;;;-1:-1:-1;14600:269:0;;;;;:::i;:::-;;:::i;11366:40::-;;;;;;;;;;-1:-1:-1;11366:40:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;13558:167;;;;;;;;;;-1:-1:-1;13558:167:0;;;;;:::i;:::-;;:::i;13733:143::-;;;;;;;;;;-1:-1:-1;13733:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;13841:18:0;;;13814:7;13841:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;13733:143;4015:192;;;;;;;;;;-1:-1:-1;4015:192:0;;;;;:::i;:::-;;:::i;13053:83::-;13090:13;13123:5;13116:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13053:83;:::o;13884:161::-;13959:4;13976:39;3327:10;13999:7;14008:6;13976:8;:39::i;:::-;-1:-1:-1;14033:4:0;13884:161;;;;:::o;14053:313::-;14151:4;14168:36;14178:6;14186:9;14197:6;14168:9;:36::i;:::-;14215:121;14224:6;3327:10;14246:89;14284:6;14246:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;14246:19:0;;;;;;:11;:19;;;;;;;;3327:10;14246:33;;;;;;;;;;:37;:89::i;:::-;14215:8;:121::i;:::-;-1:-1:-1;14354:4:0;14053:313;;;;;:::o;14374:218::-;3327:10;14462:4;14511:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;14511:34:0;;;;;;;;;;14462:4;;14479:83;;14502:7;;14511:50;;14550:10;14511:38;:50::i;3913:94::-;3736:7;3763:6;-1:-1:-1;;;;;3763:6:0;3327:10;3825:23;3817:68;;;;-1:-1:-1;;;3817:68:0;;4315:2:1;3817:68:0;;;4297:21:1;;;4334:18;;;4327:30;4393:34;4373:18;;;4366:62;4445:18;;3817:68:0;;;;;;;;;3978:21:::1;3996:1;3978:9;:21::i;:::-;3913:94::o:0;13144:87::-;13183:13;13216:7;13209:14;;;;;:::i;14600:269::-;14693:4;14710:129;3327:10;14733:7;14742:96;14781:15;14742:96;;;;;;;;;;;;;;;;;3327:10;14742:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;14742:34:0;;;;;;;;;;;;:38;:96::i;13558:167::-;13636:4;13653:42;3327:10;13677:9;13688:6;13653:9;:42::i;4015:192::-;3736:7;3763:6;-1:-1:-1;;;;;3763:6:0;3327:10;3825:23;3817:68;;;;-1:-1:-1;;;3817:68:0;;4315:2:1;3817:68:0;;;4297:21:1;;;4334:18;;;4327:30;4393:34;4373:18;;;4366:62;4445:18;;3817:68:0;4287:182:1;3817:68:0;-1:-1:-1;;;;;4104:22:0;::::1;4096:73;;;::::0;-1:-1:-1;;;4096:73:0;;3088:2:1;4096:73:0::1;::::0;::::1;3070:21:1::0;3127:2;3107:18;;;3100:30;3166:34;3146:18;;;3139:62;-1:-1:-1;;;3217:18:1;;;3210:36;3263:19;;4096:73:0::1;3060:228:1::0;4096:73:0::1;4180:19;4190:8;4180:9;:19::i;:::-;4015:192:::0;:::o;14877:337::-;-1:-1:-1;;;;;14970:19:0;;14962:68;;;;-1:-1:-1;;;14962:68:0;;5082:2:1;14962:68:0;;;5064:21:1;5121:2;5101:18;;;5094:30;5160:34;5140:18;;;5133:62;-1:-1:-1;;;5211:18:1;;;5204:34;5255:19;;14962:68:0;5054:226:1;14962:68:0;-1:-1:-1;;;;;15049:21:0;;15041:68;;;;-1:-1:-1;;;15041:68:0;;3495:2:1;15041:68:0;;;3477:21:1;3534:2;3514:18;;;3507:30;3573:34;3553:18;;;3546:62;-1:-1:-1;;;3624:18:1;;;3617:32;3666:19;;15041:68:0;3467:224:1;15041:68:0;-1:-1:-1;;;;;15122:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;15174:32;;5431:25:1;;;15174:32:0;;5404:18:1;15174:32:0;;;;;;;;14877:337;;;:::o;16936:955::-;-1:-1:-1;;;;;17058:18:0;;17050:68;;;;-1:-1:-1;;;17050:68:0;;4676:2:1;17050:68:0;;;4658:21:1;4715:2;4695:18;;;4688:30;4754:34;4734:18;;;4727:62;-1:-1:-1;;;4805:18:1;;;4798:35;4850:19;;17050:68:0;4648:227:1;17050:68:0;17146:1;17137:6;:10;17129:71;;;;-1:-1:-1;;;17129:71:0;;3898:2:1;17129:71:0;;;3880:21:1;3937:2;3917:18;;;3910:30;3976:34;3956:18;;;3949:62;-1:-1:-1;;;4027:18:1;;;4020:46;4083:19;;17129:71:0;3870:238:1;17129:71:0;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;17265:30:0;;;-1:-1:-1;;;;;17311:12:0;;;;:8;:12;;;;;;;;:45;;;;;17334:2;-1:-1:-1;;;;;17327:22:0;;:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:29;17311:45;:67;;;;-1:-1:-1;17360:13:0;;:18;17311:67;17308:126;;;17410:12;17394:13;:28;17308:126;17449:6;;;;;:34;;-1:-1:-1;;;;;;17459:24:0;;;;;;:18;:24;;;;;;;;17449:34;:60;;;-1:-1:-1;;;;;;17487:22:0;;;;;;:18;:22;;;;;;;;17449:60;17446:135;;;17532:36;17547:4;17552:2;17555:6;17562:5;17532:14;:36::i;:::-;17525:43;;16936:955;;;:::o;17446:135::-;-1:-1:-1;;;;;17596:12:0;;;;;;:8;:12;;;;;;;;;:30;;-1:-1:-1;;;;;;17612:14:0;;;;;;:8;:14;;;;;;;;17596:30;17593:75;;;17652:4;17642:14;;17593:75;17683:18;17698:2;17683:14;:18::i;:::-;17680:37;;;17704:10;:8;:10::i;:::-;17729:23;;;;;;17763:64;;17791:24;17802:6;17809:5;17791:10;:24::i;:::-;17847:36;17862:4;17867:2;17870:6;17877:5;17847:14;:36::i;2575:206::-;2661:7;2722:12;2714:6;;;;2706:29;;;;-1:-1:-1;;;2706:29:0;;;;;;;;:::i;:::-;-1:-1:-1;;;2757:5:0;;;2575:206::o;2045:98::-;2103:7;2130:5;2134:1;2130;:5;:::i;:::-;2123:12;2045:98;-1:-1:-1;;;2045:98:0:o;4215:173::-;4271:16;4290:6;;-1:-1:-1;;;;;4307:17:0;;;-1:-1:-1;;;;;;4307:17:0;;;;;;4340:40;;4290:6;;;;;;;4340:40;;4271:16;4340:40;4260:128;4215:173;:::o;17899:399::-;-1:-1:-1;;;;;18031:15:0;;;;;;:7;:15;;;;;;:28;;18051:7;18031:19;:28::i;:::-;-1:-1:-1;;;;;18013:15:0;;;;;;;:7;:15;;;;;;;;:46;;;;18114:21;;;18091:18;;;;;;;;;;:45;;:22;:45::i;:::-;-1:-1:-1;;;;;18070:18:0;;;;;;;:7;:18;;;;;;;;;:66;;;;18182:21;;;;18154:50;;5431:25:1;;;18070:18:0;;18154:50;;;;;;5404:18:1;18154:50:0;;;;;;;18220:13;;:21;;18237:4;18220:21;18217:74;;;18257:22;18266:5;18272:6;18257:8;:22::i;:::-;17899:399;;;;:::o;16075:204::-;-1:-1:-1;;;;;16159:12:0;;16134:4;16159:12;;;:8;:12;;;;;;;;16158:35;;;;-1:-1:-1;16187:6:0;;;;16186:7;16158:35;:59;;;;-1:-1:-1;16206:11:0;;;;16158:59;:113;;;;-1:-1:-1;16258:13:0;;16248:4;13499:7;13526:16;;;:7;:16;;;;;;16230:41;;16158:113;16151:120;16075:204;-1:-1:-1;;16075:204:0:o;16287:641::-;12186:6;:13;;-1:-1:-1;;12186:13:0;12195:4;12186:13;;;16391::::1;::::0;16356:4:::1;-1:-1:-1::0;16336:26:0;;;:11:::1;:26;::::0;;;;;;;16371:15:::1;::::0;-1:-1:-1;;;;;16371:15:0::1;16336:52:::0;;;;;;;:68;;;;16449:16;;;;;;;::::1;::::0;;-1:-1:-1;;16449:16:0;;::::1;::::0;16336:26;16449:16:::1;::::0;::::1;;::::0;-1:-1:-1;16449:16:0::1;16425:40;;16494:4;16476;16481:1;16476:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;16476:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;:23;16520:4:::1;::::0;16510:7;;16520:4;::::1;::::0;16510;;16520;;16510:7;::::1;;;;;:::i;:::-;-1:-1:-1::0;;;;;16510:14:0;;::::1;:7;::::0;;::::1;::::0;;;;;:14;16593:15:::1;::::0;16674:13:::1;::::0;16593:198:::1;::::0;-1:-1:-1;;;16593:198:0;;16559:21:::1;::::0;16593:15;;;::::1;::::0;:66:::1;::::0;:198:::1;::::0;16535:21:::1;::::0;16718:4;;16745::::1;::::0;16765:15:::1;::::0;16593:198:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;16804:17;16824:40;16850:13;16824:21;:25;;:40;;;;:::i;:::-;16885:13;::::0;16877:42:::1;::::0;16804:60;;-1:-1:-1;;;;;;16885:13:0::1;::::0;16877:42;::::1;;;::::0;16804:60;;16885:13:::1;16877:42:::0;16885:13;16877:42;16804:60;16885:13;16877:42;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;12204:6:0;:14;;-1:-1:-1;;12204:14:0;;;-1:-1:-1;;16287:641:0:o;15535:353::-;15617:9;15672:2;15656:13;;15641:12;:28;;;;:::i;:::-;:33;15637:159;;;15721:3;15708:10;;15698:7;:20;;;;:::i;:::-;:26;;;;:::i;:::-;15691:33;;15637:159;;;15779:3;15764:12;:7;15774:2;15764:12;:::i;:::-;:18;;;;:::i;:::-;15757:25;;15637:159;15806:15;;;:22;;;15863:17;:7;15824:4;15863:11;:17::i;:::-;15839:21;;;;:41;;;;-1:-1:-1;;15535:353:0:o;2151:98::-;2209:7;2236:5;2240:1;2236;:5;:::i;15896:171::-;15969:15;;;;:19;15965:95;;16005:43;16011:5;:15;;;16028:4;16042;16005:5;:43::i;:::-;15896:171;;:::o;15222:161::-;-1:-1:-1;;;;;15310:11:0;;;;;;:7;:11;;;;;;:23;;15326:6;15310:15;:23::i;:::-;-1:-1:-1;;;;;15296:11:0;;;;;;;:7;:11;;;;;;;:37;;;;15349:26;;;;;;;;;;15368:6;5431:25:1;;5419:2;5404:18;;5386:76;14:173;82:20;;-1:-1:-1;;;;;131:31:1;;121:42;;111:2;;177:1;174;167:12;111:2;63:124;;;:::o;192:186::-;251:6;304:2;292:9;283:7;279:23;275:32;272:2;;;320:1;317;310:12;272:2;343:29;362:9;343:29;:::i;383:260::-;451:6;459;512:2;500:9;491:7;487:23;483:32;480:2;;;528:1;525;518:12;480:2;551:29;570:9;551:29;:::i;:::-;541:39;;599:38;633:2;622:9;618:18;599:38;:::i;:::-;589:48;;470:173;;;;;:::o;648:328::-;725:6;733;741;794:2;782:9;773:7;769:23;765:32;762:2;;;810:1;807;800:12;762:2;833:29;852:9;833:29;:::i;:::-;823:39;;881:38;915:2;904:9;900:18;881:38;:::i;:::-;871:48;;966:2;955:9;951:18;938:32;928:42;;752:224;;;;;:::o;981:254::-;1049:6;1057;1110:2;1098:9;1089:7;1085:23;1081:32;1078:2;;;1126:1;1123;1116:12;1078:2;1149:29;1168:9;1149:29;:::i;:::-;1139:39;1225:2;1210:18;;;;1197:32;;-1:-1:-1;;;1068:167:1:o;1240:184::-;1310:6;1363:2;1351:9;1342:7;1338:23;1334:32;1331:2;;;1379:1;1376;1369:12;1331:2;-1:-1:-1;1402:16:1;;1321:103;-1:-1:-1;1321:103:1:o;2284:597::-;2396:4;2425:2;2454;2443:9;2436:21;2486:6;2480:13;2529:6;2524:2;2513:9;2509:18;2502:34;2554:1;2564:140;2578:6;2575:1;2572:13;2564:140;;;2673:14;;;2669:23;;2663:30;2639:17;;;2658:2;2635:26;2628:66;2593:10;;2564:140;;;2722:6;2719:1;2716:13;2713:2;;;2792:1;2787:2;2778:6;2767:9;2763:22;2759:31;2752:42;2713:2;-1:-1:-1;2865:2:1;2844:15;-1:-1:-1;;2840:29:1;2825:45;;;;2872:2;2821:54;;2405:476;-1:-1:-1;;;2405:476:1:o;5467:980::-;5729:4;5777:3;5766:9;5762:19;5808:6;5797:9;5790:25;5834:2;5872:6;5867:2;5856:9;5852:18;5845:34;5915:3;5910:2;5899:9;5895:18;5888:31;5939:6;5974;5968:13;6005:6;5997;5990:22;6043:3;6032:9;6028:19;6021:26;;6082:2;6074:6;6070:15;6056:29;;6103:1;6113:195;6127:6;6124:1;6121:13;6113:195;;;6192:13;;-1:-1:-1;;;;;6188:39:1;6176:52;;6283:15;;;;6248:12;;;;6224:1;6142:9;6113:195;;;-1:-1:-1;;;;;;;6364:32:1;;;;6359:2;6344:18;;6337:60;-1:-1:-1;;;6428:3:1;6413:19;6406:35;6325:3;5738:709;-1:-1:-1;;;5738:709:1:o;6641:128::-;6681:3;6712:1;6708:6;6705:1;6702:13;6699:2;;;6718:18;;:::i;:::-;-1:-1:-1;6754:9:1;;6689:80::o;6774:217::-;6814:1;6840;6830:2;;6884:10;6879:3;6875:20;6872:1;6865:31;6919:4;6916:1;6909:15;6947:4;6944:1;6937:15;6830:2;-1:-1:-1;6976:9:1;;6820:171::o;6996:168::-;7036:7;7102:1;7098;7094:6;7090:14;7087:1;7084:21;7079:1;7072:9;7065:17;7061:45;7058:2;;;7109:18;;:::i;:::-;-1:-1:-1;7149:9:1;;7048:116::o;7169:125::-;7209:4;7237:1;7234;7231:8;7228:2;;;7242:18;;:::i;:::-;-1:-1:-1;7279:9:1;;7218:76::o;7299:380::-;7378:1;7374:12;;;;7421;;;7442:2;;7496:4;7488:6;7484:17;7474:27;;7442:2;7549;7541:6;7538:14;7518:18;7515:38;7512:2;;;7595:10;7590:3;7586:20;7583:1;7576:31;7630:4;7627:1;7620:15;7658:4;7655:1;7648:15;7512:2;;7354:325;;;:::o;7684:127::-;7745:10;7740:3;7736:20;7733:1;7726:31;7776:4;7773:1;7766:15;7800:4;7797:1;7790:15;7816:127;7877:10;7872:3;7868:20;7865:1;7858:31;7908:4;7905:1;7898:15;7932:4;7929:1;7922:15

Swarm Source

ipfs://6f8977a6362cf93fd7de8ab5b5140a05f95b0fab9710ae1f829466edd4ecec07

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.