ETH Price: $3,481.91 (+0.96%)

Token

RELIEF (RELIEF)
 

Overview

Max Total Supply

1,000,000 RELIEF

Holders

715

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
0.727013895338548528 RELIEF

Value
$0.00
0xfe3b14a03364dcd2949f78be6dc78c13aef67fa8
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:
Relief

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 200 runs

Other Settings:
paris EvmVersion
File 1 of 1 : Relief.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;

// Website: https://relief.fi
// Twitter: https://twitter.com/relief_erc314a
// Telegram: https://t.me/relief_erc314a

/**
 * @title ERC314a
 * @dev Implementation of the ERC314a interface.
 * ERC314 is a derivative of ERC20 which aims to integrate a liquidity pool on the token in order to enable native swaps, notably to reduce gas consumption.
 * ERC413a is an improved version of ERC314, with the of a MEV Protection and other features.
 */

interface IERC314a {
    event Transfer(address indexed from, address indexed to, uint256 value);
    event AddLiquidity(uint32 _blockToUnlockLiquidity, uint256 value);
    event RemoveLiquidity(uint256 value);
    event Swap(
        address indexed sender,
        uint amount0In,
        uint amount1In,
        uint amount0Out,
        uint amount1Out
    );
}

contract Relief is IERC314a {
    mapping(address account => uint256) private _balances;

    uint256 private _totalSupply;
    uint256 public _maxWallet;
    uint32 public blockToUnlockLiquidity;

    string private _name;
    string private _symbol;

    address public owner;
    address public liquidityProvider;

    bool public tradingEnable;
    bool public liquidityAdded;
    bool public maxWalletEnable;

    uint256 presaleAmount;

    bool public presaleEnable = false;

    mapping(address account => uint32) private lastTransaction;

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

    modifier onlyLiquidityProvider() {
        require(
            msg.sender == liquidityProvider,
            "You are not the liquidity provider"
        );
        _;
    }

    /**
     * @dev Sets the values for {name}, {symbol} and {totalSupply}.
     *
     * All two of these values are immutable: they can only be set once during
     * construction.
     */
    constructor(
        string memory name_,
        string memory symbol_,
        uint256 totalSupply_,
        uint256 tokensToLiq_,
        uint256 tokensToPresale_,
        uint256 maxWallet_
    ) {
        _name = name_;
        _symbol = symbol_;
        _totalSupply = totalSupply_;
        _maxWallet = maxWallet_;
        owner = tx.origin;
        tradingEnable = false;
        maxWalletEnable = true;
        presaleAmount = tokensToPresale_;
        _balances[address(this)] = tokensToLiq_;
        _balances[tx.origin] = totalSupply_ - tokensToLiq_ - tokensToPresale_;
        liquidityAdded = false;
    }

    /**
     * @dev Sends the presale amount to the investors
     */
    function presale(address[] memory _investors) public onlyOwner {
        require(presaleEnable == false, "Presale already enabled");
        uint256 _amount = presaleAmount / _investors.length;
        for (uint256 i = 0; i < _investors.length; i++) {
            _balances[_investors[i]] += _amount;
        }
        presaleEnable = true;
    }

    /**
     * @dev Returns the name of the token.
     */
    function name() public view virtual returns (string memory) {
        return _name;
    }

    /**
     * @dev Returns the symbol of the token, usually a shorter version of the
     * name.
     */
    function symbol() public view virtual returns (string memory) {
        return _symbol;
    }

    /**
     * @dev Returns the number of decimals used to get its user representation.
     */

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

    /**
     * @dev See {IERC20-totalSupply}.
     */
    function totalSupply() public view virtual returns (uint256) {
        return _totalSupply;
    }

    /**
     * @dev See {IERC20-balanceOf}.
     */
    function balanceOf(address account) public view virtual returns (uint256) {
        return _balances[account];
    }

    /**
     * @dev See {IERC20-transfer}.
     *
     * Requirements:
     *
     * - the caller must have a balance of at least `value`.
     * - if the receiver is the contract, the caller must send the amount of tokens to sell
     */
    function transfer(address to, uint256 value) public virtual returns (bool) {
        // sell or transfer
        if (to == address(this)) {
            sell(value, 0);
        } else {
            _transfer(msg.sender, to, value);
        }
        return true;
    }

    /**
     * @dev Transfers a `value` amount of tokens from `from` to `to`, or alternatively burns if `to` is the zero address.
     * All customizations to transfers and burns should be done by overriding this function.
     * This function includes MEV protection, which prevents the same address from making two transactions in the same block.(lastTransaction)
     * Emits a {Transfer} event.
     */
    function _transfer(
        address from,
        address to,
        uint256 value
    ) internal virtual {
        require(
            lastTransaction[msg.sender] != block.number,
            "You can't make two transactions in the same block"
        );

        lastTransaction[msg.sender] = uint32(block.number);

        require(
            _balances[from] >= value,
            "ERC20: transfer amount exceeds balance"
        );

        unchecked {
            _balances[from] = _balances[from] - value;
        }

        if (to == address(0)) {
            unchecked {
                _totalSupply -= value;
            }
        } else {
            unchecked {
                _balances[to] += value;
            }
        }

        emit Transfer(from, to, value);
    }

    /**
     * @dev Returns the amount of ETH and tokens in the contract, used for trading.
     */
    function getReserves() public view returns (uint256, uint256) {
        return (address(this).balance, _balances[address(this)]);
    }

    /**
     * @dev Enables or disables trading.
     * @param _tradingEnable: true to enable trading, false to disable trading.
     * onlyOwner modifier
     */
    function enableTrading(bool _tradingEnable) external onlyOwner {
        tradingEnable = _tradingEnable;
    }

    /**
     * @dev Enables or disables the max wallet.
     * @param _maxWalletEnable: true to enable max wallet, false to disable max wallet.
     * onlyOwner modifier
     */
    function enableMaxWallet(bool _maxWalletEnable) external onlyOwner {
        maxWalletEnable = _maxWalletEnable;
    }

    /**
     * @dev Sets the max wallet.
     * @param _maxWallet_: the new max wallet.
     * onlyOwner modifier
     */
    function setMaxWallet(uint256 _maxWallet_) external onlyOwner {
        _maxWallet = _maxWallet_;
    }

    /**
     * @dev Transfers the ownership of the contract to zero address
     * onlyOwner modifier
     */
    function renounceOwnership() external onlyOwner {
        owner = address(0);
    }

    /**
     * @dev Adds liquidity to the contract.
     * @param _blockToUnlockLiquidity: the block number to unlock the liquidity.
     * value: the amount of ETH to add to the liquidity.
     * onlyOwner modifier
     */
    function addLiquidity(
        uint32 _blockToUnlockLiquidity
    ) public payable onlyOwner {
        require(liquidityAdded == false, "Liquidity already added");

        liquidityAdded = true;

        require(msg.value > 0, "No ETH sent");
        require(block.number < _blockToUnlockLiquidity, "Block number too low");

        blockToUnlockLiquidity = _blockToUnlockLiquidity;
        liquidityProvider = msg.sender;

        emit AddLiquidity(_blockToUnlockLiquidity, msg.value);
    }

    function extendLock(uint32 _newBlockToUnlock) public onlyOwner{
        require(_newBlockToUnlock > blockToUnlockLiquidity, "Dev would never do that, nice try kid");
        blockToUnlockLiquidity = _newBlockToUnlock;
    }

    /**
     * @dev Removes liquidity from the contract.
     * onlyLiquidityProvider modifier
     */
    function removeLiquidity() public onlyLiquidityProvider {
        require(block.number > blockToUnlockLiquidity, "Liquidity locked");

        tradingEnable = false;

        payable(msg.sender).transfer(address(this).balance);

        emit RemoveLiquidity(address(this).balance);
    }

    /**
     * @dev Extends the liquidity lock, only if the new block number is higher than the current one.
     * @param _blockToUnlockLiquidity: the new block number to unlock the liquidity.
     * onlyLiquidityProvider modifier
     */
    function extendLiquidityLock(
        uint32 _blockToUnlockLiquidity
    ) public onlyLiquidityProvider {
        require(
            blockToUnlockLiquidity < _blockToUnlockLiquidity,
            "You can't shorten duration"
        );

        blockToUnlockLiquidity = _blockToUnlockLiquidity;
    }

    /**
     * @dev Estimates the amount of tokens or ETH to receive when buying or selling.
     * @param value: the amount of ETH or tokens to swap.
     * @param _buy: true if buying, false if selling.
     */
    function getAmountOut(
        uint256 value,
        bool _buy
    ) public view returns (uint256) {
        (uint256 reserveETH, uint256 reserveToken) = getReserves();

        if (_buy) {
            return (value * reserveToken) / (reserveETH + value);
        } else {
            return (value * reserveETH) / (reserveToken + value);
        }
    }

    /**
     * @dev Buys tokens with ETH.
     * internal function
     */
    function buy(uint256 _minAmount) public payable {
        require(tradingEnable, "Trading not enable");

        uint256 token_amount = getAmountOut(msg.value, true);

        if (maxWalletEnable) {
            require(
                token_amount + _balances[msg.sender] <= _maxWallet,
                "Max wallet exceeded"
            );
        }

        _transfer(address(this), msg.sender, token_amount);

        require(token_amount >= _minAmount, "Slippage too high");

        emit Swap(msg.sender, msg.value, 0, 0, token_amount);
    }

    /**
     * @dev Sells tokens for ETH.
     * internal function
     */
    function sell(uint256 _sellAmount, uint256 _minReceived) public payable {
        require(tradingEnable, "Trading not enable");

        uint256 ethAmount = getAmountOut(_sellAmount, false);

        require(ethAmount > 0, "Sell amount too low");
        require(
            address(this).balance >= ethAmount,
            "Insufficient ETH in reserves"
        );

        _transfer(msg.sender, address(this), _sellAmount);
        require(ethAmount >= _minReceived, "Slippage too high");
        payable(msg.sender).transfer(ethAmount);

        emit Swap(msg.sender, 0, _sellAmount, ethAmount, 0);
    }

    receive() external payable {
        buy(0);
    }
}

