ETH Price: $2,711.93 (+0.56%)

Token

Gates Syndicate (GATES)
 

Overview

Max Total Supply

10,000,000 GATES

Holders

1

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
Null: 0x000...000
Balance
0 GATES

Value
$0.00
0x0000000000000000000000000000000000000000
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:
Token

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
File 1 of 2 : Token.sol
// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity 0.8.19;

import {Owned} from "solmate/auth/Owned.sol";

// Homepage: https://gates.biz/
// Twitter: https://twitter.com/GatesSyndicate
// Telegram: https://t.me/GatesPortal
// Litepaper: https://docs.gates.biz/

/// @notice Anti bot token
/// @author fico23
/// @author Modified from Solmate (https://github.com/transmissions11/solmate/blob/main/src/tokens/ERC20.sol)
contract Token is Owned {
    /*//////////////////////////////////////////////////////////////
                                 EVENTS
    //////////////////////////////////////////////////////////////*/

    event Transfer(address indexed from, address indexed to, uint256 amount);

    event Approval(address indexed owner, address indexed spender, uint256 amount);

    event IsAddressExcludedChanged(address indexed user, bool value);

    /*//////////////////////////////////////////////////////////////
                                 ERRORS
    //////////////////////////////////////////////////////////////*/
    error MaxBuyExceeded(uint256 maxBuy, uint256 amount);

    /*//////////////////////////////////////////////////////////////
                                 STRUCTS
    //////////////////////////////////////////////////////////////*/
    struct UserInfo {
        uint224 amount;
        uint32 minTaxOn;
    }

    /*//////////////////////////////////////////////////////////////
                            METADATA STORAGE
    //////////////////////////////////////////////////////////////*/

    string public name;

    string public symbol;

    uint8 public immutable decimals;

    /*//////////////////////////////////////////////////////////////
                              ERC20 STORAGE
    //////////////////////////////////////////////////////////////*/

    uint256 public totalSupply;

    mapping(address => UserInfo) private userInfo;

    mapping(address => mapping(address => uint256)) public allowance;

    /*//////////////////////////////////////////////////////////////
                            EIP-2612 STORAGE
    //////////////////////////////////////////////////////////////*/

    uint256 internal immutable INITIAL_CHAIN_ID;

    bytes32 internal immutable INITIAL_DOMAIN_SEPARATOR;

    mapping(address => uint256) public nonces;

    /*//////////////////////////////////////////////////////////////
                            TAX LOGIC
    //////////////////////////////////////////////////////////////*/
    mapping(address => bool) public isAddressExcluded;
    uint256 private constant MAX_TAX = 3000;
    uint256 private constant TAX_DURATION = 1 hours;
    uint256 private constant HUNDRED_PERCENT = 10000;
    address private immutable TREASURY;

    /*//////////////////////////////////////////////////////////////
                            ANTI-BOT MEASURES
    //////////////////////////////////////////////////////////////*/
    uint256 private constant MAX_BUY_ON_START = 1e23;
    uint256 private constant MAX_BUY_ON_END = 1e24;
    uint256 private constant MAX_BUY_DURATION = 10 minutes;
    uint256 private immutable MAX_BUY_END_TIME;
    uint256 private immutable MAX_BUY_DISABLED_TIME;

    /*//////////////////////////////////////////////////////////////
                               CONSTRUCTOR
    //////////////////////////////////////////////////////////////*/

    constructor(address treasury) Owned(msg.sender) {
        name = "Gates Syndicate";
        symbol = "GATES";
        decimals = 18;

        INITIAL_CHAIN_ID = block.chainid;
        INITIAL_DOMAIN_SEPARATOR = computeDomainSeparator();

        MAX_BUY_END_TIME = block.timestamp + MAX_BUY_DURATION;
        MAX_BUY_DISABLED_TIME = block.timestamp + 1 hours;

        _mint(msg.sender, 1e25);

        isAddressExcluded[msg.sender] = true;
        isAddressExcluded[treasury] = true;

        TREASURY = treasury;
    }

    /*//////////////////////////////////////////////////////////////
                               ERC20 LOGIC
    //////////////////////////////////////////////////////////////*/

    function balanceOf(address user) external view returns (uint256) {
        return userInfo[user].amount;
    }

    function approve(address spender, uint256 amount) public returns (bool) {
        allowance[msg.sender][spender] = amount;

        emit Approval(msg.sender, spender, amount);

        return true;
    }

    function transfer(address to, uint256 amount) public returns (bool) {
        UserInfo storage fromUser = userInfo[msg.sender];

        fromUser.amount = uint224(uint256(fromUser.amount) - amount);

        if (!isAddressExcluded[msg.sender]) {
            amount = _processTax(fromUser.minTaxOn, amount);
        }

        UserInfo storage toUser = userInfo[to];

        // Cannot overflow because the sum of all user
        // balances can't exceed the max uint224 value.
        // taxAmount is always less than amount
        unchecked {
            uint256 newAmount = amount + toUser.amount;

            if (!isAddressExcluded[to]) {
                _revertOnMaxBuyExceeded(newAmount);
            }

            toUser.amount = uint224(newAmount);
            toUser.minTaxOn = uint32(block.timestamp + TAX_DURATION);
        }

        emit Transfer(msg.sender, to, amount);

        return true;
    }

    function transferFrom(address from, address to, uint256 amount) public returns (bool) {
        uint256 allowed = allowance[from][msg.sender]; // Saves gas for limited approvals.

        if (allowed != type(uint256).max) allowance[from][msg.sender] = allowed - amount;

        UserInfo storage fromUser = userInfo[from];
        fromUser.amount = uint224(uint256(fromUser.amount) - amount);

        if (!isAddressExcluded[from]) {
            amount = _processTax(fromUser.minTaxOn, amount);
        }

        UserInfo storage toUser = userInfo[to];

        // Cannot overflow because the sum of all user
        // balances can't exceed the max uint224 value.
        // taxAmount is always less than amount
        unchecked {
            uint256 newAmount = amount + toUser.amount;

            if (!isAddressExcluded[to]) {
                _revertOnMaxBuyExceeded(newAmount);
            }

            toUser.amount = uint224(newAmount);
            toUser.minTaxOn = uint32(block.timestamp + TAX_DURATION);
        }

        emit Transfer(from, to, amount);

        return true;
    }

    /*//////////////////////////////////////////////////////////////
                             EIP-2612 LOGIC
    //////////////////////////////////////////////////////////////*/

    function permit(address owner, address spender, uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s)
        public
    {
        require(deadline >= block.timestamp, "PERMIT_DEADLINE_EXPIRED");

        // Unchecked because the only math done is incrementing
        // the owner's nonce which cannot realistically overflow.
        unchecked {
            address recoveredAddress = ecrecover(
                keccak256(
                    abi.encodePacked(
                        "\x19\x01",
                        DOMAIN_SEPARATOR(),
                        keccak256(
                            abi.encode(
                                keccak256(
                                    "Permit(address owner,address spender,uint256 value,uint256 nonce,uint256 deadline)"
                                ),
                                owner,
                                spender,
                                value,
                                nonces[owner]++,
                                deadline
                            )
                        )
                    )
                ),
                v,
                r,
                s
            );

            require(recoveredAddress != address(0) && recoveredAddress == owner, "INVALID_SIGNER");

            allowance[recoveredAddress][spender] = value;
        }

        emit Approval(owner, spender, value);
    }

    function DOMAIN_SEPARATOR() public view returns (bytes32) {
        return block.chainid == INITIAL_CHAIN_ID ? INITIAL_DOMAIN_SEPARATOR : computeDomainSeparator();
    }

    function computeDomainSeparator() internal view returns (bytes32) {
        return keccak256(
            abi.encode(
                keccak256("EIP712Domain(string name,string version,uint256 chainId,address verifyingContract)"),
                keccak256(bytes(name)),
                keccak256("1"),
                block.chainid,
                address(this)
            )
        );
    }

    /*//////////////////////////////////////////////////////////////
                        INTERNALS
    //////////////////////////////////////////////////////////////*/

    function _mint(address to, uint256 amount) internal {
        totalSupply += amount;

        UserInfo storage user = userInfo[to];

        // Cannot overflow because the sum of all user
        // balances can't exceed the max uint256 value.
        unchecked {
            user.amount = uint224(uint256(user.amount) + amount);
            user.minTaxOn = uint32(block.timestamp + TAX_DURATION);
        }

        emit Transfer(address(0), to, amount);
    }

    function _processTax(uint256 minTaxOn, uint256 amount) internal returns (uint256) {
        if (minTaxOn <= block.timestamp) return amount;

        unchecked {
            // cant overflow because:
            // block.timestamp <= minTaxOn
            // all numbers are small enough for type(uint256).max
            uint256 taxAmount = MAX_TAX * (minTaxOn - block.timestamp) / TAX_DURATION * amount / HUNDRED_PERCENT;
            userInfo[TREASURY].amount = uint224(taxAmount + userInfo[TREASURY].amount);

            return (amount - taxAmount);
        }
    }

    function _revertOnMaxBuyExceeded(uint256 newAmount) internal view {
        if (block.timestamp > MAX_BUY_DISABLED_TIME) {
            return;
        }

        if (block.timestamp > MAX_BUY_END_TIME) {
            if (newAmount > MAX_BUY_ON_END) revert MaxBuyExceeded(MAX_BUY_ON_END, newAmount);
        }

        unchecked {
            // cant overflow because:
            // MAX_BUY_ON_END > MAX_BUY_ON_START
            // MAX_BUY_END_TIME >= block.timestamp
            // all numbers are small enough for type(uint256).max
            uint256 maxBuyAmount = MAX_BUY_ON_END
                - (MAX_BUY_END_TIME - block.timestamp) * (MAX_BUY_ON_END - MAX_BUY_ON_START) / MAX_BUY_DURATION;

            if (maxBuyAmount < newAmount) revert MaxBuyExceeded(maxBuyAmount, newAmount);
        }
    }

    function maxBuy() external view returns (uint256) {
        if (block.timestamp > MAX_BUY_DISABLED_TIME) {
            return type(uint256).max;
        }

        if (block.timestamp > MAX_BUY_END_TIME) {
            return MAX_BUY_ON_END;
        }

        return MAX_BUY_ON_END
            - (MAX_BUY_END_TIME - block.timestamp) * (MAX_BUY_ON_END - MAX_BUY_ON_START) / MAX_BUY_DURATION;
    }

    function setIsAddressExcluded(address user, bool value) external onlyOwner {
        isAddressExcluded[user] = value;

        emit IsAddressExcludedChanged(user, value);
    }
}

