ETH Price: $2,550.07 (-4.21%)
Gas: 1 Gwei

Token

Hepe (HEPE)
 

Overview

Max Total Supply

69,420,000,000,000 HEPE

Holders

156 (0.00%)

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
200,000,000,000 HEPE

Value
$0.00
0x21985fd7e6ede06e25d8afde4a948826a06c92dc
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

Hey, what’s up mamacitas and papacitos! I’m craving tacos, carnal. Haha sorry let me introduce myself, my name is Hepe, I am Pepe’s uncle from Mexico and I have decided to finally get in on the action of this wild cryptocurrency space.

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
Hepe

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-10
*/

pragma solidity 0.8.19;

// SPDX-License-Identifier: MIT

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

    function _msgData() internal view virtual returns (bytes calldata) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}

interface IERC20 {
    /**
     * @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 `recipient`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address recipient, 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 `sender` to `recipient` 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 sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

    /**
     * @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);
}

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 ERC20 is Context, IERC20, IERC20Metadata {
    mapping(address => uint256) private _balances;

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

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;

    /**
     * @dev Sets the values for {name} and {symbol}.
     *
     * All two of these values are immutable: they can only be set once during
     * construction.
     */
    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }

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

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

    /**
     * @dev Returns the number of decimals used to get its user representation.
     * For example, if `decimals` equals `2`, a balance of `505` tokens should
     * be displayed to a user as `5.05` (`505 / 10 ** 2`).
     *
     * Tokens usually opt for a value of 18, imitating the relationship between
     * Ether and Wei. This is the default value returned by this function, unless
     * it's overridden.
     *
     * NOTE: This information is only used for _display_ purposes: it in
     * no way affects any of the arithmetic of the contract, including
     * {IERC20-balanceOf} and {IERC20-transfer}.
     */
    function decimals() public view virtual override returns (uint8) {
        return 18;
    }

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

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

    /**
     * @dev See {IERC20-transfer}.
     *
     * Requirements:
     *
     * - `to` cannot be the zero address.
     * - the caller must have a balance of at least `amount`.
     */
    function transfer(address to, uint256 amount) public virtual override returns (bool) {
        address owner = _msgSender();
        _transfer(owner, to, amount);
        return true;
    }

    /**
     * @dev See {IERC20-allowance}.
     */
    function allowance(address owner, address spender) public view virtual override returns (uint256) {
        return _allowances[owner][spender];
    }

    /**
     * @dev See {IERC20-approve}.
     *
     * NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on
     * `transferFrom`. This is semantically equivalent to an infinite approval.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     */
    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, amount);
        return true;
    }

    /**
     * @dev See {IERC20-transferFrom}.
     *
     * Emits an {Approval} event indicating the updated allowance. This is not
     * required by the EIP. See the note at the beginning of {ERC20}.
     *
     * NOTE: Does not update the allowance if the current allowance
     * is the maximum `uint256`.
     *
     * Requirements:
     *
     * - `from` and `to` cannot be the zero address.
     * - `from` must have a balance of at least `amount`.
     * - the caller must have allowance for ``from``'s tokens of at least
     * `amount`.
     */
    function transferFrom(address from, address to, uint256 amount) public virtual override returns (bool) {
        address spender = _msgSender();
        _spendAllowance(from, spender, amount);
        _transfer(from, to, amount);
        return true;
    }

    /**
     * @dev Atomically increases the allowance granted to `spender` by the caller.
     *
     * This is an alternative to {approve} that can be used as a mitigation for
     * problems described in {IERC20-approve}.
     *
     * Emits an {Approval} event indicating the updated allowance.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     */
    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, allowance(owner, spender) + addedValue);
        return true;
    }

    /**
     * @dev Atomically decreases the allowance granted to `spender` by the caller.
     *
     * This is an alternative to {approve} that can be used as a mitigation for
     * problems described in {IERC20-approve}.
     *
     * Emits an {Approval} event indicating the updated allowance.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     * - `spender` must have allowance for the caller of at least
     * `subtractedValue`.
     */
    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        address owner = _msgSender();
        uint256 currentAllowance = allowance(owner, spender);
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(owner, spender, currentAllowance - subtractedValue);
        }

        return true;
    }

    /**
     * @dev Moves `amount` of tokens from `from` to `to`.
     *
     * This internal function is equivalent to {transfer}, and can be used to
     * e.g. implement automatic token fees, slashing mechanisms, etc.
     *
     * Emits a {Transfer} event.
     *
     * Requirements:
     *
     * - `from` cannot be the zero address.
     * - `to` cannot be the zero address.
     * - `from` must have a balance of at least `amount`.
     */
    function _transfer(address from, address to, uint256 amount) internal virtual {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");

        uint256 fromBalance = _balances[from];
        require(fromBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[from] = fromBalance - amount;
            // Overflow not possible: the sum of all balances is capped by totalSupply, and the sum is preserved by
            // decrementing then incrementing.
            _balances[to] += amount;
        }

        emit Transfer(from, to, amount);
    }

    /** @dev Creates `amount` tokens and assigns them to `account`, increasing
     * the total supply.
     *
     * Emits a {Transfer} event with `from` set to the zero address.
     *
     * Requirements:
     *
     * - `account` cannot be the zero address.
     */
    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _totalSupply += amount;
        unchecked {
            // Overflow not possible: balance + amount is at most totalSupply + amount, which is checked above.
            _balances[account] += amount;
        }
        emit Transfer(address(0), account, amount);
    }

    /**
     * @dev Destroys `amount` tokens from `account`, reducing the
     * total supply.
     *
     * Emits a {Transfer} event with `to` set to the zero address.
     *
     * Requirements:
     *
     * - `account` cannot be the zero address.
     * - `account` must have at least `amount` tokens.
     */
    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");

        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
        unchecked {
            _balances[account] = accountBalance - amount;
            // Overflow not possible: amount <= accountBalance <= totalSupply.
            _totalSupply -= amount;
        }

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

    /**
     * @dev Sets `amount` as the allowance of `spender` over the `owner` s tokens.
     *
     * This internal function is equivalent to `approve`, and can be used to
     * e.g. set automatic allowances for certain subsystems, etc.
     *
     * Emits an {Approval} event.
     *
     * Requirements:
     *
     * - `owner` cannot be the zero address.
     * - `spender` cannot be the zero address.
     */
    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);
    }

    /**
     * @dev Updates `owner` s allowance for `spender` based on spent `amount`.
     *
     * Does not update the allowance amount in case of infinite allowance.
     * Revert if not enough allowance is available.
     *
     * Might emit an {Approval} event.
     */
    function _spendAllowance(address owner, address spender, uint256 amount) internal virtual {
        uint256 currentAllowance = allowance(owner, spender);
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "ERC20: insufficient allowance");
            unchecked {
                _approve(owner, spender, currentAllowance - amount);
            }
        }
    }
}

contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    
    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    function owner() public view returns (address) {
        return _owner;
    }

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

    function renounceOwnership() external virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

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

library Address {
    function isContract(address account) internal view returns (bool) {
        return account.code.length > 0;
    }

    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");

        (bool success, ) = recipient.call{value: amount}("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }

    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionCallWithValue(target, data, 0, "Address: low-level call failed");
    }

    function functionCall(
        address target,
        bytes memory data,
        string memory errorMessage
    ) internal returns (bytes memory) {
        return functionCallWithValue(target, data, 0, errorMessage);
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
     * but also transferring `value` wei to `target`.
     *
     * Requirements:
     *
     * - the calling contract must have an ETH balance of at least `value`.
     * - the called Solidity function must be `payable`.
     *
     * _Available since v3.1._
     */
    function functionCallWithValue(
        address target,
        bytes memory data,
        uint256 value
    ) internal returns (bytes memory) {
        return functionCallWithValue(target, data, value, "Address: low-level call with value failed");
    }

    /**
     * @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but
     * with `errorMessage` as a fallback revert reason when `target` reverts.
     *
     * _Available since v3.1._
     */
    function functionCallWithValue(
        address target,
        bytes memory data,
        uint256 value,
        string memory errorMessage
    ) internal returns (bytes memory) {
        require(address(this).balance >= value, "Address: insufficient balance for call");
        (bool success, bytes memory returndata) = target.call{value: value}(data);
        return verifyCallResultFromTarget(target, success, returndata, errorMessage);
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
     * but performing a static call.
     *
     * _Available since v3.3._
     */
    function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) {
        return functionStaticCall(target, data, "Address: low-level static call failed");
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],
     * but performing a static call.
     *
     * _Available since v3.3._
     */
    function functionStaticCall(
        address target,
        bytes memory data,
        string memory errorMessage
    ) internal view returns (bytes memory) {
        (bool success, bytes memory returndata) = target.staticcall(data);
        return verifyCallResultFromTarget(target, success, returndata, errorMessage);
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
     * but performing a delegate call.
     *
     * _Available since v3.4._
     */
    function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionDelegateCall(target, data, "Address: low-level delegate call failed");
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],
     * but performing a delegate call.
     *
     * _Available since v3.4._
     */
    function functionDelegateCall(
        address target,
        bytes memory data,
        string memory errorMessage
    ) internal returns (bytes memory) {
        (bool success, bytes memory returndata) = target.delegatecall(data);
        return verifyCallResultFromTarget(target, success, returndata, errorMessage);
    }

    /**
     * @dev Tool to verify that a low level call to smart-contract was successful, and revert (either by bubbling
     * the revert reason or using the provided one) in case of unsuccessful call or if target was not a contract.
     *
     * _Available since v4.8._
     */
    function verifyCallResultFromTarget(
        address target,
        bool success,
        bytes memory returndata,
        string memory errorMessage
    ) internal view returns (bytes memory) {
        if (success) {
            if (returndata.length == 0) {
                // only check isContract if the call was successful and the return data is empty
                // otherwise we already know that it was a contract
                require(isContract(target), "Address: call to non-contract");
            }
            return returndata;
        } else {
            _revert(returndata, errorMessage);
        }
    }

    /**
     * @dev Tool to verify that a low level call was successful, and revert if it wasn't, either by bubbling the
     * revert reason or using the provided one.
     *
     * _Available since v4.3._
     */
    function verifyCallResult(
        bool success,
        bytes memory returndata,
        string memory errorMessage
    ) internal pure returns (bytes memory) {
        if (success) {
            return returndata;
        } else {
            _revert(returndata, errorMessage);
        }
    }

    function _revert(bytes memory returndata, string memory errorMessage) private pure {
        // Look for revert reason and bubble it up if present
        if (returndata.length > 0) {
            // The easiest way to bubble the revert reason is using memory via assembly
            /// @solidity memory-safe-assembly
            assembly {
                let returndata_size := mload(returndata)
                revert(add(32, returndata), returndata_size)
            }
        } else {
            revert(errorMessage);
        }
    }
}

library SafeERC20 {
    using Address for address;

    function safeTransfer(IERC20 token, address to, uint256 value) internal {
        _callOptionalReturn(token, abi.encodeWithSelector(token.transfer.selector, to, value));
    }

    function safeTransferFrom(IERC20 token, address from, address to, uint256 value) internal {
        _callOptionalReturn(token, abi.encodeWithSelector(token.transferFrom.selector, from, to, value));
    }

    function _callOptionalReturn(IERC20 token, bytes memory data) private {
        bytes memory returndata = address(token).functionCall(data, "SafeERC20: low-level call failed");
        if (returndata.length > 0) {
            require(abi.decode(returndata, (bool)), "SafeERC20: ERC20 operation did not succeed");
        }
    }

    function safeApprove(IERC20 token, address spender, uint256 value) internal {
        // safeApprove should only be called when setting an initial allowance,
        // or when resetting it to zero. To increase and decrease it, use
        // 'safeIncreaseAllowance' and 'safeDecreaseAllowance'
        require(
            (value == 0) || (token.allowance(address(this), spender) == 0),
            "SafeERC20: approve from non-zero to non-zero allowance"
        );
        _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, value));
    }
}