Settings
{
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "evmVersion": "paris",
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "libraries": {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"uint256","name":"totalSupply_","type":"uint256"},{"internalType":"uint256","name":"tokensToLiq_","type":"uint256"},{"internalType":"uint256","name":"tokensToPresale_","type":"uint256"},{"internalType":"uint256","name":"maxWallet_","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint32","name":"_blockToUnlockLiquidity","type":"uint32"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"AddLiquidity","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"RemoveLiquidity","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount0In","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount1In","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount0Out","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount1Out","type":"uint256"}],"name":"Swap","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":"_maxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint32","name":"_blockToUnlockLiquidity","type":"uint32"}],"name":"addLiquidity","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"blockToUnlockLiquidity","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_minAmount","type":"uint256"}],"name":"buy","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"_maxWalletEnable","type":"bool"}],"name":"enableMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_tradingEnable","type":"bool"}],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint32","name":"_blockToUnlockLiquidity","type":"uint32"}],"name":"extendLiquidityLock","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint32","name":"_newBlockToUnlock","type":"uint32"}],"name":"extendLock","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"bool","name":"_buy","type":"bool"}],"name":"getAmountOut","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getReserves","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"liquidityAdded","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"liquidityProvider","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletEnable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"_investors","type":"address[]"}],"name":"presale","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"presaleEnable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLiquidity","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_sellAmount","type":"uint256"},{"internalType":"uint256","name":"_minReceived","type":"uint256"}],"name":"sell","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxWallet_","type":"uint256"}],"name":"setMaxWallet","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":[],"name":"tradingEnable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526009805460ff191690553480156200001b57600080fd5b5060405162001892380380620018928339810160408190526200003e91620001ac565b60046200004c8782620002ca565b5060056200005b8682620002ca565b5060018490556002819055600680546001600160a01b031916321790556007805462ff00ff60a01b1916600160b01b179055600882905530600090815260208190526040902083905581620000b1848662000396565b620000bd919062000396565b3260009081526020819052604090205550506007805460ff60a81b1916905550620003be92505050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200010f57600080fd5b81516001600160401b03808211156200012c576200012c620000e7565b604051601f8301601f19908116603f01168101908282118183101715620001575762000157620000e7565b816040528381526020925086838588010111156200017457600080fd5b600091505b8382101562000198578582018301518183018401529082019062000179565b600093810190920192909252949350505050565b60008060008060008060c08789031215620001c657600080fd5b86516001600160401b0380821115620001de57600080fd5b620001ec8a838b01620000fd565b975060208901519150808211156200020357600080fd5b506200021289828a01620000fd565b95505060408701519350606087015192506080870151915060a087015190509295509295509295565b600181811c908216806200025057607f821691505b6020821081036200027157634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620002c557600081815260208120601f850160051c81016020861015620002a05750805b601f850160051c820191505b81811015620002c157828155600101620002ac565b5050505b505050565b81516001600160401b03811115620002e657620002e6620000e7565b620002fe81620002f784546200023b565b8462000277565b602080601f8311600181146200033657600084156200031d5750858301515b600019600386901b1c1916600185901b178555620002c1565b600085815260208120601f198616915b82811015620003675788860151825594840194600190910190840162000346565b5085821015620003865787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b81810381811115620003b857634e487b7160e01b600052601160045260246000fd5b92915050565b6114c480620003ce6000396000f3fe6080604052600436106101a05760003560e01c806367b9a286116100ec5780639a540abf1161008a578063d79875eb11610064578063d79875eb146104c9578063d9443923146104dc578063d96a094a146104fd578063f275f64b1461051057600080fd5b80639a540abf14610476578063a9059cbb14610489578063ae19139e146104a957600080fd5b80637ec18cf6116100c65780637ec18cf61461041157806382247ec01461042b5780638da5cb5b1461044157806395d89b411461046157600080fd5b806367b9a286146103b157806370a08231146103c6578063715018a6146103fc57600080fd5b806318160ddd11610159578063313ce56711610133578063313ce5671461031d5780635b8bec55146103395780635d0044ca1461037157806365029d821461039157600080fd5b806318160ddd146102c857806327de2e85146102dd5780632f44b9ac146102fd57600080fd5b806304c0c476146101b657806306fdde03146101ed5780630902f1ac1461020f57806311106ee21461024857806312a54b62146102765780631693e8d4146102a757600080fd5b366101b1576101af6000610530565b005b600080fd5b3480156101c257600080fd5b506003546101d39063ffffffff1681565b60405163ffffffff90911681526020015b60405180910390f35b3480156101f957600080fd5b506102026106a3565b6040516101e49190611103565b34801561021b57600080fd5b50610233306000908152602081905260409020544791565b604080519283526020830191909152016101e4565b34801561025457600080fd5b50610268610263366004611166565b610735565b6040519081526020016101e4565b34801561028257600080fd5b5060075461029790600160b01b900460ff1681565b60405190151581526020016101e4565b3480156102b357600080fd5b5060075461029790600160a01b900460ff1681565b3480156102d457600080fd5b50600154610268565b3480156102e957600080fd5b506101af6102f8366004611192565b61079c565b34801561030957600080fd5b506101af610318366004611192565b61083c565b34801561032957600080fd5b50604051601281526020016101e4565b34801561034557600080fd5b50600754610359906001600160a01b031681565b6040516001600160a01b0390911681526020016101e4565b34801561037d57600080fd5b506101af61038c3660046111bf565b6108cf565b34801561039d57600080fd5b506101af6103ac366004611205565b6108fe565b3480156103bd57600080fd5b506101af610a11565b3480156103d257600080fd5b506102686103e13660046112ca565b6001600160a01b031660009081526020819052604090205490565b34801561040857600080fd5b506101af610af4565b34801561041d57600080fd5b506009546102979060ff1681565b34801561043757600080fd5b5061026860025481565b34801561044d57600080fd5b50600654610359906001600160a01b031681565b34801561046d57600080fd5b50610202610b30565b6101af610484366004611192565b610b3f565b34801561049557600080fd5b506102976104a43660046112e5565b610cc3565b3480156104b557600080fd5b506101af6104c436600461130f565b610cf9565b6101af6104d736600461132a565b610d41565b3480156104e857600080fd5b5060075461029790600160a81b900460ff1681565b6101af61050b3660046111bf565b610530565b34801561051c57600080fd5b506101af61052b36600461130f565b610f00565b600754600160a01b900460ff166105835760405162461bcd60e51b815260206004820152601260248201527154726164696e67206e6f7420656e61626c6560701b60448201526064015b60405180910390fd5b6000610590346001610735565b600754909150600160b01b900460ff161561060657600254336000908152602081905260409020546105c29083611362565b11156106065760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161057a565b610611303383610f48565b818110156106555760405162461bcd60e51b81526020600482015260116024820152700a6d8d2e0e0c2ceca40e8dede40d0d2ced607b1b604482015260640161057a565b604080513481526000602082018190528183015260608101839052905133917f49926bbebe8474393f434dfa4f78694c0923efa07d19f2284518bfabd06eb737919081900360800190a25050565b6060600480546106b290611375565b80601f01602080910402602001604051908101604052809291908181526020018280546106de90611375565b801561072b5780601f106107005761010080835404028352916020019161072b565b820191906000526020600020905b81548152906001019060200180831161070e57829003601f168201915b5050505050905090565b6000806000610751306000908152602081905260409020544791565b915091508315610782576107658583611362565b61076f82876113af565b61077991906113c6565b92505050610796565b61078c8582611362565b61076f83876113af565b92915050565b6007546001600160a01b031633146107c65760405162461bcd60e51b815260040161057a906113e8565b60035463ffffffff8083169116106108205760405162461bcd60e51b815260206004820152601a60248201527f596f752063616e27742073686f7274656e206475726174696f6e000000000000604482015260640161057a565b6003805463ffffffff191663ffffffff92909216919091179055565b6006546001600160a01b031633146108665760405162461bcd60e51b815260040161057a9061142a565b60035463ffffffff908116908216116108205760405162461bcd60e51b815260206004820152602560248201527f44657620776f756c64206e6576657220646f20746861742c206e6963652074726044820152641e481ada5960da1b606482015260840161057a565b6006546001600160a01b031633146108f95760405162461bcd60e51b815260040161057a9061142a565b600255565b6006546001600160a01b031633146109285760405162461bcd60e51b815260040161057a9061142a565b60095460ff161561097b5760405162461bcd60e51b815260206004820152601760248201527f50726573616c6520616c726561647920656e61626c6564000000000000000000604482015260640161057a565b6000815160085461098c91906113c6565b905060005b82518110156109ff57816000808584815181106109b0576109b061145f565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060008282546109e79190611362565b909155508190506109f781611475565b915050610991565b50506009805460ff1916600117905550565b6007546001600160a01b03163314610a3b5760405162461bcd60e51b815260040161057a906113e8565b60035463ffffffff164311610a855760405162461bcd60e51b815260206004820152601060248201526f131a5c5d5a591a5d1e481b1bd8dad95960821b604482015260640161057a565b6007805460ff60a01b1916905560405133904780156108fc02916000818181858888f19350505050158015610abe573d6000803e3d6000fd5b506040514781527f9a5a8a32afd899e7f95003c6e21c9fab2d50e11992439d14472229180c60c7aa9060200160405180910390a1565b6006546001600160a01b03163314610b1e5760405162461bcd60e51b815260040161057a9061142a565b600680546001600160a01b0319169055565b6060600580546106b290611375565b6006546001600160a01b03163314610b695760405162461bcd60e51b815260040161057a9061142a565b600754600160a81b900460ff1615610bc35760405162461bcd60e51b815260206004820152601760248201527f4c697175696469747920616c7265616479206164646564000000000000000000604482015260640161057a565b6007805460ff60a81b1916600160a81b17905534610c115760405162461bcd60e51b815260206004820152600b60248201526a139bc8115512081cd95b9d60aa1b604482015260640161057a565b8063ffffffff164310610c5d5760405162461bcd60e51b8152602060048201526014602482015273426c6f636b206e756d62657220746f6f206c6f7760601b604482015260640161057a565b6003805463ffffffff831663ffffffff199091168117909155600780546001600160a01b03191633179055604080519182523460208301527f0c6c8102f3ac634c5fb327ba1a5d5c18030294d9f5cc309afa9e8a9020a77175910160405180910390a150565b6000306001600160a01b03841603610ce557610ce0826000610d41565b610cf0565b610cf0338484610f48565b50600192915050565b6006546001600160a01b03163314610d235760405162461bcd60e51b815260040161057a9061142a565b60078054911515600160b01b0260ff60b01b19909216919091179055565b600754600160a01b900460ff16610d8f5760405162461bcd60e51b815260206004820152601260248201527154726164696e67206e6f7420656e61626c6560701b604482015260640161057a565b6000610d9c836000610735565b905060008111610de45760405162461bcd60e51b815260206004820152601360248201527253656c6c20616d6f756e7420746f6f206c6f7760681b604482015260640161057a565b80471015610e345760405162461bcd60e51b815260206004820152601c60248201527f496e73756666696369656e742045544820696e20726573657276657300000000604482015260640161057a565b610e3f333085610f48565b81811015610e835760405162461bcd60e51b81526020600482015260116024820152700a6d8d2e0e0c2ceca40e8dede40d0d2ced607b1b604482015260640161057a565b604051339082156108fc029083906000818181858888f19350505050158015610eb0573d6000803e3d6000fd5b50604080516000808252602082018690528183018490526060820152905133917f49926bbebe8474393f434dfa4f78694c0923efa07d19f2284518bfabd06eb737919081900360800190a2505050565b6006546001600160a01b03163314610f2a5760405162461bcd60e51b815260040161057a9061142a565b60078054911515600160a01b0260ff60a01b19909216919091179055565b336000908152600a60205260409020544363ffffffff90911603610fc85760405162461bcd60e51b815260206004820152603160248201527f596f752063616e2774206d616b652074776f207472616e73616374696f6e7320604482015270696e207468652073616d6520626c6f636b60781b606482015260840161057a565b336000908152600a60209081526040808320805463ffffffff19164363ffffffff161790556001600160a01b03861683529082905290205481111561105e5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161057a565b6001600160a01b038084166000908152602081905260409020805483900390558216611092576001805482900390556110b1565b6001600160a01b03821660009081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516110f691815260200190565b60405180910390a3505050565b600060208083528351808285015260005b8181101561113057858101830151858201604001528201611114565b506000604082860101526040601f19601f8301168501019250505092915050565b8035801515811461116157600080fd5b919050565b6000806040838503121561117957600080fd5b8235915061118960208401611151565b90509250929050565b6000602082840312156111a457600080fd5b813563ffffffff811681146111b857600080fd5b9392505050565b6000602082840312156111d157600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b80356001600160a01b038116811461116157600080fd5b6000602080838503121561121857600080fd5b823567ffffffffffffffff8082111561123057600080fd5b818501915085601f83011261124457600080fd5b813581811115611256576112566111d8565b8060051b604051601f19603f8301168101818110858211171561127b5761127b6111d8565b60405291825284820192508381018501918883111561129957600080fd5b938501935b828510156112be576112af856111ee565b8452938501939285019261129e565b98975050505050505050565b6000602082840312156112dc57600080fd5b6111b8826111ee565b600080604083850312156112f857600080fd5b611301836111ee565b946020939093013593505050565b60006020828403121561132157600080fd5b6111b882611151565b6000806040838503121561133d57600080fd5b50508035926020909101359150565b634e487b7160e01b600052601160045260246000fd5b808201808211156107965761079661134c565b600181811c9082168061138957607f821691505b6020821081036113a957634e487b7160e01b600052602260045260246000fd5b50919050565b80820281158282048414176107965761079661134c565b6000826113e357634e487b7160e01b600052601260045260246000fd5b500490565b60208082526022908201527f596f7520617265206e6f7420746865206c69717569646974792070726f76696460408201526132b960f11b606082015260800190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b6000600182016114875761148761134c565b506001019056fea264697066735822122018c691fa47ce1190d5c7b34c42362add9f0d42d182bd8502c3c21ca360a1818764736f6c6343000814003300000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000d3c21bcecceda1000000000000000000000000000000000000000000000000005f4a8c8375d155400000000000000000000000000000000000000000000000005f4a8c8375d1554000000000000000000000000000000000000000000000000000878678326eac900000000000000000000000000000000000000000000000000000000000000000000652454c4945460000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000652454c4945460000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x6080604052600436106101a05760003560e01c806367b9a286116100ec5780639a540abf1161008a578063d79875eb11610064578063d79875eb146104c9578063d9443923146104dc578063d96a094a146104fd578063f275f64b1461051057600080fd5b80639a540abf14610476578063a9059cbb14610489578063ae19139e146104a957600080fd5b80637ec18cf6116100c65780637ec18cf61461041157806382247ec01461042b5780638da5cb5b1461044157806395d89b411461046157600080fd5b806367b9a286146103b157806370a08231146103c6578063715018a6146103fc57600080fd5b806318160ddd11610159578063313ce56711610133578063313ce5671461031d5780635b8bec55146103395780635d0044ca1461037157806365029d821461039157600080fd5b806318160ddd146102c857806327de2e85146102dd5780632f44b9ac146102fd57600080fd5b806304c0c476146101b657806306fdde03146101ed5780630902f1ac1461020f57806311106ee21461024857806312a54b62146102765780631693e8d4146102a757600080fd5b366101b1576101af6000610530565b005b600080fd5b3480156101c257600080fd5b506003546101d39063ffffffff1681565b60405163ffffffff90911681526020015b60405180910390f35b3480156101f957600080fd5b506102026106a3565b6040516101e49190611103565b34801561021b57600080fd5b50610233306000908152602081905260409020544791565b604080519283526020830191909152016101e4565b34801561025457600080fd5b50610268610263366004611166565b610735565b6040519081526020016101e4565b34801561028257600080fd5b5060075461029790600160b01b900460ff1681565b60405190151581526020016101e4565b3480156102b357600080fd5b5060075461029790600160a01b900460ff1681565b3480156102d457600080fd5b50600154610268565b3480156102e957600080fd5b506101af6102f8366004611192565b61079c565b34801561030957600080fd5b506101af610318366004611192565b61083c565b34801561032957600080fd5b50604051601281526020016101e4565b34801561034557600080fd5b50600754610359906001600160a01b031681565b6040516001600160a01b0390911681526020016101e4565b34801561037d57600080fd5b506101af61038c3660046111bf565b6108cf565b34801561039d57600080fd5b506101af6103ac366004611205565b6108fe565b3480156103bd57600080fd5b506101af610a11565b3480156103d257600080fd5b506102686103e13660046112ca565b6001600160a01b031660009081526020819052604090205490565b34801561040857600080fd5b506101af610af4565b34801561041d57600080fd5b506009546102979060ff1681565b34801561043757600080fd5b5061026860025481565b34801561044d57600080fd5b50600654610359906001600160a01b031681565b34801561046d57600080fd5b50610202610b30565b6101af610484366004611192565b610b3f565b34801561049557600080fd5b506102976104a43660046112e5565b610cc3565b3480156104b557600080fd5b506101af6104c436600461130f565b610cf9565b6101af6104d736600461132a565b610d41565b3480156104e857600080fd5b5060075461029790600160a81b900460ff1681565b6101af61050b3660046111bf565b610530565b34801561051c57600080fd5b506101af61052b36600461130f565b610f00565b600754600160a01b900460ff166105835760405162461bcd60e51b815260206004820152601260248201527154726164696e67206e6f7420656e61626c6560701b60448201526064015b60405180910390fd5b6000610590346001610735565b600754909150600160b01b900460ff161561060657600254336000908152602081905260409020546105c29083611362565b11156106065760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161057a565b610611303383610f48565b818110156106555760405162461bcd60e51b81526020600482015260116024820152700a6d8d2e0e0c2ceca40e8dede40d0d2ced607b1b604482015260640161057a565b604080513481526000602082018190528183015260608101839052905133917f49926bbebe8474393f434dfa4f78694c0923efa07d19f2284518bfabd06eb737919081900360800190a25050565b6060600480546106b290611375565b80601f01602080910402602001604051908101604052809291908181526020018280546106de90611375565b801561072b5780601f106107005761010080835404028352916020019161072b565b820191906000526020600020905b81548152906001019060200180831161070e57829003601f168201915b5050505050905090565b6000806000610751306000908152602081905260409020544791565b915091508315610782576107658583611362565b61076f82876113af565b61077991906113c6565b92505050610796565b61078c8582611362565b61076f83876113af565b92915050565b6007546001600160a01b031633146107c65760405162461bcd60e51b815260040161057a906113e8565b60035463ffffffff8083169116106108205760405162461bcd60e51b815260206004820152601a60248201527f596f752063616e27742073686f7274656e206475726174696f6e000000000000604482015260640161057a565b6003805463ffffffff191663ffffffff92909216919091179055565b6006546001600160a01b031633146108665760405162461bcd60e51b815260040161057a9061142a565b60035463ffffffff908116908216116108205760405162461bcd60e51b815260206004820152602560248201527f44657620776f756c64206e6576657220646f20746861742c206e6963652074726044820152641e481ada5960da1b606482015260840161057a565b6006546001600160a01b031633146108f95760405162461bcd60e51b815260040161057a9061142a565b600255565b6006546001600160a01b031633146109285760405162461bcd60e51b815260040161057a9061142a565b60095460ff161561097b5760405162461bcd60e51b815260206004820152601760248201527f50726573616c6520616c726561647920656e61626c6564000000000000000000604482015260640161057a565b6000815160085461098c91906113c6565b905060005b82518110156109ff57816000808584815181106109b0576109b061145f565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060008282546109e79190611362565b909155508190506109f781611475565b915050610991565b50506009805460ff1916600117905550565b6007546001600160a01b03163314610a3b5760405162461bcd60e51b815260040161057a906113e8565b60035463ffffffff164311610a855760405162461bcd60e51b815260206004820152601060248201526f131a5c5d5a591a5d1e481b1bd8dad95960821b604482015260640161057a565b6007805460ff60a01b1916905560405133904780156108fc02916000818181858888f19350505050158015610abe573d6000803e3d6000fd5b506040514781527f9a5a8a32afd899e7f95003c6e21c9fab2d50e11992439d14472229180c60c7aa9060200160405180910390a1565b6006546001600160a01b03163314610b1e5760405162461bcd60e51b815260040161057a9061142a565b600680546001600160a01b0319169055565b6060600580546106b290611375565b6006546001600160a01b03163314610b695760405162461bcd60e51b815260040161057a9061142a565b600754600160a81b900460ff1615610bc35760405162461bcd60e51b815260206004820152601760248201527f4c697175696469747920616c7265616479206164646564000000000000000000604482015260640161057a565b6007805460ff60a81b1916600160a81b17905534610c115760405162461bcd60e51b815260206004820152600b60248201526a139bc8115512081cd95b9d60aa1b604482015260640161057a565b8063ffffffff164310610c5d5760405162461bcd60e51b8152602060048201526014602482015273426c6f636b206e756d62657220746f6f206c6f7760601b604482015260640161057a565b6003805463ffffffff831663ffffffff199091168117909155600780546001600160a01b03191633179055604080519182523460208301527f0c6c8102f3ac634c5fb327ba1a5d5c18030294d9f5cc309afa9e8a9020a77175910160405180910390a150565b6000306001600160a01b03841603610ce557610ce0826000610d41565b610cf0565b610cf0338484610f48565b50600192915050565b6006546001600160a01b03163314610d235760405162461bcd60e51b815260040161057a9061142a565b60078054911515600160b01b0260ff60b01b19909216919091179055565b600754600160a01b900460ff16610d8f5760405162461bcd60e51b815260206004820152601260248201527154726164696e67206e6f7420656e61626c6560701b604482015260640161057a565b6000610d9c836000610735565b905060008111610de45760405162461bcd60e51b815260206004820152601360248201527253656c6c20616d6f756e7420746f6f206c6f7760681b604482015260640161057a565b80471015610e345760405162461bcd60e51b815260206004820152601c60248201527f496e73756666696369656e742045544820696e20726573657276657300000000604482015260640161057a565b610e3f333085610f48565b81811015610e835760405162461bcd60e51b81526020600482015260116024820152700a6d8d2e0e0c2ceca40e8dede40d0d2ced607b1b604482015260640161057a565b604051339082156108fc029083906000818181858888f19350505050158015610eb0573d6000803e3d6000fd5b50604080516000808252602082018690528183018490526060820152905133917f49926bbebe8474393f434dfa4f78694c0923efa07d19f2284518bfabd06eb737919081900360800190a2505050565b6006546001600160a01b03163314610f2a5760405162461bcd60e51b815260040161057a9061142a565b60078054911515600160a01b0260ff60a01b19909216919091179055565b336000908152600a60205260409020544363ffffffff90911603610fc85760405162461bcd60e51b815260206004820152603160248201527f596f752063616e2774206d616b652074776f207472616e73616374696f6e7320604482015270696e207468652073616d6520626c6f636b60781b606482015260840161057a565b336000908152600a60209081526040808320805463ffffffff19164363ffffffff161790556001600160a01b03861683529082905290205481111561105e5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161057a565b6001600160a01b038084166000908152602081905260409020805483900390558216611092576001805482900390556110b1565b6001600160a01b03821660009081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516110f691815260200190565b60405180910390a3505050565b600060208083528351808285015260005b8181101561113057858101830151858201604001528201611114565b506000604082860101526040601f19601f8301168501019250505092915050565b8035801515811461116157600080fd5b919050565b6000806040838503121561117957600080fd5b8235915061118960208401611151565b90509250929050565b6000602082840312156111a457600080fd5b813563ffffffff811681146111b857600080fd5b9392505050565b6000602082840312156111d157600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b80356001600160a01b038116811461116157600080fd5b6000602080838503121561121857600080fd5b823567ffffffffffffffff8082111561123057600080fd5b818501915085601f83011261124457600080fd5b813581811115611256576112566111d8565b8060051b604051601f19603f8301168101818110858211171561127b5761127b6111d8565b60405291825284820192508381018501918883111561129957600080fd5b938501935b828510156112be576112af856111ee565b8452938501939285019261129e565b98975050505050505050565b6000602082840312156112dc57600080fd5b6111b8826111ee565b600080604083850312156112f857600080fd5b611301836111ee565b946020939093013593505050565b60006020828403121561132157600080fd5b6111b882611151565b6000806040838503121561133d57600080fd5b50508035926020909101359150565b634e487b7160e01b600052601160045260246000fd5b808201808211156107965761079661134c565b600181811c9082168061138957607f821691505b6020821081036113a957634e487b7160e01b600052602260045260246000fd5b50919050565b80820281158282048414176107965761079661134c565b6000826113e357634e487b7160e01b600052601260045260246000fd5b500490565b60208082526022908201527f596f7520617265206e6f7420746865206c69717569646974792070726f76696460408201526132b960f11b606082015260800190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b6000600182016114875761148761134c565b506001019056fea264697066735822122018c691fa47ce1190d5c7b34c42362add9f0d42d182bd8502c3c21ca360a1818764736f6c63430008140033

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