File 2 of 2 : Owned.sol
// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.0;

/// @notice Simple single owner authorization mixin.
/// @author Solmate (https://github.com/transmissions11/solmate/blob/main/src/auth/Owned.sol)
abstract contract Owned {
    /*//////////////////////////////////////////////////////////////
                                 EVENTS
    //////////////////////////////////////////////////////////////*/

    event OwnershipTransferred(address indexed user, address indexed newOwner);

    /*//////////////////////////////////////////////////////////////
                            OWNERSHIP STORAGE
    //////////////////////////////////////////////////////////////*/

    address public owner;

    modifier onlyOwner() virtual {
        require(msg.sender == owner, "UNAUTHORIZED");

        _;
    }

    /*//////////////////////////////////////////////////////////////
                               CONSTRUCTOR
    //////////////////////////////////////////////////////////////*/

    constructor(address _owner) {
        owner = _owner;

        emit OwnershipTransferred(address(0), _owner);
    }

    /*//////////////////////////////////////////////////////////////
                             OWNERSHIP LOGIC
    //////////////////////////////////////////////////////////////*/

    function transferOwnership(address newOwner) public virtual onlyOwner {
        owner = newOwner;

        emit OwnershipTransferred(msg.sender, newOwner);
    }
}

Settings
{
  "remappings": [
    "ds-test/=lib/forge-std/lib/ds-test/src/",
    "erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/",
    "forge-std/=lib/forge-std/src/",
    "openzeppelin-contracts/=lib/openzeppelin-contracts/",
    "openzeppelin/=lib/openzeppelin-contracts/contracts/",
    "solmate/=lib/solmate/src/",
    "v2-core/=lib/v2-core/contracts/"
  ],
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "metadata": {
    "useLiteralContent": false,
    "bytecodeHash": "ipfs",
    "appendCBOR": true
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "evmVersion": "paris",
  "libraries": {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"treasury","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"uint256","name":"maxBuy","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"MaxBuyExceeded","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"bool","name":"value","type":"bool"}],"name":"IsAddressExcludedChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","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":"user","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":"","type":"address"}],"name":"isAddressExcluded","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"permit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setIsAddressExcluded","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":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

6101406040523480156200001257600080fd5b506040516200160e3803806200160e83398101604081905262000035916200029c565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060408051808201909152600f81526e47617465732053796e64696361746560881b6020820152600190620000ab908262000373565b50604080518082019091526005815264474154455360d81b6020820152600290620000d7908262000373565b5060126080524660a052620000eb6200016f565b60c052620000fc610258426200043f565b610100526200010e42610e106200043f565b6101205262000129336a084595161401484a0000006200020b565b336000908152600760205260408082208054600160ff1991821681179092556001600160a01b039490941680845291909220805490931690911790915560e052620004e5565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6001604051620001a3919062000467565b6040805191829003822060208301939093528101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b80600360008282546200021f91906200043f565b90915550506001600160a01b038216600081815260046020908152604080832080546001600160e01b03908116870116600160e01b610e10420163ffffffff16021781559051858152909392917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050565b600060208284031215620002af57600080fd5b81516001600160a01b0381168114620002c757600080fd5b9392505050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620002f957607f821691505b6020821081036200031a57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200036e57600081815260208120601f850160051c81016020861015620003495750805b601f850160051c820191505b818110156200036a5782815560010162000355565b5050505b505050565b81516001600160401b038111156200038f576200038f620002ce565b620003a781620003a08454620002e4565b8462000320565b602080601f831160018114620003df5760008415620003c65750858301515b600019600386901b1c1916600185901b1785556200036a565b600085815260208120601f198616915b828110156200041057888601518255948401946001909101908401620003ef565b50858210156200042f5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b808201808211156200046157634e487b7160e01b600052601160045260246000fd5b92915050565b60008083546200047781620002e4565b60018281168015620004925760018114620004a857620004d9565b60ff1984168752821515830287019450620004d9565b8760005260208060002060005b85811015620004d05781548a820152908401908201620004b5565b50505082870194505b50929695505050505050565b60805160a05160c05160e05161010051610120516110bd620005516000396000818161067d0152610be10152600081816106ac0152818161070801528181610c0c0152610c8101526000610b7201526000610657015260006106220152600061019501526110bd6000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806370db69d6116100a2578063a9059cbb11610071578063a9059cbb1461025e578063d505accf14610271578063dd62ed3e14610284578063ebca1bd9146102af578063f2fde38b146102d257600080fd5b806370db69d6146102035780637ecebe001461020b5780638da5cb5b1461022b57806395d89b411461025657600080fd5b806323b872dd116100de57806323b872dd1461017d578063313ce567146101905780633644e515146101c957806370a08231146101d157600080fd5b806306fdde0314610110578063095ea7b31461012e578063144bee9c1461015157806318160ddd14610166575b600080fd5b6101186102e5565b6040516101259190610d78565b60405180910390f35b61014161013c366004610de2565b610373565b6040519015158152602001610125565b61016461015f366004610e0c565b6103e0565b005b61016f60035481565b604051908152602001610125565b61014161018b366004610e48565b61048d565b6101b77f000000000000000000000000000000000000000000000000000000000000000081565b60405160ff9091168152602001610125565b61016f61061e565b61016f6101df366004610e84565b6001600160a01b03166000908152600460205260409020546001600160e01b031690565b61016f610679565b61016f610219366004610e84565b60066020526000908152604090205481565b60005461023e906001600160a01b031681565b6040516001600160a01b039091168152602001610125565b610118610754565b61014161026c366004610de2565b610761565b61016461027f366004610ea6565b61087f565b61016f610292366004610f19565b600560209081526000928352604080842090915290825290205481565b6101416102bd366004610e84565b60076020526000908152604090205460ff1681565b6101646102e0366004610e84565b610ac3565b600180546102f290610f4c565b80601f016020809104026020016040519081016040528092919081815260200182805461031e90610f4c565b801561036b5780601f106103405761010080835404028352916020019161036b565b820191906000526020600020905b81548152906001019060200180831161034e57829003601f168201915b505050505081565b3360008181526005602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103ce9086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b0316331461042e5760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b60448201526064015b60405180910390fd5b6001600160a01b038216600081815260076020908152604091829020805460ff191685151590811790915591519182527f461a5b11efd84b14281b8fcbdaff7e0cccda02679656c3ffd98006d7733846ee910160405180910390a25050565b6001600160a01b038316600090815260056020908152604080832033845290915281205460001981146104e9576104c48382610f9c565b6001600160a01b03861660009081526005602090815260408083203384529091529020555b6001600160a01b038516600090815260046020526040902080546105179085906001600160e01b0316610f9c565b81546001600160e01b0319166001600160e01b03919091161781556001600160a01b03861660009081526007602052604090205460ff1661056e57805461056b90600160e01b900463ffffffff1685610b57565b93505b6001600160a01b0385166000908152600460209081526040808320805460079093529220546001600160e01b0390911686019060ff166105b1576105b181610bdf565b6001600160e01b0316600160e01b610e10420163ffffffff16021781556040518581526001600160a01b0387811691908916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35060019695505050505050565b60007f000000000000000000000000000000000000000000000000000000000000000046146106545761064f610cde565b905090565b507f000000000000000000000000000000000000000000000000000000000000000090565b60007f00000000000000000000000000000000000000000000000000000000000000004211156106aa575060001990565b7f00000000000000000000000000000000000000000000000000000000000000004211156106e1575069d3c21bcecceda100000090565b61025861070269152d02c7e14af680000069d3c21bcecceda1000000610f9c565b61072c427f0000000000000000000000000000000000000000000000000000000000000000610f9c565b6107369190610faf565b6107409190610fc6565b61064f9069d3c21bcecceda1000000610f9c565b600280546102f290610f4c565b33600090815260046020526040812080546107869084906001600160e01b0316610f9c565b81546001600160e01b0319166001600160e01b03919091161781553360009081526007602052604090205460ff166107d45780546107d190600160e01b900463ffffffff1684610b57565b92505b6001600160a01b0384166000908152600460209081526040808320805460079093529220546001600160e01b0390911685019060ff166108175761081781610bdf565b6001600160e01b0316600160e01b610e10420163ffffffff16021781556040518481526001600160a01b0386169033907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3506001949350505050565b428410156108cf5760405162461bcd60e51b815260206004820152601760248201527f5045524d49545f444541444c494e455f455850495245440000000000000000006044820152606401610425565b600060016108db61061e565b6001600160a01b038a811660008181526006602090815260409182902080546001810190915582517f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98184015280840194909452938d166060840152608083018c905260a083019390935260c08083018b90528151808403909101815260e08301909152805192019190912061190160f01b6101008301526101028201929092526101228101919091526101420160408051601f198184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016020604051602081039080840390855afa1580156109e7573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b03811615801590610a1d5750876001600160a01b0316816001600160a01b0316145b610a5a5760405162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa9a4a3a722a960911b6044820152606401610425565b6001600160a01b0390811660009081526005602090815260408083208a8516808552908352928190208990555188815291928a16917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a350505050505050565b6000546001600160a01b03163314610b0c5760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b6044820152606401610425565b600080546001600160a01b0319166001600160a01b0383169081178255604051909133917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a350565b6000428311610b675750806103da565b506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016600090815260046020526040902080546001600160e01b03808216612710610e10610bb8429098039790970296909604850295909504948501166001600160e01b03199091161790550390565b7f0000000000000000000000000000000000000000000000000000000000000000421115610c0a5750565b7f0000000000000000000000000000000000000000000000000000000000000000421115610c705769d3c21bcecceda1000000811115610c7057604051632baadd4d60e21b815269d3c21bcecceda1000000600482015260248101829052604401610425565b61025869be951906eba2aa800000427f000000000000000000000000000000000000000000000000000000000000000003020469d3c21bcecceda10000000381811015610cda57604051632baadd4d60e21b81526004810182905260248101839052604401610425565b5050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6001604051610d109190610fe8565b6040805191829003822060208301939093528101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b600060208083528351808285015260005b81811015610da557858101830151858201604001528201610d89565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610ddd57600080fd5b919050565b60008060408385031215610df557600080fd5b610dfe83610dc6565b946020939093013593505050565b60008060408385031215610e1f57600080fd5b610e2883610dc6565b915060208301358015158114610e3d57600080fd5b809150509250929050565b600080600060608486031215610e5d57600080fd5b610e6684610dc6565b9250610e7460208501610dc6565b9150604084013590509250925092565b600060208284031215610e9657600080fd5b610e9f82610dc6565b9392505050565b600080600080600080600060e0888a031215610ec157600080fd5b610eca88610dc6565b9650610ed860208901610dc6565b95506040880135945060608801359350608088013560ff81168114610efc57600080fd5b9699959850939692959460a0840135945060c09093013592915050565b60008060408385031215610f2c57600080fd5b610f3583610dc6565b9150610f4360208401610dc6565b90509250929050565b600181811c90821680610f6057607f821691505b602082108103610f8057634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b818103818111156103da576103da610f86565b80820281158282048414176103da576103da610f86565b600082610fe357634e487b7160e01b600052601260045260246000fd5b500490565b600080835481600182811c91508083168061100457607f831692505b6020808410820361102357634e487b7160e01b86526022600452602486fd5b818015611037576001811461104c57611079565b60ff1986168952841515850289019650611079565b60008a81526020902060005b868110156110715781548b820152908501908301611058565b505084890196505b50949897505050505050505056fea2646970667358221220624dcc6ebc89e78b84eac784107a26dda8a6985f54ced37cc71aad7a2ed0ccd564736f6c634300081300330000000000000000000000007342c794e2711ea6cfcc1fbddab9b5ab424dbc07

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061010b5760003560e01c806370db69d6116100a2578063a9059cbb11610071578063a9059cbb1461025e578063d505accf14610271578063dd62ed3e14610284578063ebca1bd9146102af578063f2fde38b146102d257600080fd5b806370db69d6146102035780637ecebe001461020b5780638da5cb5b1461022b57806395d89b411461025657600080fd5b806323b872dd116100de57806323b872dd1461017d578063313ce567146101905780633644e515146101c957806370a08231146101d157600080fd5b806306fdde0314610110578063095ea7b31461012e578063144bee9c1461015157806318160ddd14610166575b600080fd5b6101186102e5565b6040516101259190610d78565b60405180910390f35b61014161013c366004610de2565b610373565b6040519015158152602001610125565b61016461015f366004610e0c565b6103e0565b005b61016f60035481565b604051908152602001610125565b61014161018b366004610e48565b61048d565b6101b77f000000000000000000000000000000000000000000000000000000000000001281565b60405160ff9091168152602001610125565b61016f61061e565b61016f6101df366004610e84565b6001600160a01b03166000908152600460205260409020546001600160e01b031690565b61016f610679565b61016f610219366004610e84565b60066020526000908152604090205481565b60005461023e906001600160a01b031681565b6040516001600160a01b039091168152602001610125565b610118610754565b61014161026c366004610de2565b610761565b61016461027f366004610ea6565b61087f565b61016f610292366004610f19565b600560209081526000928352604080842090915290825290205481565b6101416102bd366004610e84565b60076020526000908152604090205460ff1681565b6101646102e0366004610e84565b610ac3565b600180546102f290610f4c565b80601f016020809104026020016040519081016040528092919081815260200182805461031e90610f4c565b801561036b5780601f106103405761010080835404028352916020019161036b565b820191906000526020600020905b81548152906001019060200180831161034e57829003601f168201915b505050505081565b3360008181526005602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103ce9086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b0316331461042e5760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b60448201526064015b60405180910390fd5b6001600160a01b038216600081815260076020908152604091829020805460ff191685151590811790915591519182527f461a5b11efd84b14281b8fcbdaff7e0cccda02679656c3ffd98006d7733846ee910160405180910390a25050565b6001600160a01b038316600090815260056020908152604080832033845290915281205460001981146104e9576104c48382610f9c565b6001600160a01b03861660009081526005602090815260408083203384529091529020555b6001600160a01b038516600090815260046020526040902080546105179085906001600160e01b0316610f9c565b81546001600160e01b0319166001600160e01b03919091161781556001600160a01b03861660009081526007602052604090205460ff1661056e57805461056b90600160e01b900463ffffffff1685610b57565b93505b6001600160a01b0385166000908152600460209081526040808320805460079093529220546001600160e01b0390911686019060ff166105b1576105b181610bdf565b6001600160e01b0316600160e01b610e10420163ffffffff16021781556040518581526001600160a01b0387811691908916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35060019695505050505050565b60007f000000000000000000000000000000000000000000000000000000000000000146146106545761064f610cde565b905090565b507fb2ff4b0d94b734650c920ad477aaf769b3f07e947d639727768508933d8f1fbe90565b60007f0000000000000000000000000000000000000000000000000000000064b013d34211156106aa575060001990565b7f0000000000000000000000000000000000000000000000000000000064b0081b4211156106e1575069d3c21bcecceda100000090565b61025861070269152d02c7e14af680000069d3c21bcecceda1000000610f9c565b61072c427f0000000000000000000000000000000000000000000000000000000064b0081b610f9c565b6107369190610faf565b6107409190610fc6565b61064f9069d3c21bcecceda1000000610f9c565b600280546102f290610f4c565b33600090815260046020526040812080546107869084906001600160e01b0316610f9c565b81546001600160e01b0319166001600160e01b03919091161781553360009081526007602052604090205460ff166107d45780546107d190600160e01b900463ffffffff1684610b57565b92505b6001600160a01b0384166000908152600460209081526040808320805460079093529220546001600160e01b0390911685019060ff166108175761081781610bdf565b6001600160e01b0316600160e01b610e10420163ffffffff16021781556040518481526001600160a01b0386169033907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3506001949350505050565b428410156108cf5760405162461bcd60e51b815260206004820152601760248201527f5045524d49545f444541444c494e455f455850495245440000000000000000006044820152606401610425565b600060016108db61061e565b6001600160a01b038a811660008181526006602090815260409182902080546001810190915582517f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98184015280840194909452938d166060840152608083018c905260a083019390935260c08083018b90528151808403909101815260e08301909152805192019190912061190160f01b6101008301526101028201929092526101228101919091526101420160408051601f198184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016020604051602081039080840390855afa1580156109e7573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b03811615801590610a1d5750876001600160a01b0316816001600160a01b0316145b610a5a5760405162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa9a4a3a722a960911b6044820152606401610425565b6001600160a01b0390811660009081526005602090815260408083208a8516808552908352928190208990555188815291928a16917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a350505050505050565b6000546001600160a01b03163314610b0c5760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b6044820152606401610425565b600080546001600160a01b0319166001600160a01b0383169081178255604051909133917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a350565b6000428311610b675750806103da565b506001600160a01b037f0000000000000000000000007342c794e2711ea6cfcc1fbddab9b5ab424dbc0716600090815260046020526040902080546001600160e01b03808216612710610e10610bb8429098039790970296909604850295909504948501166001600160e01b03199091161790550390565b7f0000000000000000000000000000000000000000000000000000000064b013d3421115610c0a5750565b7f0000000000000000000000000000000000000000000000000000000064b0081b421115610c705769d3c21bcecceda1000000811115610c7057604051632baadd4d60e21b815269d3c21bcecceda1000000600482015260248101829052604401610425565b61025869be951906eba2aa800000427f0000000000000000000000000000000000000000000000000000000064b0081b03020469d3c21bcecceda10000000381811015610cda57604051632baadd4d60e21b81526004810182905260248101839052604401610425565b5050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6001604051610d109190610fe8565b6040805191829003822060208301939093528101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b600060208083528351808285015260005b81811015610da557858101830151858201604001528201610d89565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610ddd57600080fd5b919050565b60008060408385031215610df557600080fd5b610dfe83610dc6565b946020939093013593505050565b60008060408385031215610e1f57600080fd5b610e2883610dc6565b915060208301358015158114610e3d57600080fd5b809150509250929050565b600080600060608486031215610e5d57600080fd5b610e6684610dc6565b9250610e7460208501610dc6565b9150604084013590509250925092565b600060208284031215610e9657600080fd5b610e9f82610dc6565b9392505050565b600080600080600080600060e0888a031215610ec157600080fd5b610eca88610dc6565b9650610ed860208901610dc6565b95506040880135945060608801359350608088013560ff81168114610efc57600080fd5b9699959850939692959460a0840135945060c09093013592915050565b60008060408385031215610f2c57600080fd5b610f3583610dc6565b9150610f4360208401610dc6565b90509250929050565b600181811c90821680610f6057607f821691505b602082108103610f8057634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b818103818111156103da576103da610f86565b80820281158282048414176103da576103da610f86565b600082610fe357634e487b7160e01b600052601260045260246000fd5b500490565b600080835481600182811c91508083168061100457607f831692505b6020808410820361102357634e487b7160e01b86526022600452602486fd5b818015611037576001811461104c57611079565b60ff1986168952841515850289019650611079565b60008a81526020902060005b868110156110715781548b820152908501908301611058565b505084890196505b50949897505050505050505056fea2646970667358221220624dcc6ebc89e78b84eac784107a26dda8a6985f54ced37cc71aad7a2ed0ccd564736f6c63430008130033

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

0000000000000000000000007342c794e2711ea6cfcc1fbddab9b5ab424dbc07

-----Decoded View---------------
Arg [0] : treasury (address): 0x7342c794E2711eA6Cfcc1fBdDab9b5aB424dBC07

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000007342c794e2711ea6cfcc1fbddab9b5ab424dbc07


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.