interface IDexRouter {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
}

interface IDexFactory {
    function createPair(address tokenA, address tokenB) external returns (address pair);
}

contract Hepe is ERC20, Ownable {

    mapping (address => bool) public whitelisted;
    mapping (address => bool) public exemptFromTxLimits;
    mapping (address => bool) public isAMMPair;

    uint256 public maxTransaction;
    uint256 public maxWallet;
    
    bool public publicTradingActive = false;
    bool public limitsInEffect = true;

    address public lpPair;
    IDexRouter public dexRouter;

    uint256 public constant FEE_DIVISOR = 10000;

    // events

    event UpdatedMaxTransaction(uint256 newMax);
    event UpdatedMaxWallet(uint256 newMax);
    event SetWhitelisted(address _address, bool _isExempt);
    event SetExemptFromTxLimits(address _address, bool _isExempt);
    event RemovedLimits();
    event PublicTradingStarted();

    // constructor

    constructor(string memory _name, string memory _symbol, uint256 _totalSupplyInTokens)
        ERC20(_name, _symbol)
    {   
        _mint(msg.sender, _totalSupplyInTokens * (10 ** decimals()));

        address _v2Router;

        // @dev assumes WETH pair
        if(block.chainid == 1){
            _v2Router = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
        } else if(block.chainid == 5){
            _v2Router = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
        } else if(block.chainid == 56){
            _v2Router = 0x10ED43C718714eb63d5aA57B78B54704E256024E;
        } else if(block.chainid == 97){
            _v2Router = 0xD99D1c33F9fC3444f8101754aBC46c52416550D1;
        } else if(block.chainid == 42161){
            _v2Router = 0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506;
        } else {
            revert("Chain not configured");
        }

        dexRouter = IDexRouter(_v2Router);

        maxTransaction = totalSupply() * 5 / 1000;
        maxWallet = totalSupply() * 1 / 100;

        lpPair = IDexFactory(dexRouter.factory()).createPair(address(this), address(dexRouter.WETH()));

        isAMMPair[lpPair] = true;

        exemptFromTxLimits[lpPair] = true;
        exemptFromTxLimits[msg.sender] = true;
        exemptFromTxLimits[address(this)] = true;

        whitelisted[msg.sender] = true;
        whitelisted[address(this)] = true;
 
        _approve(address(msg.sender), address(dexRouter), totalSupply());
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual override {

        if(whitelisted[from] || whitelisted[to]){
            super._transfer(from,to,amount);
	    return;
        }

        require(publicTradingActive, "Trading not active");
        
        if(limitsInEffect){
            checkLimits(from, to, amount);
        }

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

    function checkLimits(address from, address to, uint256 amount) internal view {
        // buy
        if (isAMMPair[from] && !exemptFromTxLimits[to]) {
            require(amount <= maxTransaction, "Max Txn");
            require(amount + balanceOf(to) <= maxWallet, "Max wallet");
        } 
        // sell
        else if (isAMMPair[to] && !exemptFromTxLimits[from]) {
            require(amount <= maxTransaction, "Max Txn");
        }
        else if(!exemptFromTxLimits[to]) {
            require(amount + balanceOf(to) <= maxWallet, "Max wallet");
        }
    }

    // owner functions
    function setWhitelisted(address _address, bool _isWhitelisted) external onlyOwner {
        require(_address != address(0), "Zero Address");
        whitelisted[_address] = _isWhitelisted;
        emit SetWhitelisted(_address, _isWhitelisted);
    }

    function setExemptFromTxLimits(address _address, bool _isExempt) external onlyOwner {
        require(_address != address(0), "Zero Address");
        if(!_isExempt){
            require(_address != lpPair, "Cannot remove pair");
        }
        exemptFromTxLimits[_address] = _isExempt;
        emit SetExemptFromTxLimits(_address, _isExempt);
    }

    function updateMaxTransaction(uint256 newNumInTokens) external onlyOwner {
        require(newNumInTokens >= (totalSupply() * 5 / 1000)/(10**decimals()), "Too low");
        maxTransaction = newNumInTokens * (10**decimals());
        emit UpdatedMaxTransaction(maxTransaction);
    }

    function updateMaxWallet(uint256 newNumInTokens) external onlyOwner {
        require(newNumInTokens >= (totalSupply() * 5 / 1000)/(10**decimals()), "Too low");
        maxWallet = newNumInTokens * (10**decimals());
        emit UpdatedMaxWallet(maxWallet);
    }

    function enablePublicTrading() external onlyOwner {
        publicTradingActive = true;
        emit PublicTradingStarted();
    }

    function removeLimits() external onlyOwner {
        limitsInEffect = false;
        emit RemovedLimits();
    }

    function airdropToWallets(address[] calldata wallets, uint256[] calldata amountsInWei) external onlyOwner {
        require(wallets.length == amountsInWei.length, "arrays length mismatch");
        for(uint256 i = 0; i < wallets.length; i++){
            super._transfer(msg.sender, wallets[i], amountsInWei[i]);
        }
    }

    function rescueTokens(address _token, address _to) external onlyOwner {
        require(_token != address(0), "_token address cannot be 0");
        uint256 _contractBalance = IERC20(_token).balanceOf(address(this));
        SafeERC20.safeTransfer(IERC20(_token),_to, _contractBalance);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"string","name":"_name","type":"string"},{"internalType":"string","name":"_symbol","type":"string"},{"internalType":"uint256","name":"_totalSupplyInTokens","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[],"name":"PublicTradingStarted","type":"event"},{"anonymous":false,"inputs":[],"name":"RemovedLimits","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_address","type":"address"},{"indexed":false,"internalType":"bool","name":"_isExempt","type":"bool"}],"name":"SetExemptFromTxLimits","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_address","type":"address"},{"indexed":false,"internalType":"bool","name":"_isExempt","type":"bool"}],"name":"SetWhitelisted","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newMax","type":"uint256"}],"name":"UpdatedMaxTransaction","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newMax","type":"uint256"}],"name":"UpdatedMaxWallet","type":"event"},{"inputs":[],"name":"FEE_DIVISOR","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"wallets","type":"address[]"},{"internalType":"uint256[]","name":"amountsInWei","type":"uint256[]"}],"name":"airdropToWallets","outputs":[],"stateMutability":"nonpayable","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":[],"name":"dexRouter","outputs":[{"internalType":"contract IDexRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"enablePublicTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"exemptFromTxLimits","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":[{"internalType":"address","name":"","type":"address"}],"name":"isAMMPair","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"limitsInEffect","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lpPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTransaction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":[],"name":"publicTradingActive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"address","name":"_to","type":"address"}],"name":"rescueTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"_isExempt","type":"bool"}],"name":"setExemptFromTxLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"_isWhitelisted","type":"bool"}],"name":"setWhitelisted","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"},{"inputs":[{"internalType":"uint256","name":"newNumInTokens","type":"uint256"}],"name":"updateMaxTransaction","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newNumInTokens","type":"uint256"}],"name":"updateMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"whitelisted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"}]

