ETH Price: $2,348.25 (+0.45%)

Token

Y U NO Guy (YUN)
 

Overview

Max Total Supply

200,000,000,000,000 YUN

Holders

198 (0.00%)

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Filtered by Token Holder
MoonPay 4
Balance
990,000 YUN

Value
$0.00
0x151B381058f91cF871E7eA1eE83c45326F61e96D
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

Y U No Guy is a token that originated from the popular internet meme that features the image of a man with an expression of frustration and the legend Y U No that originated in 2010.

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
YUNToken

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

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

pragma solidity ^0.8.0;

/**
 * @dev Provides information about the current execution context, including the
 * sender of the transaction and its data. While these are generally available
 * via msg.sender and msg.data, they should not be accessed in such a direct
 * manner, since when dealing with meta-transactions the account sending and
 * paying for execution may not be the actual sender (as far as an application
 * is concerned).
 *
 * This contract is only required for intermediate, library-like contracts.
 */
abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }

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

/**
 * @dev Wrappers over Solidity's arithmetic operations.
 *
 * NOTE: `SafeMath` is generally not needed starting with Solidity 0.8, since the compiler
 * now has built in overflow checking.
 */
library SafeMath {
    /**
     * @dev Returns the addition of two unsigned integers, with an overflow flag.
     *
     * _Available since v3.4._
     */
    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);
        }
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, with an overflow flag.
     *
     * _Available since v3.4._
     */
    function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b > a) return (false, 0);
            return (true, a - b);
        }
    }

    /**
     * @dev Returns the multiplication of two unsigned integers, with an overflow flag.
     *
     * _Available since v3.4._
     */
    function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
            // benefit is lost if 'b' is also tested.
            // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
            if (a == 0) return (true, 0);
            uint256 c = a * b;
            if (c / a != b) return (false, 0);
            return (true, c);
        }
    }

    /**
     * @dev Returns the division of two unsigned integers, with a division by zero flag.
     *
     * _Available since v3.4._
     */
    function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a / b);
        }
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers, with a division by zero flag.
     *
     * _Available since v3.4._
     */
    function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a % b);
        }
    }

    /**
     * @dev Returns the addition of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `+` operator.
     *
     * Requirements:
     *
     * - Addition cannot overflow.
     */
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        return a + b;
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return a - b;
    }

    /**
     * @dev Returns the multiplication of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `*` operator.
     *
     * Requirements:
     *
     * - Multiplication cannot overflow.
     */
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        return a * b;
    }

    /**
     * @dev Returns the integer division of two unsigned integers, reverting on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator.
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return a / b;
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * reverting when dividing by zero.
     *
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return a % b;
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting with custom message on
     * overflow (when the result is negative).
     *
     * CAUTION: This function is deprecated because it requires allocating memory for the error
     * message unnecessarily. For custom revert reasons use {trySub}.
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        unchecked {
            require(b <= a, errorMessage);
            return a - b;
        }
    }

    /**
     * @dev Returns the integer division of two unsigned integers, reverting with custom message on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function div(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        unchecked {
            require(b > 0, errorMessage);
            return a / b;
        }
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * reverting with custom message when dividing by zero.
     *
     * CAUTION: This function is deprecated because it requires allocating memory for the error
     * message unnecessarily. For custom revert reasons use {tryMod}.
     *
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function mod(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        unchecked {
            require(b > 0, errorMessage);
            return a % b;
        }
    }
}

/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
interface IERC20 {
    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
     * another (`to`).
     *
     * Note that `value` may be zero.
     */
    event Transfer(address indexed from, address indexed to, uint256 value);

    /**
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by
     * a call to {approve}. `value` is the new allowance.
     */
    event Approval(address indexed owner, address indexed spender, uint256 value);

    /**
     * @dev Returns the amount of tokens in existence.
     */
    function totalSupply() external view returns (uint256);

    /**
     * @dev Returns the amount of tokens owned by `account`.
     */
    function balanceOf(address account) external view returns (uint256);

    /**
     * @dev Moves `amount` tokens from the caller's account to `to`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address to, uint256 amount) external returns (bool);

    /**
     * @dev Returns the remaining number of tokens that `spender` will be
     * allowed to spend on behalf of `owner` through {transferFrom}. This is
     * zero by default.
     *
     * This value changes when {approve} or {transferFrom} are called.
     */
    function allowance(address owner, address spender) external view returns (uint256);

    /**
     * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * IMPORTANT: Beware that changing an allowance with this method brings the risk
     * that someone may use both the old and the new allowance by unfortunate
     * transaction ordering. One possible solution to mitigate this race
     * condition is to first reduce the spender's allowance to 0 and set the
     * desired value afterwards:
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
     *
     * Emits an {Approval} event.
     */
    function approve(address spender, uint256 amount) external returns (bool);

    /**
     * @dev Moves `amount` tokens from `from` to `to` using the
     * allowance mechanism. `amount` is then deducted from the caller's
     * allowance.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) external returns (bool);
}

/**
 * @dev Interface for the optional metadata functions from the ERC20 standard.
 *
 * _Available since v4.1._
 */