00000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000d3c21bcecceda1000000000000000000000000000000000000000000000000005f4a8c8375d155400000000000000000000000000000000000000000000000005f4a8c8375d1554000000000000000000000000000000000000000000000000000878678326eac900000000000000000000000000000000000000000000000000000000000000000000652454c4945460000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000652454c4945460000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : name_ (string): RELIEF
Arg [1] : symbol_ (string): RELIEF
Arg [2] : totalSupply_ (uint256): 1000000000000000000000000
Arg [3] : tokensToLiq_ (uint256): 450000000000000000000000
Arg [4] : tokensToPresale_ (uint256): 450000000000000000000000
Arg [5] : maxWallet_ (uint256): 2500000000000000000000

-----Encoded View---------------
10 Constructor Arguments found :
Arg [0] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000100
Arg [2] : 00000000000000000000000000000000000000000000d3c21bcecceda1000000
Arg [3] : 000000000000000000000000000000000000000000005f4a8c8375d155400000
Arg [4] : 000000000000000000000000000000000000000000005f4a8c8375d155400000
Arg [5] : 0000000000000000000000000000000000000000000000878678326eac900000
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [7] : 52454c4945460000000000000000000000000000000000000000000000000000
Arg [8] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [9] : 52454c4945460000000000000000000000000000000000000000000000000000


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.