6080604052600b805461ffff19166101001790553480156200002057600080fd5b50604051620025f8380380620025f883398101604081905262000043916200074d565b828260036200005383826200084f565b5060046200006282826200084f565b5050506000620000776200049960201b60201c565b600580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350620000ea33620000d86012600a62000a30565b620000e4908462000a48565b6200049d565b600046600103620001115750737a250d5630b4cf539739df2c5dacb4c659f2488d620001f3565b46600503620001365750737a250d5630b4cf539739df2c5dacb4c659f2488d620001f3565b466038036200015b57507310ed43c718714eb63d5aa57b78b54704e256024e620001f3565b4660610362000180575073d99d1c33f9fc3444f8101754abc46c52416550d1620001f3565b4661a4b103620001a65750731b02da8cb0d097eb8d57a175b88c7d8b47997506620001f3565b60405162461bcd60e51b815260206004820152601460248201527f436861696e206e6f7420636f6e6669677572656400000000000000000000000060448201526064015b60405180910390fd5b600c80546001600160a01b0319166001600160a01b0383161790556103e86200021b60025490565b6200022890600562000a48565b62000234919062000a62565b60095560646200024360025490565b6200025090600162000a48565b6200025c919062000a62565b600a55600c546040805163c45a015560e01b815290516001600160a01b039092169163c45a0155916004808201926020929091908290030181865afa158015620002aa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002d0919062000a85565b6001600160a01b031663c9c6539630600c60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000333573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000359919062000a85565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620003a7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003cd919062000a85565b600b805462010000600160b01b031916620100006001600160a01b0393841681029190911780835581900483166000908152600860209081526040808320805460ff19908116600190811790925595549490940486168352600782528083208054861685179055338084528184208054871686179055308085528285208054881687179055818552600690935281842080548716861790559183529091208054909316909117909155600c546200048f92166200048960025490565b62000560565b5050505062000ac6565b3390565b6001600160a01b038216620004f55760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401620001ea565b806002600082825462000509919062000ab0565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b6001600160a01b038316620005c45760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401620001ea565b6001600160a01b038216620006275760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401620001ea565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112620006b057600080fd5b81516001600160401b0380821115620006cd57620006cd62000688565b604051601f8301601f19908116603f01168101908282118183101715620006f857620006f862000688565b816040528381526020925086838588010111156200071557600080fd5b600091505b838210156200073957858201830151818301840152908201906200071a565b600093810190920192909252949350505050565b6000806000606084860312156200076357600080fd5b83516001600160401b03808211156200077b57600080fd5b62000789878388016200069e565b94506020860151915080821115620007a057600080fd5b50620007af868287016200069e565b925050604084015190509250925092565b600181811c90821680620007d557607f821691505b602082108103620007f657634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200084a57600081815260208120601f850160051c81016020861015620008255750805b601f850160051c820191505b81811015620008465782815560010162000831565b5050505b505050565b81516001600160401b038111156200086b576200086b62000688565b62000883816200087c8454620007c0565b84620007fc565b602080601f831160018114620008bb5760008415620008a25750858301515b600019600386901b1c1916600185901b17855562000846565b600085815260208120601f198616915b82811015620008ec57888601518255948401946001909101908401620008cb565b50858210156200090b5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620009725781600019048211156200095657620009566200091b565b808516156200096457918102915b93841c939080029062000936565b509250929050565b6000826200098b5750600162000a2a565b816200099a5750600062000a2a565b8160018114620009b35760028114620009be57620009de565b600191505062000a2a565b60ff841115620009d257620009d26200091b565b50506001821b62000a2a565b5060208310610133831016604e8410600b841016171562000a03575081810a62000a2a565b62000a0f838362000931565b806000190482111562000a265762000a266200091b565b0290505b92915050565b600062000a4160ff8416836200097a565b9392505050565b808202811582820484141762000a2a5762000a2a6200091b565b60008262000a8057634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121562000a9857600080fd5b81516001600160a01b038116811462000a4157600080fd5b8082018082111562000a2a5762000a2a6200091b565b611b228062000ad66000396000f3fe608060405234801561001057600080fd5b50600436106101f05760003560e01c8063751039fc1161010f578063a9059cbb116100a2578063dd62ed3e11610071578063dd62ed3e14610447578063f2fde38b1461045a578063f8b45b051461046d578063fcfee5e21461047657600080fd5b8063a9059cbb146103e5578063b0249cc6146103f8578063c3f70b521461041b578063d936547e1461042457600080fd5b806394c9290f116100de57806394c9290f1461039e57806395d89b41146103c15780639e93ad8e146103c9578063a457c2d7146103d257600080fd5b8063751039fc1461036557806386c978641461036d5780638da5cb5b1461037a5780639281aa0b1461038b57600080fd5b8063313ce567116101875780634a62bb65116101565780634a62bb651461030f5780635431c94e1461032157806370a0823114610334578063715018a61461035d57600080fd5b8063313ce567146102c157806339509351146102d05780633d22971c146102e3578063452ed4f1146102f657600080fd5b806318160ddd116101c357806318160ddd146102765780631c499ab0146102885780632307b4411461029b57806323b872dd146102ae57600080fd5b80630517d13d146101f557806306fdde031461020a5780630758d92414610228578063095ea7b314610253575b600080fd5b610208610203366004611660565b61047e565b005b610212610573565b60405161021f919061169d565b60405180910390f35b600c5461023b906001600160a01b031681565b6040516001600160a01b03909116815260200161021f565b6102666102613660046116ec565b610605565b604051901515815260200161021f565b6002545b60405190815260200161021f565b610208610296366004611660565b61061f565b6102086102a9366004611762565b610704565b6102666102bc3660046117ce565b6107e3565b6040516012815260200161021f565b6102666102de3660046116ec565b610807565b6102086102f136600461181b565b610829565b600b5461023b906201000090046001600160a01b031681565b600b5461026690610100900460ff1681565b61020861032f366004611852565b61095a565b61027a610342366004611885565b6001600160a01b031660009081526020819052604090205490565b610208610a57565b610208610acb565b600b546102669060ff1681565b6005546001600160a01b031661023b565b61020861039936600461181b565b610b2b565b6102666103ac366004611885565b60076020526000908152604090205460ff1681565b610212610bf6565b61027a61271081565b6102666103e03660046116ec565b610c05565b6102666103f33660046116ec565b610c80565b610266610406366004611885565b60086020526000908152604090205460ff1681565b61027a60095481565b610266610432366004611885565b60066020526000908152604090205460ff1681565b61027a610455366004611852565b610c8e565b610208610468366004611885565b610cb9565b61027a600a5481565b610208610da4565b6005546001600160a01b031633146104b15760405162461bcd60e51b81526004016104a8906118a7565b60405180910390fd5b6104bd6012600a6119d6565b6103e86104c960025490565b6104d49060056119e5565b6104de91906119fc565b6104e891906119fc565b8110156105215760405162461bcd60e51b8152602060048201526007602482015266546f6f206c6f7760c81b60448201526064016104a8565b61052d6012600a6119d6565b61053790826119e5565b60098190556040519081527f76a9278644b7300961aa0e7e86f10934585987f1daf1c6ecc971c18376691574906020015b60405180910390a150565b60606003805461058290611a1e565b80601f01602080910402602001604051908101604052809291908181526020018280546105ae90611a1e565b80156105fb5780601f106105d0576101008083540402835291602001916105fb565b820191906000526020600020905b8154815290600101906020018083116105de57829003601f168201915b5050505050905090565b600033610613818585610e06565b60019150505b92915050565b6005546001600160a01b031633146106495760405162461bcd60e51b81526004016104a8906118a7565b6106556012600a6119d6565b6103e861066160025490565b61066c9060056119e5565b61067691906119fc565b61068091906119fc565b8110156106b95760405162461bcd60e51b8152602060048201526007602482015266546f6f206c6f7760c81b60448201526064016104a8565b6106c56012600a6119d6565b6106cf90826119e5565b600a8190556040519081527f3046ad62de8b70d396246aaed19ff2559ff20df8706520cbde58320766c4276290602001610568565b6005546001600160a01b0316331461072e5760405162461bcd60e51b81526004016104a8906118a7565b8281146107765760405162461bcd60e51b81526020600482015260166024820152750c2e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b60448201526064016104a8565b60005b838110156107dc576107ca3386868481811061079757610797611a58565b90506020020160208101906107ac9190611885565b8585858181106107be576107be611a58565b90506020020135610f2a565b806107d481611a6e565b915050610779565b5050505050565b6000336107f18582856110cf565b6107fc858585611149565b506001949350505050565b60003361061381858561081a8383610c8e565b6108249190611a87565b610e06565b6005546001600160a01b031633146108535760405162461bcd60e51b81526004016104a8906118a7565b6001600160a01b0382166108985760405162461bcd60e51b815260206004820152600c60248201526b5a65726f204164647265737360a01b60448201526064016104a8565b806108f657600b546001600160a01b03620100009091048116908316036108f65760405162461bcd60e51b815260206004820152601260248201527121b0b73737ba103932b6b7bb32903830b4b960711b60448201526064016104a8565b6001600160a01b038216600081815260076020908152604091829020805460ff19168515159081179091558251938452908301527f2809735dc5ecee2ef64c30a5e20466b4b2b2a1792803591baf5cd6c8ac25a63c91015b60405180910390a15050565b6005546001600160a01b031633146109845760405162461bcd60e51b81526004016104a8906118a7565b6001600160a01b0382166109da5760405162461bcd60e51b815260206004820152601a60248201527f5f746f6b656e20616464726573732063616e6e6f74206265203000000000000060448201526064016104a8565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015610a21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a459190611a9a565b9050610a52838383611205565b505050565b6005546001600160a01b03163314610a815760405162461bcd60e51b81526004016104a8906118a7565b6005546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600580546001600160a01b0319169055565b6005546001600160a01b03163314610af55760405162461bcd60e51b81526004016104a8906118a7565b600b805461ff00191690556040517fa4ffae85e880608d5d4365c2b682786545d136145537788e7e0940dff9f0b98c90600090a1565b6005546001600160a01b03163314610b555760405162461bcd60e51b81526004016104a8906118a7565b6001600160a01b038216610b9a5760405162461bcd60e51b815260206004820152600c60248201526b5a65726f204164647265737360a01b60448201526064016104a8565b6001600160a01b038216600081815260066020908152604091829020805460ff19168515159081179091558251938452908301527f26742d25b283cf51a0e3c4183d934871ed96d1bd33cf40706f87a94f29f686ac910161094e565b60606004805461058290611a1e565b60003381610c138286610c8e565b905083811015610c735760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016104a8565b6107fc8286868403610e06565b600033610613818585611149565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6005546001600160a01b03163314610ce35760405162461bcd60e51b81526004016104a8906118a7565b6001600160a01b038116610d485760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104a8565b6005546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b03163314610dce5760405162461bcd60e51b81526004016104a8906118a7565b600b805460ff191660011790556040517f9e79ff535c96e359ecd1bd70ecc07d8cbf84bcb04f5284237cf9085125f749a990600090a1565b6001600160a01b038316610e685760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104a8565b6001600160a01b038216610ec95760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104a8565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610f8e5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104a8565b6001600160a01b038216610ff05760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104a8565b6001600160a01b038316600090815260208190526040902054818110156110685760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016104a8565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350505050565b60006110db8484610c8e565b9050600019811461114357818110156111365760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016104a8565b6111438484848403610e06565b50505050565b6001600160a01b03831660009081526006602052604090205460ff168061118857506001600160a01b03821660009081526006602052604090205460ff165b1561119857610a52838383610f2a565b600b5460ff166111df5760405162461bcd60e51b815260206004820152601260248201527154726164696e67206e6f742061637469766560701b60448201526064016104a8565b600b54610100900460ff16156111fa576111fa838383611257565b610a52838383610f2a565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610a529084906113fe565b6001600160a01b03831660009081526008602052604090205460ff16801561129857506001600160a01b03821660009081526007602052604090205460ff16155b1561133b576009548111156112d95760405162461bcd60e51b815260206004820152600760248201526626b0bc102a3c3760c91b60448201526064016104a8565b600a546001600160a01b0383166000908152602081905260409020545b6113009083611a87565b1115610a525760405162461bcd60e51b815260206004820152600a60248201526913585e081dd85b1b195d60b21b60448201526064016104a8565b6001600160a01b03821660009081526008602052604090205460ff16801561137c57506001600160a01b03831660009081526007602052604090205460ff16155b156113bd57600954811115610a525760405162461bcd60e51b815260206004820152600760248201526626b0bc102a3c3760c91b60448201526064016104a8565b6001600160a01b03821660009081526007602052604090205460ff16610a5257600a546001600160a01b0383166000908152602081905260409020546112f6565b6000611453826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166114d09092919063ffffffff16565b805190915015610a5257808060200190518101906114719190611ab3565b610a525760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016104a8565b60606114df84846000856114e7565b949350505050565b6060824710156115485760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016104a8565b600080866001600160a01b031685876040516115649190611ad0565b60006040518083038185875af1925050503d80600081146115a1576040519150601f19603f3d011682016040523d82523d6000602084013e6115a6565b606091505b50915091506115b7878383876115c2565b979650505050505050565b6060831561163157825160000361162a576001600160a01b0385163b61162a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016104a8565b50816114df565b6114df83838151156116465781518083602001fd5b8060405162461bcd60e51b81526004016104a8919061169d565b60006020828403121561167257600080fd5b5035919050565b60005b8381101561169457818101518382015260200161167c565b50506000910152565b60208152600082518060208401526116bc816040850160208701611679565b601f01601f19169190910160400192915050565b80356001600160a01b03811681146116e757600080fd5b919050565b600080604083850312156116ff57600080fd5b611708836116d0565b946020939093013593505050565b60008083601f84011261172857600080fd5b50813567ffffffffffffffff81111561174057600080fd5b6020830191508360208260051b850101111561175b57600080fd5b9250929050565b6000806000806040858703121561177857600080fd5b843567ffffffffffffffff8082111561179057600080fd5b61179c88838901611716565b909650945060208701359150808211156117b557600080fd5b506117c287828801611716565b95989497509550505050565b6000806000606084860312156117e357600080fd5b6117ec846116d0565b92506117fa602085016116d0565b9150604084013590509250925092565b801515811461181857600080fd5b50565b6000806040838503121561182e57600080fd5b611837836116d0565b915060208301356118478161180a565b809150509250929050565b6000806040838503121561186557600080fd5b61186e836116d0565b915061187c602084016116d0565b90509250929050565b60006020828403121561189757600080fd5b6118a0826116d0565b9392505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561192d578160001904821115611913576119136118dc565b8085161561192057918102915b93841c93908002906118f7565b509250929050565b60008261194457506001610619565b8161195157506000610619565b816001811461196757600281146119715761198d565b6001915050610619565b60ff841115611982576119826118dc565b50506001821b610619565b5060208310610133831016604e8410600b84101617156119b0575081810a610619565b6119ba83836118f2565b80600019048211156119ce576119ce6118dc565b029392505050565b60006118a060ff841683611935565b8082028115828204841417610619576106196118dc565b600082611a1957634e487b7160e01b600052601260045260246000fd5b500490565b600181811c90821680611a3257607f821691505b602082108103611a5257634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b600060018201611a8057611a806118dc565b5060010190565b80820180821115610619576106196118dc565b600060208284031215611aac57600080fd5b5051919050565b600060208284031215611ac557600080fd5b81516118a08161180a565b60008251611ae2818460208701611679565b919091019291505056fea2646970667358221220116292c94684c00cba42988dd08e7df61e057b1ef563c3167f9dcf8fcf6d21e364736f6c63430008130033000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000003f231a70b8000000000000000000000000000000000000000000000000000000000000000004486570650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044845504500000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101f05760003560e01c8063751039fc1161010f578063a9059cbb116100a2578063dd62ed3e11610071578063dd62ed3e14610447578063f2fde38b1461045a578063f8b45b051461046d578063fcfee5e21461047657600080fd5b8063a9059cbb146103e5578063b0249cc6146103f8578063c3f70b521461041b578063d936547e1461042457600080fd5b806394c9290f116100de57806394c9290f1461039e57806395d89b41146103c15780639e93ad8e146103c9578063a457c2d7146103d257600080fd5b8063751039fc1461036557806386c978641461036d5780638da5cb5b1461037a5780639281aa0b1461038b57600080fd5b8063313ce567116101875780634a62bb65116101565780634a62bb651461030f5780635431c94e1461032157806370a0823114610334578063715018a61461035d57600080fd5b8063313ce567146102c157806339509351146102d05780633d22971c146102e3578063452ed4f1146102f657600080fd5b806318160ddd116101c357806318160ddd146102765780631c499ab0146102885780632307b4411461029b57806323b872dd146102ae57600080fd5b80630517d13d146101f557806306fdde031461020a5780630758d92414610228578063095ea7b314610253575b600080fd5b610208610203366004611660565b61047e565b005b610212610573565b60405161021f919061169d565b60405180910390f35b600c5461023b906001600160a01b031681565b6040516001600160a01b03909116815260200161021f565b6102666102613660046116ec565b610605565b604051901515815260200161021f565b6002545b60405190815260200161021f565b610208610296366004611660565b61061f565b6102086102a9366004611762565b610704565b6102666102bc3660046117ce565b6107e3565b6040516012815260200161021f565b6102666102de3660046116ec565b610807565b6102086102f136600461181b565b610829565b600b5461023b906201000090046001600160a01b031681565b600b5461026690610100900460ff1681565b61020861032f366004611852565b61095a565b61027a610342366004611885565b6001600160a01b031660009081526020819052604090205490565b610208610a57565b610208610acb565b600b546102669060ff1681565b6005546001600160a01b031661023b565b61020861039936600461181b565b610b2b565b6102666103ac366004611885565b60076020526000908152604090205460ff1681565b610212610bf6565b61027a61271081565b6102666103e03660046116ec565b610c05565b6102666103f33660046116ec565b610c80565b610266610406366004611885565b60086020526000908152604090205460ff1681565b61027a60095481565b610266610432366004611885565b60066020526000908152604090205460ff1681565b61027a610455366004611852565b610c8e565b610208610468366004611885565b610cb9565b61027a600a5481565b610208610da4565b6005546001600160a01b031633146104b15760405162461bcd60e51b81526004016104a8906118a7565b60405180910390fd5b6104bd6012600a6119d6565b6103e86104c960025490565b6104d49060056119e5565b6104de91906119fc565b6104e891906119fc565b8110156105215760405162461bcd60e51b8152602060048201526007602482015266546f6f206c6f7760c81b60448201526064016104a8565b61052d6012600a6119d6565b61053790826119e5565b60098190556040519081527f76a9278644b7300961aa0e7e86f10934585987f1daf1c6ecc971c18376691574906020015b60405180910390a150565b60606003805461058290611a1e565b80601f01602080910402602001604051908101604052809291908181526020018280546105ae90611a1e565b80156105fb5780601f106105d0576101008083540402835291602001916105fb565b820191906000526020600020905b8154815290600101906020018083116105de57829003601f168201915b5050505050905090565b600033610613818585610e06565b60019150505b92915050565b6005546001600160a01b031633146106495760405162461bcd60e51b81526004016104a8906118a7565b6106556012600a6119d6565b6103e861066160025490565b61066c9060056119e5565b61067691906119fc565b61068091906119fc565b8110156106b95760405162461bcd60e51b8152602060048201526007602482015266546f6f206c6f7760c81b60448201526064016104a8565b6106c56012600a6119d6565b6106cf90826119e5565b600a8190556040519081527f3046ad62de8b70d396246aaed19ff2559ff20df8706520cbde58320766c4276290602001610568565b6005546001600160a01b0316331461072e5760405162461bcd60e51b81526004016104a8906118a7565b8281146107765760405162461bcd60e51b81526020600482015260166024820152750c2e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b60448201526064016104a8565b60005b838110156107dc576107ca3386868481811061079757610797611a58565b90506020020160208101906107ac9190611885565b8585858181106107be576107be611a58565b90506020020135610f2a565b806107d481611a6e565b915050610779565b5050505050565b6000336107f18582856110cf565b6107fc858585611149565b506001949350505050565b60003361061381858561081a8383610c8e565b6108249190611a87565b610e06565b6005546001600160a01b031633146108535760405162461bcd60e51b81526004016104a8906118a7565b6001600160a01b0382166108985760405162461bcd60e51b815260206004820152600c60248201526b5a65726f204164647265737360a01b60448201526064016104a8565b806108f657600b546001600160a01b03620100009091048116908316036108f65760405162461bcd60e51b815260206004820152601260248201527121b0b73737ba103932b6b7bb32903830b4b960711b60448201526064016104a8565b6001600160a01b038216600081815260076020908152604091829020805460ff19168515159081179091558251938452908301527f2809735dc5ecee2ef64c30a5e20466b4b2b2a1792803591baf5cd6c8ac25a63c91015b60405180910390a15050565b6005546001600160a01b031633146109845760405162461bcd60e51b81526004016104a8906118a7565b6001600160a01b0382166109da5760405162461bcd60e51b815260206004820152601a60248201527f5f746f6b656e20616464726573732063616e6e6f74206265203000000000000060448201526064016104a8565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015610a21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a459190611a9a565b9050610a52838383611205565b505050565b6005546001600160a01b03163314610a815760405162461bcd60e51b81526004016104a8906118a7565b6005546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600580546001600160a01b0319169055565b6005546001600160a01b03163314610af55760405162461bcd60e51b81526004016104a8906118a7565b600b805461ff00191690556040517fa4ffae85e880608d5d4365c2b682786545d136145537788e7e0940dff9f0b98c90600090a1565b6005546001600160a01b03163314610b555760405162461bcd60e51b81526004016104a8906118a7565b6001600160a01b038216610b9a5760405162461bcd60e51b815260206004820152600c60248201526b5a65726f204164647265737360a01b60448201526064016104a8565b6001600160a01b038216600081815260066020908152604091829020805460ff19168515159081179091558251938452908301527f26742d25b283cf51a0e3c4183d934871ed96d1bd33cf40706f87a94f29f686ac910161094e565b60606004805461058290611a1e565b60003381610c138286610c8e565b905083811015610c735760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016104a8565b6107fc8286868403610e06565b600033610613818585611149565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6005546001600160a01b03163314610ce35760405162461bcd60e51b81526004016104a8906118a7565b6001600160a01b038116610d485760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104a8565b6005546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b03163314610dce5760405162461bcd60e51b81526004016104a8906118a7565b600b805460ff191660011790556040517f9e79ff535c96e359ecd1bd70ecc07d8cbf84bcb04f5284237cf9085125f749a990600090a1565b6001600160a01b038316610e685760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104a8565b6001600160a01b038216610ec95760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104a8565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610f8e5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104a8565b6001600160a01b038216610ff05760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104a8565b6001600160a01b038316600090815260208190526040902054818110156110685760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016104a8565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350505050565b60006110db8484610c8e565b9050600019811461114357818110156111365760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016104a8565b6111438484848403610e06565b50505050565b6001600160a01b03831660009081526006602052604090205460ff168061118857506001600160a01b03821660009081526006602052604090205460ff165b1561119857610a52838383610f2a565b600b5460ff166111df5760405162461bcd60e51b815260206004820152601260248201527154726164696e67206e6f742061637469766560701b60448201526064016104a8565b600b54610100900460ff16156111fa576111fa838383611257565b610a52838383610f2a565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610a529084906113fe565b6001600160a01b03831660009081526008602052604090205460ff16801561129857506001600160a01b03821660009081526007602052604090205460ff16155b1561133b576009548111156112d95760405162461bcd60e51b815260206004820152600760248201526626b0bc102a3c3760c91b60448201526064016104a8565b600a546001600160a01b0383166000908152602081905260409020545b6113009083611a87565b1115610a525760405162461bcd60e51b815260206004820152600a60248201526913585e081dd85b1b195d60b21b60448201526064016104a8565b6001600160a01b03821660009081526008602052604090205460ff16801561137c57506001600160a01b03831660009081526007602052604090205460ff16155b156113bd57600954811115610a525760405162461bcd60e51b815260206004820152600760248201526626b0bc102a3c3760c91b60448201526064016104a8565b6001600160a01b03821660009081526007602052604090205460ff16610a5257600a546001600160a01b0383166000908152602081905260409020546112f6565b6000611453826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166114d09092919063ffffffff16565b805190915015610a5257808060200190518101906114719190611ab3565b610a525760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016104a8565b60606114df84846000856114e7565b949350505050565b6060824710156115485760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016104a8565b600080866001600160a01b031685876040516115649190611ad0565b60006040518083038185875af1925050503d80600081146115a1576040519150601f19603f3d011682016040523d82523d6000602084013e6115a6565b606091505b50915091506115b7878383876115c2565b979650505050505050565b6060831561163157825160000361162a576001600160a01b0385163b61162a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016104a8565b50816114df565b6114df83838151156116465781518083602001fd5b8060405162461bcd60e51b81526004016104a8919061169d565b60006020828403121561167257600080fd5b5035919050565b60005b8381101561169457818101518382015260200161167c565b50506000910152565b60208152600082518060208401526116bc816040850160208701611679565b601f01601f19169190910160400192915050565b80356001600160a01b03811681146116e757600080fd5b919050565b600080604083850312156116ff57600080fd5b611708836116d0565b946020939093013593505050565b60008083601f84011261172857600080fd5b50813567ffffffffffffffff81111561174057600080fd5b6020830191508360208260051b850101111561175b57600080fd5b9250929050565b6000806000806040858703121561177857600080fd5b843567ffffffffffffffff8082111561179057600080fd5b61179c88838901611716565b909650945060208701359150808211156117b557600080fd5b506117c287828801611716565b95989497509550505050565b6000806000606084860312156117e357600080fd5b6117ec846116d0565b92506117fa602085016116d0565b9150604084013590509250925092565b801515811461181857600080fd5b50565b6000806040838503121561182e57600080fd5b611837836116d0565b915060208301356118478161180a565b809150509250929050565b6000806040838503121561186557600080fd5b61186e836116d0565b915061187c602084016116d0565b90509250929050565b60006020828403121561189757600080fd5b6118a0826116d0565b9392505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561192d578160001904821115611913576119136118dc565b8085161561192057918102915b93841c93908002906118f7565b509250929050565b60008261194457506001610619565b8161195157506000610619565b816001811461196757600281146119715761198d565b6001915050610619565b60ff841115611982576119826118dc565b50506001821b610619565b5060208310610133831016604e8410600b84101617156119b0575081810a610619565b6119ba83836118f2565b80600019048211156119ce576119ce6118dc565b029392505050565b60006118a060ff841683611935565b8082028115828204841417610619576106196118dc565b600082611a1957634e487b7160e01b600052601260045260246000fd5b500490565b600181811c90821680611a3257607f821691505b602082108103611a5257634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b600060018201611a8057611a806118dc565b5060010190565b80820180821115610619576106196118dc565b600060208284031215611aac57600080fd5b5051919050565b600060208284031215611ac557600080fd5b81516118a08161180a565b60008251611ae2818460208701611679565b919091019291505056fea2646970667358221220116292c94684c00cba42988dd08e7df61e057b1ef563c3167f9dcf8fcf6d21e364736f6c63430008130033

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