interface IERC20Metadata is IERC20 {
    /**
     * @dev Returns the name of the token.
     */
    function name() external view returns (string memory);

    /**
     * @dev Returns the symbol of the token.
     */
    function symbol() external view returns (string memory);

    /**
     * @dev Returns the decimals places of the token.
     */
    function decimals() external view returns (uint8);
}

contract YUNToken is Context, IERC20, IERC20Metadata {
    using SafeMath for uint256;

    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    uint256 private _totalSupply;
    uint8 private _decimals;

    string private _name;
    string private _symbol;

    // Initialize fee on transfer
    uint256 public _feePercentage = 1;

    // Initialize max supply and percentages
    uint256 private _maxSupply = 200000000000000;
    uint256 private _burnPercentage = 60;
    uint256 private _marketingPercentage = 5;

    // Initialize project owner addresses
    address private _projectOwnerAddress;
    address private _marketingAddress;

    constructor(address projectOwnerAddress_, address marketingAddress_) {
        _name = "Y U NO Guy";
        _symbol = "YUN";
        _decimals = 9;
        _totalSupply = _maxSupply * 10**uint256(_decimals);

        // Assign initial mint with percentages to addresses
        uint256 burnAmount = _totalSupply.mul(_burnPercentage).div(100);
        uint256 marketingAmount = _totalSupply.mul(_marketingPercentage).div(100);

        _balances[projectOwnerAddress_] = _totalSupply.sub(burnAmount).sub(marketingAmount);
        _balances[marketingAddress_] = marketingAmount;
        _balances[address(0xdead)] = burnAmount;

        _projectOwnerAddress = projectOwnerAddress_;
        _marketingAddress = marketingAddress_;

        emit Transfer(address(0), _msgSender(), _totalSupply);
    }

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

    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)
    {
        require(recipient != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "ERC20: transfer amount must be greater than zero");

        uint256 feeAmount = (amount * _feePercentage) / 100;
        uint256 transferAmount = amount.sub(feeAmount);

        _transfer(_msgSender(), recipient, transferAmount);
        _transfer(_msgSender(), _projectOwnerAddress, feeAmount);
        return true;
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public virtual override returns (bool) {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "ERC20: transfer amount must be greater than zero");

        uint256 currentAllowance = _allowances[sender][_msgSender()];
        require(
            currentAllowance >= amount,
            "ERC20: transfer amount exceeds allowance"
        );

        uint256 feeAmount = (amount * _feePercentage) / 100;
        uint256 transferAmount = amount.sub(feeAmount);

        _transfer(sender, recipient, transferAmount);
        _transfer(sender, _projectOwnerAddress, feeAmount);

        _approve(sender, _msgSender(), currentAllowance.sub(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 increaseAllowance(address spender, uint256 addedValue)
        public
        virtual
        returns (bool)
    {
        _approve(
            _msgSender(),
            spender,
            _allowances[_msgSender()][spender].add(addedValue)
        );
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue)
        public
        virtual
        returns (bool)
    {
        uint256 currentAllowance = _allowances[_msgSender()][spender];
        require(
            currentAllowance >= subtractedValue,
            "ERC20: decreased allowance below zero"
        );
        _approve(_msgSender(), spender, currentAllowance.sub(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 senderBalance = _balances[sender];
        require(
            senderBalance >= amount,
            "ERC20: transfer amount exceeds balance"
        );
        _balances[sender] = senderBalance.sub(amount);
        _balances[recipient] = _balances[recipient].add(amount);

        emit Transfer(sender, recipient, 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 setFeePercentage(uint256 feePercentage) public virtual onlyOwner {
        require(
            feePercentage <= 10,
            "Fee percentage must be less than or equal to 10"
        );
        _feePercentage = feePercentage;
    }

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

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"projectOwnerAddress_","type":"address"},{"internalType":"address","name":"marketingAddress_","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":"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":"_feePercentage","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"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":[{"internalType":"uint256","name":"feePercentage","type":"uint256"}],"name":"setFeePercentage","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"}]

6080604052600160065565b5e620f48000600755603c60085560056009553480156200002a57600080fd5b5060405162001171380380620011718339810160408190526200004d9162000240565b60408051808201909152600a815269592055204e4f2047757960b01b60208201526004906200007d90826200031d565b506040805180820190915260038152622caaa760e91b6020820152600590620000a790826200031d565b506003805460ff19166009908117909155620000c590600a620004fc565b600754620000d491906200050a565b6002819055600854600091620000f991606491620000f291620001f0565b9062000207565b905060006200011c6064620000f2600954600254620001f060201b90919060201c565b6002549091506200013c90829062000135908562000215565b9062000215565b6001600160a01b038581166000818152602081815260408083209590955592871680825284822086905561dead82527f44ad89ba62b98ff34f51403ac22759b55759460c0bb5521eb4b6ee3cff49cf83879055600a80546001600160a01b03199081169094179055600b8054909316179091556002549251928352339290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050506200055d565b6000620001fe82846200050a565b90505b92915050565b6000620001fe828462000524565b6000620001fe828462000547565b80516001600160a01b03811681146200023b57600080fd5b919050565b600080604083850312156200025457600080fd5b6200025f8362000223565b91506200026f6020840162000223565b90509250929050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620002a357607f821691505b602082108103620002c457634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200031857600081815260208120601f850160051c81016020861015620002f35750805b601f850160051c820191505b818110156200031457828155600101620002ff565b5050505b505050565b81516001600160401b0381111562000339576200033962000278565b62000351816200034a84546200028e565b84620002ca565b602080601f831160018114620003895760008415620003705750858301515b600019600386901b1c1916600185901b17855562000314565b600085815260208120601f198616915b82811015620003ba5788860151825594840194600190910190840162000399565b5085821015620003d95787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111562000440578160001904821115620004245762000424620003e9565b808516156200043257918102915b93841c939080029062000404565b509250929050565b600082620004595750600162000201565b81620004685750600062000201565b81600181146200048157600281146200048c57620004ac565b600191505062000201565b60ff841115620004a057620004a0620003e9565b50506001821b62000201565b5060208310610133831016604e8410600b8410161715620004d1575081810a62000201565b620004dd8383620003ff565b8060001904821115620004f457620004f4620003e9565b029392505050565b6000620001fe838362000448565b8082028115828204841417620002015762000201620003e9565b6000826200054257634e487b7160e01b600052601260045260246000fd5b500490565b81810381811115620002015762000201620003e9565b610c04806200056d6000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c806370a082311161008c578063a9059cbb11610066578063a9059cbb146101a6578063ae06c1b7146101b9578063dd62ed3e146101ce578063f699343e1461020757600080fd5b806370a082311461016257806395d89b411461018b578063a457c2d71461019357600080fd5b806306fdde03146100d4578063095ea7b3146100f257806318160ddd1461011557806323b872dd14610127578063313ce5671461013a578063395093511461014f575b600080fd5b6100dc610210565b6040516100e99190610910565b60405180910390f35b61010561010036600461097a565b6102a2565b60405190151581526020016100e9565b6002545b6040519081526020016100e9565b6101056101353660046109a4565b6102b9565b60035460405160ff90911681526020016100e9565b61010561015d36600461097a565b610425565b6101196101703660046109e0565b6001600160a01b031660009081526020819052604090205490565b6100dc61045b565b6101056101a136600461097a565b61046a565b6101056101b436600461097a565b610505565b6101cc6101c73660046109fb565b6105a5565b005b6101196101dc366004610a14565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61011960065481565b60606004805461021f90610a47565b80601f016020809104026020016040519081016040528092919081815260200182805461024b90610a47565b80156102985780601f1061026d57610100808354040283529160200191610298565b820191906000526020600020905b81548152906001019060200180831161027b57829003601f168201915b5050505050905090565b60006102af338484610676565b5060015b92915050565b60006001600160a01b0384166102ea5760405162461bcd60e51b81526004016102e190610a81565b60405180910390fd5b6001600160a01b0383166103105760405162461bcd60e51b81526004016102e190610ac6565b600082116103305760405162461bcd60e51b81526004016102e190610b09565b6001600160a01b0384166000908152600160209081526040808320338452909152902054828110156103b55760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084016102e1565b60006064600654856103c79190610b6f565b6103d19190610b86565b905060006103df858361079a565b90506103ec8787836107ad565b600a546104049088906001600160a01b0316846107ad565b6104188733610413868961079a565b610676565b5060019695505050505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916102af9185906104139086610904565b60606005805461021f90610a47565b3360009081526001602090815260408083206001600160a01b0386168452909152812054828110156104ec5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016102e1565b6104fb3385610413848761079a565b5060019392505050565b60006001600160a01b03831661052d5760405162461bcd60e51b81526004016102e190610ac6565b6000821161054d5760405162461bcd60e51b81526004016102e190610b09565b600060646006548461055f9190610b6f565b6105699190610b86565b90506000610577848361079a565b90506105843386836107ad565b61059a33600a546001600160a01b0316846107ad565b506001949350505050565b600a546001600160a01b0316336001600160a01b0316146106085760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016102e1565b600a8111156106715760405162461bcd60e51b815260206004820152602f60248201527f4665652070657263656e74616765206d757374206265206c657373207468616e60448201526e0206f7220657175616c20746f20313608c1b60648201526084016102e1565b600655565b6001600160a01b0383166106d85760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016102e1565b6001600160a01b0382166107395760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016102e1565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006107a68284610ba8565b9392505050565b6001600160a01b0383166107d35760405162461bcd60e51b81526004016102e190610a81565b6001600160a01b0382166107f95760405162461bcd60e51b81526004016102e190610ac6565b6001600160a01b038316600090815260208190526040902054818110156108715760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016102e1565b61087b818361079a565b6001600160a01b0380861660009081526020819052604080822093909355908516815220546108aa9083610904565b6001600160a01b038481166000818152602081815260409182902094909455518581529092918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350505050565b60006107a68284610bbb565b600060208083528351808285015260005b8181101561093d57858101830151858201604001528201610921565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461097557600080fd5b919050565b6000806040838503121561098d57600080fd5b6109968361095e565b946020939093013593505050565b6000806000606084860312156109b957600080fd5b6109c28461095e565b92506109d06020850161095e565b9150604084013590509250925092565b6000602082840312156109f257600080fd5b6107a68261095e565b600060208284031215610a0d57600080fd5b5035919050565b60008060408385031215610a2757600080fd5b610a308361095e565b9150610a3e6020840161095e565b90509250929050565b600181811c90821680610a5b57607f821691505b602082108103610a7b57634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526030908201527f45524332303a207472616e7366657220616d6f756e74206d757374206265206760408201526f726561746572207468616e207a65726f60801b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176102b3576102b3610b59565b600082610ba357634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156102b3576102b3610b59565b808201808211156102b3576102b3610b5956fea2646970667358221220e06fc851279d69939171f160eff7a60436d9fcf7b3dd3db535f84c1de0c0de8964736f6c63430008130033000000000000000000000000e981a4c2e843a189f6852cbc29e80d849cb37f3800000000000000000000000000e10d8dfaaad359049c100fece320950b0abf90

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100cf5760003560e01c806370a082311161008c578063a9059cbb11610066578063a9059cbb146101a6578063ae06c1b7146101b9578063dd62ed3e146101ce578063f699343e1461020757600080fd5b806370a082311461016257806395d89b411461018b578063a457c2d71461019357600080fd5b806306fdde03146100d4578063095ea7b3146100f257806318160ddd1461011557806323b872dd14610127578063313ce5671461013a578063395093511461014f575b600080fd5b6100dc610210565b6040516100e99190610910565b60405180910390f35b61010561010036600461097a565b6102a2565b60405190151581526020016100e9565b6002545b6040519081526020016100e9565b6101056101353660046109a4565b6102b9565b60035460405160ff90911681526020016100e9565b61010561015d36600461097a565b610425565b6101196101703660046109e0565b6001600160a01b031660009081526020819052604090205490565b6100dc61045b565b6101056101a136600461097a565b61046a565b6101056101b436600461097a565b610505565b6101cc6101c73660046109fb565b6105a5565b005b6101196101dc366004610a14565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61011960065481565b60606004805461021f90610a47565b80601f016020809104026020016040519081016040528092919081815260200182805461024b90610a47565b80156102985780601f1061026d57610100808354040283529160200191610298565b820191906000526020600020905b81548152906001019060200180831161027b57829003601f168201915b5050505050905090565b60006102af338484610676565b5060015b92915050565b60006001600160a01b0384166102ea5760405162461bcd60e51b81526004016102e190610a81565b60405180910390fd5b6001600160a01b0383166103105760405162461bcd60e51b81526004016102e190610ac6565b600082116103305760405162461bcd60e51b81526004016102e190610b09565b6001600160a01b0384166000908152600160209081526040808320338452909152902054828110156103b55760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084016102e1565b60006064600654856103c79190610b6f565b6103d19190610b86565b905060006103df858361079a565b90506103ec8787836107ad565b600a546104049088906001600160a01b0316846107ad565b6104188733610413868961079a565b610676565b5060019695505050505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916102af9185906104139086610904565b60606005805461021f90610a47565b3360009081526001602090815260408083206001600160a01b0386168452909152812054828110156104ec5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016102e1565b6104fb3385610413848761079a565b5060019392505050565b60006001600160a01b03831661052d5760405162461bcd60e51b81526004016102e190610ac6565b6000821161054d5760405162461bcd60e51b81526004016102e190610b09565b600060646006548461055f9190610b6f565b6105699190610b86565b90506000610577848361079a565b90506105843386836107ad565b61059a33600a546001600160a01b0316846107ad565b506001949350505050565b600a546001600160a01b0316336001600160a01b0316146106085760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016102e1565b600a8111156106715760405162461bcd60e51b815260206004820152602f60248201527f4665652070657263656e74616765206d757374206265206c657373207468616e60448201526e0206f7220657175616c20746f20313608c1b60648201526084016102e1565b600655565b6001600160a01b0383166106d85760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016102e1565b6001600160a01b0382166107395760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016102e1565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006107a68284610ba8565b9392505050565b6001600160a01b0383166107d35760405162461bcd60e51b81526004016102e190610a81565b6001600160a01b0382166107f95760405162461bcd60e51b81526004016102e190610ac6565b6001600160a01b038316600090815260208190526040902054818110156108715760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016102e1565b61087b818361079a565b6001600160a01b0380861660009081526020819052604080822093909355908516815220546108aa9083610904565b6001600160a01b038481166000818152602081815260409182902094909455518581529092918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350505050565b60006107a68284610bbb565b600060208083528351808285015260005b8181101561093d57858101830151858201604001528201610921565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461097557600080fd5b919050565b6000806040838503121561098d57600080fd5b6109968361095e565b946020939093013593505050565b6000806000606084860312156109b957600080fd5b6109c28461095e565b92506109d06020850161095e565b9150604084013590509250925092565b6000602082840312156109f257600080fd5b6107a68261095e565b600060208284031215610a0d57600080fd5b5035919050565b60008060408385031215610a2757600080fd5b610a308361095e565b9150610a3e6020840161095e565b90509250929050565b600181811c90821680610a5b57607f821691505b602082108103610a7b57634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526030908201527f45524332303a207472616e7366657220616d6f756e74206d757374206265206760408201526f726561746572207468616e207a65726f60801b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176102b3576102b3610b59565b600082610ba357634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156102b3576102b3610b59565b808201808211156102b3576102b3610b5956fea2646970667358221220e06fc851279d69939171f160eff7a60436d9fcf7b3dd3db535f84c1de0c0de8964736f6c63430008130033

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

000000000000000000000000e981a4c2e843a189f6852cbc29e80d849cb37f3800000000000000000000000000e10d8dfaaad359049c100fece320950b0abf90

-----Decoded View---------------
Arg [0] : projectOwnerAddress_ (address): 0xe981A4c2e843A189F6852cbC29E80d849cB37f38
Arg [1] : marketingAddress_ (address): 0x00E10d8DfaAAd359049c100fece320950b0aBF90

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000e981a4c2e843a189f6852cbc29e80d849cb37f38
Arg [1] : 00000000000000000000000000e10d8dfaaad359049c100fece320950b0abf90


Deployed Bytecode Sourcemap

10760:6378:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12322:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14687:210;;;;;;:::i;:::-;;:::i;:::-;;;1169:14:1;;1162:22;1144:41;;1132:2;1117:18;14687:210:0;1004:187:1;12650:108:0;12738:12;;12650:108;;;1342:25:1;;;1330:2;1315:18;12650:108:0;1196:177:1;13537:933:0;;;;;;:::i;:::-;;:::i;12542:100::-;12625:9;;12542:100;;12625:9;;;;1853:36:1;;1841:2;1826:18;12542:100:0;1711:184:1;14905:300:0;;;;;;:::i;:::-;;:::i;12766:177::-;;;;;;:::i;:::-;-1:-1:-1;;;;;12917:18:0;12885:7;12917:18;;;;;;;;;;;;12766:177;12430:104;;;:::i;15213:447::-;;;;;;:::i;:::-;;:::i;12951:578::-;;;;;;:::i;:::-;;:::i;16707:250::-;;;;;;:::i;:::-;;:::i;:::-;;14478:201;;;;;;:::i;:::-;-1:-1:-1;;;;;14644:18:0;;;14612:7;14644:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;14478:201;11141:33;;;;;;12322:100;12376:13;12409:5;12402:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12322:100;:::o;14687:210::-;14806:4;14828:39;647:10;14851:7;14860:6;14828:8;:39::i;:::-;-1:-1:-1;14885:4:0;14687:210;;;;;:::o;13537:933::-;13677:4;-1:-1:-1;;;;;13702:20:0;;13694:70;;;;-1:-1:-1;;;13694:70:0;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;13783:23:0;;13775:71;;;;-1:-1:-1;;;13775:71:0;;;;;;;:::i;:::-;13874:1;13865:6;:10;13857:71;;;;-1:-1:-1;;;13857:71:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;13968:19:0;;13941:24;13968:19;;;:11;:19;;;;;;;;647:10;13968:33;;;;;;;;14034:26;;;;14012:116;;;;-1:-1:-1;;;14012:116:0;;4355:2:1;14012:116:0;;;4337:21:1;4394:2;4374:18;;;4367:30;4433:34;4413:18;;;4406:62;-1:-1:-1;;;4484:18:1;;;4477:38;4532:19;;14012:116:0;4153:404:1;14012:116:0;14141:17;14189:3;14171:14;;14162:6;:23;;;;:::i;:::-;14161:31;;;;:::i;:::-;14141:51;-1:-1:-1;14203:22:0;14228:21;:6;14141:51;14228:10;:21::i;:::-;14203:46;;14262:44;14272:6;14280:9;14291:14;14262:9;:44::i;:::-;14335:20;;14317:50;;14327:6;;-1:-1:-1;;;;;14335:20:0;14357:9;14317;:50::i;:::-;14380:60;14389:6;647:10;14411:28;:16;14432:6;14411:20;:28::i;:::-;14380:8;:60::i;:::-;-1:-1:-1;14458:4:0;;13537:933;-1:-1:-1;;;;;;13537:933:0:o;14905:300::-;647:10;15020:4;15114:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;15114:34:0;;;;;;;;;;15020:4;;15042:133;;15092:7;;15114:50;;15153:10;15114:38;:50::i;12430:104::-;12486:13;12519:7;12512:14;;;;;:::i;15213:447::-;647:10;15333:4;15382:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;15382:34:0;;;;;;;;;;15449:35;;;;15427:122;;;;-1:-1:-1;;;15427:122:0;;5291:2:1;15427:122:0;;;5273:21:1;5330:2;5310:18;;;5303:30;5369:34;5349:18;;;5342:62;-1:-1:-1;;;5420:18:1;;;5413:35;5465:19;;15427:122:0;5089:401:1;15427:122:0;15560:70;647:10;15583:7;15592:37;:16;15613:15;15592:20;:37::i;15560:70::-;-1:-1:-1;15648:4:0;;15213:447;-1:-1:-1;;;15213:447:0:o;12951:578::-;13073:4;-1:-1:-1;;;;;13103:23:0;;13095:71;;;;-1:-1:-1;;;13095:71:0;;;;;;;:::i;:::-;13194:1;13185:6;:10;13177:71;;;;-1:-1:-1;;;13177:71:0;;;;;;;:::i;:::-;13261:17;13309:3;13291:14;;13282:6;:23;;;;:::i;:::-;13281:31;;;;:::i;:::-;13261:51;-1:-1:-1;13323:22:0;13348:21;:6;13261:51;13348:10;:21::i;:::-;13323:46;-1:-1:-1;13382:50:0;647:10;13406:9;13417:14;13382:9;:50::i;:::-;13443:56;647:10;13467:20;;-1:-1:-1;;;;;13467:20:0;13489:9;13443;:56::i;:::-;-1:-1:-1;13517:4:0;;12951:578;-1:-1:-1;;;;12951:578:0:o;16707:250::-;17035:20;;-1:-1:-1;;;;;17035:20:0;647:10;-1:-1:-1;;;;;17019:36:0;;16997:118;;;;-1:-1:-1;;;16997:118:0;;5697:2:1;16997:118:0;;;5679:21:1;;;5716:18;;;5709:30;5775:34;5755:18;;;5748:62;5827:18;;16997:118:0;5495:356:1;16997:118:0;16831:2:::1;16814:13;:19;;16792:116;;;::::0;-1:-1:-1;;;16792:116:0;;6058:2:1;16792:116:0::1;::::0;::::1;6040:21:1::0;6097:2;6077:18;;;6070:30;6136:34;6116:18;;;6109:62;-1:-1:-1;;;6187:18:1;;;6180:45;6242:19;;16792:116:0::1;5856:411:1::0;16792:116:0::1;16919:14;:30:::0;16707:250::o;16319:380::-;-1:-1:-1;;;;;16455:19:0;;16447:68;;;;-1:-1:-1;;;16447:68:0;;6474:2:1;16447:68:0;;;6456:21:1;6513:2;6493:18;;;6486:30;6552:34;6532:18;;;6525:62;-1:-1:-1;;;6603:18:1;;;6596:34;6647:19;;16447:68:0;6272:400:1;16447:68:0;-1:-1:-1;;;;;16534:21:0;;16526:68;;;;-1:-1:-1;;;16526:68:0;;6879:2:1;16526:68:0;;;6861:21:1;6918:2;6898:18;;;6891:30;6957:34;6937:18;;;6930:62;-1:-1:-1;;;7008:18:1;;;7001:32;7050:19;;16526:68:0;6677:398:1;16526:68:0;-1:-1:-1;;;;;16607:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;16659:32;;1342:25:1;;;16659:32:0;;1315:18:1;16659:32:0;;;;;;;16319:380;;;:::o;3715:98::-;3773:7;3800:5;3804:1;3800;:5;:::i;:::-;3793:12;3715:98;-1:-1:-1;;;3715:98:0:o;15668:643::-;-1:-1:-1;;;;;15808:20:0;;15800:70;;;;-1:-1:-1;;;15800:70:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;15889:23:0;;15881:71;;;;-1:-1:-1;;;15881:71:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;15989:17:0;;15965:21;15989:17;;;;;;;;;;;16039:23;;;;16017:111;;;;-1:-1:-1;;;16017:111:0;;7415:2:1;16017:111:0;;;7397:21:1;7454:2;7434:18;;;7427:30;7493:34;7473:18;;;7466:62;-1:-1:-1;;;7544:18:1;;;7537:36;7590:19;;16017:111:0;7213:402:1;16017:111:0;16159:25;:13;16177:6;16159:17;:25::i;:::-;-1:-1:-1;;;;;16139:17:0;;;:9;:17;;;;;;;;;;;:45;;;;16218:20;;;;;;;:32;;16243:6;16218:24;:32::i;:::-;-1:-1:-1;;;;;16195:20:0;;;:9;:20;;;;;;;;;;;;:55;;;;16268:35;1342:25:1;;;16195:20:0;;16268:35;;;;;;1315:18:1;16268:35:0;;;;;;;15789:522;15668:643;;;:::o;3334:98::-;3392:7;3419:5;3423:1;3419;: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;2091:180::-;2150:6;2203:2;2191:9;2182:7;2178:23;2174:32;2171:52;;;2219:1;2216;2209:12;2171:52;-1:-1:-1;2242:23:1;;2091:180;-1:-1:-1;2091:180:1:o;2276:260::-;2344:6;2352;2405:2;2393:9;2384:7;2380:23;2376:32;2373:52;;;2421:1;2418;2411:12;2373:52;2444:29;2463:9;2444:29;:::i;:::-;2434:39;;2492:38;2526:2;2515:9;2511:18;2492:38;:::i;:::-;2482:48;;2276:260;;;;;:::o;2541:380::-;2620:1;2616:12;;;;2663;;;2684:61;;2738:4;2730:6;2726:17;2716:27;;2684:61;2791:2;2783:6;2780:14;2760:18;2757:38;2754:161;;2837:10;2832:3;2828:20;2825:1;2818:31;2872:4;2869:1;2862:15;2900:4;2897:1;2890:15;2754:161;;2541:380;;;:::o;2926:401::-;3128:2;3110:21;;;3167:2;3147:18;;;3140:30;3206:34;3201:2;3186:18;;3179:62;-1:-1:-1;;;3272:2:1;3257:18;;3250:35;3317:3;3302:19;;2926:401::o;3332:399::-;3534:2;3516:21;;;3573:2;3553:18;;;3546:30;3612:34;3607:2;3592:18;;3585:62;-1:-1:-1;;;3678:2:1;3663:18;;3656:33;3721:3;3706:19;;3332:399::o;3736:412::-;3938:2;3920:21;;;3977:2;3957:18;;;3950:30;4016:34;4011:2;3996:18;;3989:62;-1:-1:-1;;;4082:2:1;4067:18;;4060:46;4138:3;4123:19;;3736:412::o;4562:127::-;4623:10;4618:3;4614:20;4611:1;4604:31;4654:4;4651:1;4644:15;4678:4;4675:1;4668:15;4694:168;4767:9;;;4798;;4815:15;;;4809:22;;4795:37;4785:71;;4836:18;;:::i;4867:217::-;4907:1;4933;4923:132;;4977:10;4972:3;4968:20;4965:1;4958:31;5012:4;5009:1;5002:15;5040:4;5037:1;5030:15;4923:132;-1:-1:-1;5069:9:1;;4867:217::o;7080:128::-;7147:9;;;7168:11;;;7165:37;;;7182:18;;:::i;7620:125::-;7685:9;;;7706:10;;;7703:36;;;7719:18;;:::i

Swarm Source

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