000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000003f231a70b8000000000000000000000000000000000000000000000000000000000000000004486570650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044845504500000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _name (string): Hepe
Arg [1] : _symbol (string): HEPE
Arg [2] : _totalSupplyInTokens (uint256): 69420000000000

-----Encoded View---------------
7 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000060
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [2] : 00000000000000000000000000000000000000000000000000003f231a70b800
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [4] : 4865706500000000000000000000000000000000000000000000000000000000
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [6] : 4845504500000000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

22148:5482:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26156:287;;;;;;:::i;:::-;;:::i;:::-;;4189:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;22538:27;;;;;-1:-1:-1;;;;;22538:27:0;;;;;;-1:-1:-1;;;;;1038:32:1;;;1020:51;;1008:2;993:18;22538:27:0;855:222:1;6549:201:0;;;;;;:::i;:::-;;:::i;:::-;;;1684:14:1;;1677:22;1659:41;;1647:2;1632:18;6549:201:0;1519:187:1;5318:108:0;5406:12;;5318:108;;;1857:25:1;;;1845:2;1830:18;5318:108:0;1711:177:1;26451:267:0;;;;;;:::i;:::-;;:::i;26990:333::-;;;;;;:::i;:::-;;:::i;7330:261::-;;;;;;:::i;:::-;;:::i;5160:93::-;;;5243:2;3518:36:1;;3506:2;3491:18;5160:93:0;3376:184:1;8000:238:0;;;;;;:::i;:::-;;:::i;25789:359::-;;;;;;:::i;:::-;;:::i;22510:21::-;;;;;;;;-1:-1:-1;;;;;22510:21:0;;;22468:33;;;;;;;;;;;;27331:296;;;;;;:::i;:::-;;:::i;5489:127::-;;;;;;:::i;:::-;-1:-1:-1;;;;;5590:18:0;5563:7;5590:18;;;;;;;;;;;;5489:127;13988:150;;;:::i;26867:115::-;;;:::i;22422:39::-;;;;;;;;;13774:79;13839:6;;-1:-1:-1;;;;;13839:6:0;13774:79;;25528:253;;;;;;:::i;:::-;;:::i;22240:51::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;4408:104;;;:::i;22574:43::-;;22612:5;22574:43;;8741:436;;;;;;:::i;:::-;;:::i;5822:193::-;;;;;;:::i;:::-;;:::i;22298:42::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;22349:29;;;;;;22189:44;;;;;;:::i;:::-;;;;;;;;;;;;;;;;6078:151;;;;;;:::i;:::-;;:::i;14146:244::-;;;;;;:::i;:::-;;:::i;22385:24::-;;;;;;26726:133;;;:::i;26156:287::-;13901:6;;-1:-1:-1;;;;;13901:6:0;175:10;13901:22;13893:67;;;;-1:-1:-1;;;13893:67:0;;;;;;;:::i;:::-;;;;;;;;;26294:14:::1;5243:2:::0;26294::::1;:14;:::i;:::-;26287:4;26267:13;5406:12:::0;;;5318:108;26267:13:::1;:17;::::0;26283:1:::1;26267:17;:::i;:::-;:24;;;;:::i;:::-;26266:43;;;;:::i;:::-;26248:14;:61;;26240:81;;;::::0;-1:-1:-1;;;26240:81:0;;7145:2:1;26240:81:0::1;::::0;::::1;7127:21:1::0;7184:1;7164:18;;;7157:29;-1:-1:-1;;;7202:18:1;;;7195:37;7249:18;;26240:81:0::1;6943:330:1::0;26240:81:0::1;26367:14;5243:2:::0;26367::::1;:14;:::i;:::-;26349:33;::::0;:14;:33:::1;:::i;:::-;26332:14;:50:::0;;;26398:37:::1;::::0;1857:25:1;;;26398:37:0::1;::::0;1845:2:1;1830:18;26398:37:0::1;;;;;;;;26156:287:::0;:::o;4189:100::-;4243:13;4276:5;4269:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4189:100;:::o;6549:201::-;6632:4;175:10;6688:32;175:10;6704:7;6713:6;6688:8;:32::i;:::-;6738:4;6731:11;;;6549:201;;;;;:::o;26451:267::-;13901:6;;-1:-1:-1;;;;;13901:6:0;175:10;13901:22;13893:67;;;;-1:-1:-1;;;13893:67:0;;;;;;;:::i;:::-;26584:14:::1;5243:2:::0;26584::::1;:14;:::i;:::-;26577:4;26557:13;5406:12:::0;;;5318:108;26557:13:::1;:17;::::0;26573:1:::1;26557:17;:::i;:::-;:24;;;;:::i;:::-;26556:43;;;;:::i;:::-;26538:14;:61;;26530:81;;;::::0;-1:-1:-1;;;26530:81:0;;7145:2:1;26530:81:0::1;::::0;::::1;7127:21:1::0;7184:1;7164:18;;;7157:29;-1:-1:-1;;;7202:18:1;;;7195:37;7249:18;;26530:81:0::1;6943:330:1::0;26530:81:0::1;26652:14;5243:2:::0;26652::::1;:14;:::i;:::-;26634:33;::::0;:14;:33:::1;:::i;:::-;26622:9;:45:::0;;;26683:27:::1;::::0;1857:25:1;;;26683:27:0::1;::::0;1845:2:1;1830:18;26683:27:0::1;1711:177:1::0;26990:333:0;13901:6;;-1:-1:-1;;;;;13901:6:0;175:10;13901:22;13893:67;;;;-1:-1:-1;;;13893:67:0;;;;;;;:::i;:::-;27115:37;;::::1;27107:72;;;::::0;-1:-1:-1;;;27107:72:0;;7865:2:1;27107:72:0::1;::::0;::::1;7847:21:1::0;7904:2;7884:18;;;7877:30;-1:-1:-1;;;7923:18:1;;;7916:52;7985:18;;27107:72:0::1;7663:346:1::0;27107:72:0::1;27194:9;27190:126;27209:18:::0;;::::1;27190:126;;;27248:56;27264:10;27276:7;;27284:1;27276:10;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;27288:12;;27301:1;27288:15;;;;;;;:::i;:::-;;;;;;;27248;:56::i;:::-;27229:3:::0;::::1;::::0;::::1;:::i;:::-;;;;27190:126;;;;26990:333:::0;;;;:::o;7330:261::-;7427:4;175:10;7485:38;7501:4;175:10;7516:6;7485:15;:38::i;:::-;7534:27;7544:4;7550:2;7554:6;7534:9;:27::i;:::-;-1:-1:-1;7579:4:0;;7330:261;-1:-1:-1;;;;7330:261:0:o;8000:238::-;8088:4;175:10;8144:64;175:10;8160:7;8197:10;8169:25;175:10;8160:7;8169:9;:25::i;:::-;:38;;;;:::i;:::-;8144:8;:64::i;25789:359::-;13901:6;;-1:-1:-1;;;;;13901:6:0;175:10;13901:22;13893:67;;;;-1:-1:-1;;;13893:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;25892:22:0;::::1;25884:47;;;::::0;-1:-1:-1;;;25884:47:0;;8618:2:1;25884:47:0::1;::::0;::::1;8600:21:1::0;8657:2;8637:18;;;8630:30;-1:-1:-1;;;8676:18:1;;;8669:42;8728:18;;25884:47:0::1;8416:336:1::0;25884:47:0::1;25946:9;25942:90;;25991:6;::::0;-1:-1:-1;;;;;25991:6:0;;;::::1;::::0;::::1;25979:18:::0;;::::1;::::0;25971:49:::1;;;::::0;-1:-1:-1;;;25971:49:0;;8959:2:1;25971:49:0::1;::::0;::::1;8941:21:1::0;8998:2;8978:18;;;8971:30;-1:-1:-1;;;9017:18:1;;;9010:48;9075:18;;25971:49:0::1;8757:342:1::0;25971:49:0::1;-1:-1:-1::0;;;;;26042:28:0;::::1;;::::0;;;:18:::1;:28;::::0;;;;;;;;:40;;-1:-1:-1;;26042:40:0::1;::::0;::::1;;::::0;;::::1;::::0;;;26098:42;;9272:51:1;;;9339:18;;;9332:50;26098:42:0::1;::::0;9245:18:1;26098:42:0::1;;;;;;;;25789:359:::0;;:::o;27331:296::-;13901:6;;-1:-1:-1;;;;;13901:6:0;175:10;13901:22;13893:67;;;;-1:-1:-1;;;13893:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;27420:20:0;::::1;27412:59;;;::::0;-1:-1:-1;;;27412:59:0;;9595:2:1;27412:59:0::1;::::0;::::1;9577:21:1::0;9634:2;9614:18;;;9607:30;9673:28;9653:18;;;9646:56;9719:18;;27412:59:0::1;9393:350:1::0;27412:59:0::1;27509:39;::::0;-1:-1:-1;;;27509:39:0;;27542:4:::1;27509:39;::::0;::::1;1020:51:1::0;27482:24:0::1;::::0;-1:-1:-1;;;;;27509:24:0;::::1;::::0;::::1;::::0;993:18:1;;27509:39:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;27482:66;;27559:60;27589:6;27597:3;27602:16;27559:22;:60::i;:::-;27401:226;27331:296:::0;;:::o;13988:150::-;13901:6;;-1:-1:-1;;;;;13901:6:0;175:10;13901:22;13893:67;;;;-1:-1:-1;;;13893:67:0;;;;;;;:::i;:::-;14081:6:::1;::::0;14060:40:::1;::::0;14097:1:::1;::::0;-1:-1:-1;;;;;14081:6:0::1;::::0;14060:40:::1;::::0;14097:1;;14060:40:::1;14111:6;:19:::0;;-1:-1:-1;;;;;;14111:19:0::1;::::0;;13988:150::o;26867:115::-;13901:6;;-1:-1:-1;;;;;13901:6:0;175:10;13901:22;13893:67;;;;-1:-1:-1;;;13893:67:0;;;;;;;:::i;:::-;26921:14:::1;:22:::0;;-1:-1:-1;;26921:22:0::1;::::0;;26959:15:::1;::::0;::::1;::::0;26938:5:::1;::::0;26959:15:::1;26867:115::o:0;25528:253::-;13901:6;;-1:-1:-1;;;;;13901:6:0;175:10;13901:22;13893:67;;;;-1:-1:-1;;;13893:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;25629:22:0;::::1;25621:47;;;::::0;-1:-1:-1;;;25621:47:0;;8618:2:1;25621:47:0::1;::::0;::::1;8600:21:1::0;8657:2;8637:18;;;8630:30;-1:-1:-1;;;8676:18:1;;;8669:42;8728:18;;25621:47:0::1;8416:336:1::0;25621:47:0::1;-1:-1:-1::0;;;;;25679:21:0;::::1;;::::0;;;:11:::1;:21;::::0;;;;;;;;:38;;-1:-1:-1;;25679:38:0::1;::::0;::::1;;::::0;;::::1;::::0;;;25733:40;;9272:51:1;;;9339:18;;;9332:50;25733:40:0::1;::::0;9245:18:1;25733:40:0::1;9104:284:1::0;4408:104:0;4464:13;4497:7;4490:14;;;;;:::i;8741:436::-;8834:4;175:10;8834:4;8917:25;175:10;8934:7;8917:9;:25::i;:::-;8890:52;;8981:15;8961:16;:35;;8953:85;;;;-1:-1:-1;;;8953:85:0;;10139:2:1;8953:85:0;;;10121:21:1;10178:2;10158:18;;;10151:30;10217:34;10197:18;;;10190:62;-1:-1:-1;;;10268:18:1;;;10261:35;10313:19;;8953:85:0;9937:401:1;8953:85:0;9074:60;9083:5;9090:7;9118:15;9099:16;:34;9074:8;:60::i;5822:193::-;5901:4;175:10;5957:28;175:10;5974:2;5978:6;5957:9;:28::i;6078:151::-;-1:-1:-1;;;;;6194:18:0;;;6167:7;6194:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6078:151::o;14146:244::-;13901:6;;-1:-1:-1;;;;;13901:6:0;175:10;13901:22;13893:67;;;;-1:-1:-1;;;13893:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;14235:22:0;::::1;14227:73;;;::::0;-1:-1:-1;;;14227:73:0;;10545:2:1;14227:73:0::1;::::0;::::1;10527:21:1::0;10584:2;10564:18;;;10557:30;10623:34;10603:18;;;10596:62;-1:-1:-1;;;10674:18:1;;;10667:36;10720:19;;14227:73:0::1;10343:402:1::0;14227:73:0::1;14337:6;::::0;14316:38:::1;::::0;-1:-1:-1;;;;;14316:38:0;;::::1;::::0;14337:6:::1;::::0;14316:38:::1;::::0;14337:6:::1;::::0;14316:38:::1;14365:6;:17:::0;;-1:-1:-1;;;;;;14365:17:0::1;-1:-1:-1::0;;;;;14365:17:0;;;::::1;::::0;;;::::1;::::0;;14146:244::o;26726:133::-;13901:6;;-1:-1:-1;;;;;13901:6:0;175:10;13901:22;13893:67;;;;-1:-1:-1;;;13893:67:0;;;;;;;:::i;:::-;26787:19:::1;:26:::0;;-1:-1:-1;;26787:26:0::1;26809:4;26787:26;::::0;;26829:22:::1;::::0;::::1;::::0;26787:19:::1;::::0;26829:22:::1;26726:133::o:0;12387:346::-;-1:-1:-1;;;;;12489:19:0;;12481:68;;;;-1:-1:-1;;;12481:68:0;;10952:2:1;12481:68:0;;;10934:21:1;10991:2;10971:18;;;10964:30;11030:34;11010:18;;;11003:62;-1:-1:-1;;;11081:18:1;;;11074:34;11125:19;;12481:68:0;10750:400:1;12481:68:0;-1:-1:-1;;;;;12568:21:0;;12560:68;;;;-1:-1:-1;;;12560:68:0;;11357:2:1;12560:68:0;;;11339:21:1;11396:2;11376:18;;;11369:30;11435:34;11415:18;;;11408:62;-1:-1:-1;;;11486:18:1;;;11479:32;11528:19;;12560:68:0;11155:398:1;12560:68:0;-1:-1:-1;;;;;12641:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;12693:32;;1857:25:1;;;12693:32:0;;1830:18:1;12693:32:0;;;;;;;12387:346;;;:::o;9647:705::-;-1:-1:-1;;;;;9744:18:0;;9736:68;;;;-1:-1:-1;;;9736:68:0;;11760:2:1;9736:68:0;;;11742:21:1;11799:2;11779:18;;;11772:30;11838:34;11818:18;;;11811:62;-1:-1:-1;;;11889:18:1;;;11882:35;11934:19;;9736:68:0;11558:401:1;9736:68:0;-1:-1:-1;;;;;9823:16:0;;9815:64;;;;-1:-1:-1;;;9815:64:0;;12166:2:1;9815:64:0;;;12148:21:1;12205:2;12185:18;;;12178:30;12244:34;12224:18;;;12217:62;-1:-1:-1;;;12295:18:1;;;12288:33;12338:19;;9815:64:0;11964:399:1;9815:64:0;-1:-1:-1;;;;;9914:15:0;;9892:19;9914:15;;;;;;;;;;;9948:21;;;;9940:72;;;;-1:-1:-1;;;9940:72:0;;12570:2:1;9940:72:0;;;12552:21:1;12609:2;12589:18;;;12582:30;12648:34;12628:18;;;12621:62;-1:-1:-1;;;12699:18:1;;;12692:36;12745:19;;9940:72:0;12368:402:1;9940:72:0;-1:-1:-1;;;;;10048:15:0;;;:9;:15;;;;;;;;;;;10066:20;;;10048:38;;10266:13;;;;;;;;;;:23;;;;;;10318:26;;1857:25:1;;;10266:13:0;;10318:26;;1830:18:1;10318:26:0;;;;;;;9725:627;9647:705;;;:::o;13024:419::-;13125:24;13152:25;13162:5;13169:7;13152:9;:25::i;:::-;13125:52;;-1:-1:-1;;13192:16:0;:37;13188:248;;13274:6;13254:16;:26;;13246:68;;;;-1:-1:-1;;;13246:68:0;;12977:2:1;13246:68:0;;;12959:21:1;13016:2;12996:18;;;12989:30;13055:31;13035:18;;;13028:59;13104:18;;13246:68:0;12775:353:1;13246:68:0;13358:51;13367:5;13374:7;13402:6;13383:16;:25;13358:8;:51::i;:::-;13114:329;13024:419;;;:::o;24451:454::-;-1:-1:-1;;;;;24588:17:0;;;;;;:11;:17;;;;;;;;;:36;;-1:-1:-1;;;;;;24609:15:0;;;;;;:11;:15;;;;;;;;24588:36;24585:112;;;24640:31;24656:4;24661:2;24664:6;24640:15;:31::i;24585:112::-;24717:19;;;;24709:50;;;;-1:-1:-1;;;24709:50:0;;13335:2:1;24709:50:0;;;13317:21:1;13374:2;13354:18;;;13347:30;-1:-1:-1;;;13393:18:1;;;13386:48;13451:18;;24709:50:0;13133:342:1;24709:50:0;24783:14;;;;;;;24780:74;;;24813:29;24825:4;24831:2;24835:6;24813:11;:29::i;:::-;24866:31;24882:4;24887:2;24890:6;24866:15;:31::i;20560:177::-;20670:58;;;-1:-1:-1;;;;;13672:32:1;;20670:58:0;;;13654:51:1;13721:18;;;;13714:34;;;20670:58:0;;;;;;;;;;13627:18:1;;;;20670:58:0;;;;;;;;-1:-1:-1;;;;;20670:58:0;-1:-1:-1;;;20670:58:0;;;20643:86;;20663:5;;20643:19;:86::i;24913:583::-;-1:-1:-1;;;;;25021:15:0;;;;;;:9;:15;;;;;;;;:42;;;;-1:-1:-1;;;;;;25041:22:0;;;;;;:18;:22;;;;;;;;25040:23;25021:42;25017:472;;;25098:14;;25088:6;:24;;25080:44;;;;-1:-1:-1;;;25080:44:0;;13961:2:1;25080:44:0;;;13943:21:1;14000:1;13980:18;;;13973:29;-1:-1:-1;;;14018:18:1;;;14011:37;14065:18;;25080:44:0;13759:330:1;25080:44:0;25173:9;;-1:-1:-1;;;;;5590:18:0;;5563:7;5590:18;;;;;;;;;;;25156:13;25147:22;;:6;:22;:::i;:::-;:35;;25139:58;;;;-1:-1:-1;;;25139:58:0;;14296:2:1;25139:58:0;;;14278:21:1;14335:2;14315:18;;;14308:30;-1:-1:-1;;;14354:18:1;;;14347:40;14404:18;;25139:58:0;14094:334:1;25017:472:0;-1:-1:-1;;;;;25246:13:0;;;;;;:9;:13;;;;;;;;:42;;;;-1:-1:-1;;;;;;25264:24:0;;;;;;:18;:24;;;;;;;;25263:25;25246:42;25242:247;;;25323:14;;25313:6;:24;;25305:44;;;;-1:-1:-1;;;25305:44:0;;13961:2:1;25305:44:0;;;13943:21:1;14000:1;13980:18;;;13973:29;-1:-1:-1;;;14018:18:1;;;14011:37;14065:18;;25305:44:0;13759:330:1;25242:247:0;-1:-1:-1;;;;;25380:22:0;;;;;;:18;:22;;;;;;;;25376:113;;25453:9;;-1:-1:-1;;;;;5590:18:0;;5563:7;5590:18;;;;;;;;;;;25436:13;5489:127;20958:333;21039:23;21065:69;21093:4;21065:69;;;;;;;;;;;;;;;;;21073:5;-1:-1:-1;;;;;21065:27:0;;;:69;;;;;:::i;:::-;21149:17;;21039:95;;-1:-1:-1;21149:21:0;21145:139;;21206:10;21195:30;;;;;;;;;;;;:::i;:::-;21187:85;;;;-1:-1:-1;;;21187:85:0;;14885:2:1;21187:85:0;;;14867:21:1;14924:2;14904:18;;;14897:30;14963:34;14943:18;;;14936:62;-1:-1:-1;;;15014:18:1;;;15007:40;15064:19;;21187:85:0;14683:406:1;15063:229:0;15200:12;15232:52;15254:6;15262:4;15268:1;15271:12;15232:21;:52::i;:::-;15225:59;15063:229;-1:-1:-1;;;;15063:229:0:o;16183:455::-;16353:12;16411:5;16386:21;:30;;16378:81;;;;-1:-1:-1;;;16378:81:0;;15296:2:1;16378:81:0;;;15278:21:1;15335:2;15315:18;;;15308:30;15374:34;15354:18;;;15347:62;-1:-1:-1;;;15425:18:1;;;15418:36;15471:19;;16378:81:0;15094:402:1;16378:81:0;16471:12;16485:23;16512:6;-1:-1:-1;;;;;16512:11:0;16531:5;16538:4;16512:31;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16470:73;;;;16561:69;16588:6;16596:7;16605:10;16617:12;16561:26;:69::i;:::-;16554:76;16183:455;-1:-1:-1;;;;;;;16183:455:0:o;18756:644::-;18941:12;18970:7;18966:427;;;18998:10;:17;19019:1;18998:22;18994:290;;-1:-1:-1;;;;;14504:19:0;;;19208:60;;;;-1:-1:-1;;;19208:60:0;;15995:2:1;19208:60:0;;;15977:21:1;16034:2;16014:18;;;16007:30;16073:31;16053:18;;;16046:59;16122:18;;19208:60:0;15793:353:1;19208:60:0;-1:-1:-1;19305:10:0;19298:17;;18966:427;19348:33;19356:10;19368:12;20103:17;;:21;20099:388;;20335:10;20329:17;20392:15;20379:10;20375:2;20371:19;20364:44;20099:388;20462:12;20455:20;;-1:-1:-1;;;20455:20:0;;;;;;;;:::i;14:180:1:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;-1:-1:-1;165:23:1;;14:180;-1:-1:-1;14:180:1:o;199:250::-;284:1;294:113;308:6;305:1;302:13;294:113;;;384:11;;;378:18;365:11;;;358:39;330:2;323:10;294:113;;;-1:-1:-1;;441:1:1;423:16;;416:27;199:250::o;454:396::-;603:2;592:9;585:21;566:4;635:6;629:13;678:6;673:2;662:9;658:18;651:34;694:79;766:6;761:2;750:9;746:18;741:2;733:6;729:15;694:79;:::i;:::-;834:2;813:15;-1:-1:-1;;809:29:1;794:45;;;;841:2;790:54;;454:396;-1:-1:-1;;454:396:1:o;1082:173::-;1150:20;;-1:-1:-1;;;;;1199:31:1;;1189:42;;1179:70;;1245:1;1242;1235:12;1179:70;1082:173;;;:::o;1260:254::-;1328:6;1336;1389:2;1377:9;1368:7;1364:23;1360:32;1357:52;;;1405:1;1402;1395:12;1357:52;1428:29;1447:9;1428:29;:::i;:::-;1418:39;1504:2;1489:18;;;;1476:32;;-1:-1:-1;;;1260:254:1:o;1893:367::-;1956:8;1966:6;2020:3;2013:4;2005:6;2001:17;1997:27;1987:55;;2038:1;2035;2028:12;1987:55;-1:-1:-1;2061:20:1;;2104:18;2093:30;;2090:50;;;2136:1;2133;2126:12;2090:50;2173:4;2165:6;2161:17;2149:29;;2233:3;2226:4;2216:6;2213:1;2209:14;2201:6;2197:27;2193:38;2190:47;2187:67;;;2250:1;2247;2240:12;2187:67;1893:367;;;;;:::o;2265:773::-;2387:6;2395;2403;2411;2464:2;2452:9;2443:7;2439:23;2435:32;2432:52;;;2480:1;2477;2470:12;2432:52;2520:9;2507:23;2549:18;2590:2;2582:6;2579:14;2576:34;;;2606:1;2603;2596:12;2576:34;2645:70;2707:7;2698:6;2687:9;2683:22;2645:70;:::i;:::-;2734:8;;-1:-1:-1;2619:96:1;-1:-1:-1;2822:2:1;2807:18;;2794:32;;-1:-1:-1;2838:16:1;;;2835:36;;;2867:1;2864;2857:12;2835:36;;2906:72;2970:7;2959:8;2948:9;2944:24;2906:72;:::i;:::-;2265:773;;;;-1:-1:-1;2997:8:1;-1:-1:-1;;;;2265:773:1:o;3043:328::-;3120:6;3128;3136;3189:2;3177:9;3168:7;3164:23;3160:32;3157:52;;;3205:1;3202;3195:12;3157:52;3228:29;3247:9;3228:29;:::i;:::-;3218:39;;3276:38;3310:2;3299:9;3295:18;3276:38;:::i;:::-;3266:48;;3361:2;3350:9;3346:18;3333:32;3323:42;;3043:328;;;;;:::o;3565:118::-;3651:5;3644:13;3637:21;3630:5;3627:32;3617:60;;3673:1;3670;3663:12;3617:60;3565:118;:::o;3688:315::-;3753:6;3761;3814:2;3802:9;3793:7;3789:23;3785:32;3782:52;;;3830:1;3827;3820:12;3782:52;3853:29;3872:9;3853:29;:::i;:::-;3843:39;;3932:2;3921:9;3917:18;3904:32;3945:28;3967:5;3945:28;:::i;:::-;3992:5;3982:15;;;3688:315;;;;;:::o;4216:260::-;4284:6;4292;4345:2;4333:9;4324:7;4320:23;4316:32;4313:52;;;4361:1;4358;4351:12;4313:52;4384:29;4403:9;4384:29;:::i;:::-;4374:39;;4432:38;4466:2;4455:9;4451:18;4432:38;:::i;:::-;4422:48;;4216:260;;;;;:::o;4481:186::-;4540:6;4593:2;4581:9;4572:7;4568:23;4564:32;4561:52;;;4609:1;4606;4599:12;4561:52;4632:29;4651:9;4632:29;:::i;:::-;4622:39;4481:186;-1:-1:-1;;;4481:186:1:o;4672:356::-;4874:2;4856:21;;;4893:18;;;4886:30;4952:34;4947:2;4932:18;;4925:62;5019:2;5004:18;;4672:356::o;5033:127::-;5094:10;5089:3;5085:20;5082:1;5075:31;5125:4;5122:1;5115:15;5149:4;5146:1;5139:15;5165:422;5254:1;5297:5;5254:1;5311:270;5332:7;5322:8;5319:21;5311:270;;;5391:4;5387:1;5383:6;5379:17;5373:4;5370:27;5367:53;;;5400:18;;:::i;:::-;5450:7;5440:8;5436:22;5433:55;;;5470:16;;;;5433:55;5549:22;;;;5509:15;;;;5311:270;;;5315:3;5165:422;;;;;:::o;5592:806::-;5641:5;5671:8;5661:80;;-1:-1:-1;5712:1:1;5726:5;;5661:80;5760:4;5750:76;;-1:-1:-1;5797:1:1;5811:5;;5750:76;5842:4;5860:1;5855:59;;;;5928:1;5923:130;;;;5835:218;;5855:59;5885:1;5876:10;;5899:5;;;5923:130;5960:3;5950:8;5947:17;5944:43;;;5967:18;;:::i;:::-;-1:-1:-1;;6023:1:1;6009:16;;6038:5;;5835:218;;6137:2;6127:8;6124:16;6118:3;6112:4;6109:13;6105:36;6099:2;6089:8;6086:16;6081:2;6075:4;6072:12;6068:35;6065:77;6062:159;;;-1:-1:-1;6174:19:1;;;6206:5;;6062:159;6253:34;6278:8;6272:4;6253:34;:::i;:::-;6323:6;6319:1;6315:6;6311:19;6302:7;6299:32;6296:58;;;6334:18;;:::i;:::-;6372:20;;5592:806;-1:-1:-1;;;5592:806:1:o;6403:140::-;6461:5;6490:47;6531:4;6521:8;6517:19;6511:4;6490:47;:::i;6548:168::-;6621:9;;;6652;;6669:15;;;6663:22;;6649:37;6639:71;;6690:18;;:::i;6721:217::-;6761:1;6787;6777:132;;6831:10;6826:3;6822:20;6819:1;6812:31;6866:4;6863:1;6856:15;6894:4;6891:1;6884:15;6777:132;-1:-1:-1;6923:9:1;;6721:217::o;7278:380::-;7357:1;7353:12;;;;7400;;;7421:61;;7475:4;7467:6;7463:17;7453:27;;7421:61;7528:2;7520:6;7517:14;7497:18;7494:38;7491:161;;7574:10;7569:3;7565:20;7562:1;7555:31;7609:4;7606:1;7599:15;7637:4;7634:1;7627:15;7491:161;;7278:380;;;:::o;8014:127::-;8075:10;8070:3;8066:20;8063:1;8056:31;8106:4;8103:1;8096:15;8130:4;8127:1;8120:15;8146:135;8185:3;8206:17;;;8203:43;;8226:18;;:::i;:::-;-1:-1:-1;8273:1:1;8262:13;;8146:135::o;8286:125::-;8351:9;;;8372:10;;;8369:36;;;8385:18;;:::i;9748:184::-;9818:6;9871:2;9859:9;9850:7;9846:23;9842:32;9839:52;;;9887:1;9884;9877:12;9839:52;-1:-1:-1;9910:16:1;;9748:184;-1:-1:-1;9748:184:1:o;14433:245::-;14500:6;14553:2;14541:9;14532:7;14528:23;14524:32;14521:52;;;14569:1;14566;14559:12;14521:52;14601:9;14595:16;14620:28;14642:5;14620:28;:::i;15501:287::-;15630:3;15668:6;15662:13;15684:66;15743:6;15738:3;15731:4;15723:6;15719:17;15684:66;:::i;:::-;15766:16;;;;;15501:287;-1:-1:-1;;15501:287:1:o

Swarm Source

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