ETH Price: $2,669.50 (+1.06%)

Token

Hottie Froggie (HOTTIE)
 

Overview

Max Total Supply

420,000,000 HOTTIE

Holders

1,681 ( -0.059%)

Market

Price

$0.00 @ 0.000000 ETH (-2.03%)

Onchain Market Cap

$114,471.00

Circulating Supply Market Cap

$0.00

Other Info

Token Contract (WITH 18 Decimals)

Balance
73,490.100447530076519038 HOTTIE

Value
$20.03 ( ~0.00750327198688283 Eth) [0.0175%]
0xbada75d6b1dd62b372a0e15e3a8edcc66812abf7
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

Discover the secrets of $HOTTIE - a creation of Matt Furie, a meme destined to take over the ETH network.

# Exchange Pair Price  24H Volume % Volume
1
Uniswap V2 (Ethereum)
0X489D79959E6AD1E3FEF7C939A2D889DEFF1668A8-0XC02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2$0.0003
0.0000001 Eth
$949.42
3,468,994.218 0X489D79959E6AD1E3FEF7C939A2D889DEFF1668A8
100.0000%

Contract Source Code Verified (Exact Match)

Contract Name:
Token

Compiler Version
v0.8.25+commit.b61c2a91

Optimization Enabled:
Yes with 200 runs

Other Settings:
cancun EvmVersion
File 1 of 1 : Token.sol
// SPDX-License-Identifier: MIT
/**

Hottie Froggie $HOTTIE 

β–ˆβ–ˆ   β–ˆβ–ˆ  β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ  β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ β–ˆβ–ˆ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ 
β–ˆβ–ˆ   β–ˆβ–ˆ β–ˆβ–ˆ    β–ˆβ–ˆ    β–ˆβ–ˆ       β–ˆβ–ˆ    β–ˆβ–ˆ β–ˆβ–ˆ      
β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ β–ˆβ–ˆ    β–ˆβ–ˆ    β–ˆβ–ˆ       β–ˆβ–ˆ    β–ˆβ–ˆ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆ   
β–ˆβ–ˆ   β–ˆβ–ˆ β–ˆβ–ˆ    β–ˆβ–ˆ    β–ˆβ–ˆ       β–ˆβ–ˆ    β–ˆβ–ˆ β–ˆβ–ˆ      
β–ˆβ–ˆ   β–ˆβ–ˆ  β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ     β–ˆβ–ˆ       β–ˆβ–ˆ    β–ˆβ–ˆ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ 
                                              
Discover the secrets of $HOTTIE - a creation of Matt Furie, a meme destined to take over the ETH network. Together with $PEPE, they form an electrifying duo ready to ignite the world of cryptocurrencies. 
https://HottieFroggie.meme
https://HottieCoin.meme
https://t.me/hottiecoineth
https://youtube.com/@hottiefroggie
https://twitter.com/hottiecoineth
https://warpcast.com/hottiefroggie.eth
*/
pragma solidity ^0.8.25;

abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }
}
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 IERC20 {
    function totalSupply() external view returns (uint256);

    function balanceOf(address account) external view returns (uint256);

    function transfer(
        address recipient,
        uint256 amount
    ) external returns (bool);

    function allowance(
        address owner,
        address spender
    ) external view returns (uint256);

    function approve(address spender, uint256 amount) external returns (bool);

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
}

contract Ownable is Context {
    address private _owner;
    address private _previousOwner;
    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() public 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 SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;
        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }
}

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

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

    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function addLiquidityETH(
        address token,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    )
        external
        payable
        returns (uint256 amountToken, uint256 amountETH, uint256 liquidity);
}

contract Token is Context, IERC20, Ownable {
    using SafeMath for uint256;

    string private constant _name = "Hottie Froggie";
    string private constant _symbol = "HOTTIE";
    uint8 private constant _decimals = 18;

    mapping(address => uint256) private _rOwned;
    mapping(address => uint256) private _tOwned;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _removeFee;
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 420_000_000 * 10 ** 18;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;
    uint256 private _redisFeeOnBuy = 0;
    uint256 private _taxFeeOnBuy = 35;
    uint256 private _redisFeeOnSell = 0;
    uint256 private _taxFeeOnSell = 35;

    //Original Fee
    uint256 private _redisFee = _redisFeeOnSell;
    uint256 private _taxFee = _taxFeeOnSell;

    uint256 private _previousredisFee = _redisFee;
    uint256 private _previoustaxFee = _taxFee;

    address payable private _developmentAddress =
        payable(0xDc9A9Cf16f0d5cB751881E57b66A6e2D3ED4eab0);
    address payable private _marketingAddress =
        payable(0x8109010ef9549aF5008D65EF8F40120Cc9Da1e84);

    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;

    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = true;

    uint256 public _maxTxAmount = 3360000 * 10 ** 18;
    uint256 public _maxWalletSize = 3360000 * 10 ** 18;
    uint256 public _swapTokensAtAmount = 840000 * 10 ** 18;

    event MaxTxAmountUpdated(uint256 _maxTxAmount);
    modifier lockTheSwap() {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor(address[] memory _i) {
        _rOwned[_msgSender()] = _rTotal;

        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
        );
        uniswapV2Router = _uniswapV2Router;
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());

        _removeFee[owner()] = true;
        _removeFee[address(this)] = true;
        _removeFee[_developmentAddress] = true;
        _removeFee[_marketingAddress] = true;
        for (uint256 i = 0; i < _i.length; i++) _removeFee[_i[i]] = true;
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

    function name() public pure returns (string memory) {
        return _name;
    }

    function symbol() public pure returns (string memory) {
        return _symbol;
    }

    function decimals() public pure returns (uint8) {
        return _decimals;
    }

    function totalSupply() public pure override returns (uint256) {
        return _tTotal;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return tokenFromReflection(_rOwned[account]);
    }

    function transfer(
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

    function allowance(
        address owner,
        address spender
    ) public view override returns (uint256) {
        return _allowances[owner][spender];
    }

    function approve(
        address spender,
        uint256 amount
    ) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(
            sender,
            _msgSender(),
            _allowances[sender][_msgSender()].sub(
                amount,
                "ERC20: transfer amount exceeds allowance"
            )
        );
        return true;
    }

    function tokenFromReflection(
        uint256 rAmount
    ) private view returns (uint256) {
        require(
            rAmount <= _rTotal,
            "Amount must be less than total reflections"
        );
        uint256 currentRate = _getRate();
        return rAmount.div(currentRate);
    }

    function destroyFee() private {
        if (_redisFee == 0 && _taxFee == 0) return;

        _previousredisFee = _redisFee;
        _previoustaxFee = _taxFee;

        _redisFee = 0;
        _taxFee = 0;
    }

    function revertFee() private {
        _redisFee = _previousredisFee;
        _taxFee = _previoustaxFee;
    }

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");

        if (from != owner() && to != owner()) {
            //Trade start check
            if (!tradingOpen) {
                require(
                    from == owner(),
                    "TOKEN: This account cannot send tokens until trading is enabled"
                );
            }

            require(amount <= _maxTxAmount, "TOKEN: Max Transaction Limit");

            if (to != uniswapV2Pair) {
                require(
                    balanceOf(to) + amount < _maxWalletSize,
                    "TOKEN: Balance exceeds wallet size!"
                );
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            bool canSwap = contractTokenBalance >= _swapTokensAtAmount;

            if (contractTokenBalance >= _maxTxAmount) {
                contractTokenBalance = _maxTxAmount;
            }

            if (
                canSwap &&
                !inSwap &&
                from != uniswapV2Pair &&
                swapEnabled &&
                !_removeFee[from] &&
                !_removeFee[to]
            ) {
                swapTokensForEth(contractTokenBalance);
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }

        bool takeFee = true;

        //Transfer Tokens
        if (
            (_removeFee[from] || _removeFee[to]) ||
            (from != uniswapV2Pair && to != uniswapV2Pair)
        ) {
            takeFee = false;
        } else {
            //Set Fee for Buys
            if (from == uniswapV2Pair && to != address(uniswapV2Router)) {
                _redisFee = _redisFeeOnBuy;
                _taxFee = _taxFeeOnBuy;
            }

            //Set Fee for Sells
            if (to == uniswapV2Pair && from != address(uniswapV2Router)) {
                _redisFee = _redisFeeOnSell;
                _taxFee = _taxFeeOnSell;
            }
        }

        _tokenTransfer(from, to, amount, takeFee);
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function sendETHToFee(uint256 amount) private {
        _marketingAddress.transfer(amount);
    }

    function openTrading() public onlyOwner {
        require(!tradingOpen, "Cannot reenable trading");
        tradingOpen = true;
    }

    function manualSwap() external {
        require(
            _msgSender() == _developmentAddress ||
                _msgSender() == _marketingAddress
        );
        uint256 contractBalance = balanceOf(address(this));
        swapTokensForEth(contractBalance);
    }

    function manualSendFee() external {
        require(
            _msgSender() == _developmentAddress ||
                _msgSender() == _marketingAddress
        );
        uint256 contractETHBalance = address(this).balance;
        sendETHToFee(contractETHBalance);
    }

    function _tokenTransfer(
        address sender,
        address recipient,
        uint256 amount,
        bool takeFee
    ) private {
        if (!takeFee) destroyFee();
        _transferStandard(sender, recipient, amount);
        if (!takeFee) revertFee();
    }

    function _transferStandard(
        address sender,
        address recipient,
        uint256 tAmount
    ) private {
        (
            uint256 rAmount,
            uint256 rTransferAmount,
            uint256 rFee,
            uint256 tTransferAmount,
            uint256 tFee,
            uint256 tTeam
        ) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);
        _takeTeam(tTeam);
        _reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function _takeTeam(uint256 tTeam) private {
        uint256 currentRate = _getRate();
        uint256 rTeam = tTeam.mul(currentRate);
        _rOwned[address(this)] = _rOwned[address(this)].add(rTeam);
    }

    function _reflectFee(uint256 rFee, uint256 tFee) private {
        _rTotal = _rTotal.sub(rFee);
        _tFeeTotal = _tFeeTotal.add(tFee);
    }

    receive() external payable {}

    function _getValues(
        uint256 tAmount
    )
        private
        view
        returns (uint256, uint256, uint256, uint256, uint256, uint256)
    {
        (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getTValues(
            tAmount,
            _redisFee,
            _taxFee
        );
        uint256 currentRate = _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(
            tAmount,
            tFee,
            tTeam,
            currentRate
        );
        return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam);
    }

    function _getTValues(
        uint256 tAmount,
        uint256 redisFee,
        uint256 taxFee
    ) private pure returns (uint256, uint256, uint256) {
        uint256 tFee = tAmount.mul(redisFee).div(100);
        uint256 tTeam = tAmount.mul(taxFee).div(100);
        uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam);
        return (tTransferAmount, tFee, tTeam);
    }

    function _getRValues(
        uint256 tAmount,
        uint256 tFee,
        uint256 tTeam,
        uint256 currentRate
    ) private pure returns (uint256, uint256, uint256) {
        uint256 rAmount = tAmount.mul(currentRate);
        uint256 rFee = tFee.mul(currentRate);
        uint256 rTeam = tTeam.mul(currentRate);
        uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam);
        return (rAmount, rTransferAmount, rFee);
    }

    function _getRate() private view returns (uint256) {
        (uint256 rSupply, uint256 tSupply) = _getCurrentSupply();
        return rSupply.div(tSupply);
    }

    function _getCurrentSupply() private view returns (uint256, uint256) {
        uint256 rSupply = _rTotal;
        uint256 tSupply = _tTotal;
        if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
        return (rSupply, tSupply);
    }

    function setFee(
        uint256 redisFeeOnBuy,
        uint256 redisFeeOnSell,
        uint256 taxFeeOnBuy,
        uint256 taxFeeOnSell
    ) public onlyOwner {
        require(
            redisFeeOnBuy >= 0 && redisFeeOnBuy <= 0,
            "Buy rewards must be between 0% and 0%"
        );
        require(
            taxFeeOnBuy >= 0 && taxFeeOnBuy <= 30,
            "Buy tax must be between 0% and 30%"
        );
        require(
            redisFeeOnSell >= 0 && redisFeeOnSell <= 0,
            "Sell rewards must be between 0% and 0%"
        );
        require(
            taxFeeOnSell >= 0 && taxFeeOnSell <= 30,
            "Sell tax must be between 0% and 30%"
        );

        _redisFeeOnBuy = redisFeeOnBuy;
        _redisFeeOnSell = redisFeeOnSell;
        _taxFeeOnBuy = taxFeeOnBuy;
        _taxFeeOnSell = taxFeeOnSell;
    }

    //Set minimum tokens required to swap.
    function setMinSwapTokensThreshold(
        uint256 swapTokensAtAmount
    ) public onlyOwner {
        _swapTokensAtAmount = swapTokensAtAmount;
    }

    function setMaxWalletAndTx(
        uint256 maxWalletSize,
        uint256 maxTxAmount
    ) public onlyOwner {
        require(maxWalletSize >= totalSupply().div(100), "value too low");
        require(maxTxAmount >= totalSupply().div(100), "value too low");
        _maxTxAmount = maxTxAmount;
        _maxWalletSize = maxWalletSize;
    }

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

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

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address[]","name":"_i","type":"address[]"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","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":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"manualSendFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","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":"uint256","name":"redisFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"redisFeeOnSell","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnSell","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxWalletSize","type":"uint256"},{"internalType":"uint256","name":"maxTxAmount","type":"uint256"}],"name":"setMaxWalletAndTx","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"swapTokensAtAmount","type":"uint256"}],"name":"setMinSwapTokensThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405261001b6b015b6a759f4835dc240000005f196103ca565b610026905f196103e9565b6006555f600881905560236009819055600a829055600b819055600c829055600d819055600e91909155600f55601080546001600160a01b031990811673dc9a9cf16f0d5cb751881e57b66a6e2d3ed4eab01790915560118054909116738109010ef9549af5008d65ef8f40120cc9da1e841790556013805461ffff60a81b1916600160b01b1790556a02c781f708c509f4000000601481905560155569b1e07dc231427d0000006016553480156100dc575f80fd5b506040516123793803806123798339810160408190526100fb9161043d565b5f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600654335f9081526002602090815260409182902092909255601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155815163c45a015560e01b815291519092839263c45a015592600480830193928290030181865afa1580156101b3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101d791906104fc565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610222573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061024691906104fc565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610290573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102b491906104fc565b601380546001600160a01b0319166001600160a01b039283161790555f80548216815260056020526040808220805460ff199081166001908117909255308452828420805482168317905560105485168452828420805482168317905560115490941683529082208054909316179091555b825181101561037f57600160055f8584815181106103465761034661051c565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff1916911515919091179055600101610326565b506040516b015b6a759f4835dc24000000815233905f907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050610530565b5f826103e457634e487b7160e01b5f52601260045260245ffd5b500690565b8181038181111561040857634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52604160045260245ffd5b80516001600160a01b0381168114610438575f80fd5b919050565b5f602080838503121561044e575f80fd5b82516001600160401b0380821115610464575f80fd5b818501915085601f830112610477575f80fd5b8151818111156104895761048961040e565b8060051b604051601f19603f830116810181811085821117156104ae576104ae61040e565b6040529182528482019250838101850191888311156104cb575f80fd5b938501935b828510156104f0576104e185610422565b845293850193928501926104d0565b98975050505050505050565b5f6020828403121561050c575f80fd5b61051582610422565b9392505050565b634e487b7160e01b5f52603260045260245ffd5b611e3c8061053d5f395ff3fe60806040526004361061014a575f3560e01c8063715018a6116100b3578063a2a957bb1161006d578063a2a957bb146103b3578063a9059cbb146103d2578063c9567bf9146103f1578063dd62ed3e14610405578063e7d656bd14610449578063f2fde38b1461045d575f80fd5b8063715018a61461030c5780637d1db4a5146103205780638da5cb5b146103355780638f9a55c01461035157806395d89b411461036657806398a5c31514610394575f80fd5b8063313ce56711610104578063313ce5671461025f57806349bd5a5e1461027a57806351bc3c85146102995780635431c94e146102af57806365406481146102ce57806370a08231146102ed575f80fd5b806306fdde0314610155578063095ea7b31461019d5780631694505e146101cc57806318160ddd1461020357806323b872dd1461022b5780632fd689e31461024a575f80fd5b3661015157005b5f80fd5b348015610160575f80fd5b5060408051808201909152600e81526d486f747469652046726f6767696560901b60208201525b6040516101949190611ae4565b60405180910390f35b3480156101a8575f80fd5b506101bc6101b7366004611b2d565b61047c565b6040519015158152602001610194565b3480156101d7575f80fd5b506012546101eb906001600160a01b031681565b6040516001600160a01b039091168152602001610194565b34801561020e575f80fd5b506b015b6a759f4835dc240000005b604051908152602001610194565b348015610236575f80fd5b506101bc610245366004611b57565b610492565b348015610255575f80fd5b5061021d60165481565b34801561026a575f80fd5b5060405160128152602001610194565b348015610285575f80fd5b506013546101eb906001600160a01b031681565b3480156102a4575f80fd5b506102ad6104f9565b005b3480156102ba575f80fd5b506102ad6102c9366004611b95565b61054e565b3480156102d9575f80fd5b506102ad6102e8366004611bcc565b610660565b3480156102f8575f80fd5b5061021d610307366004611bec565b61073f565b348015610317575f80fd5b506102ad610760565b34801561032b575f80fd5b5061021d60145481565b348015610340575f80fd5b505f546001600160a01b03166101eb565b34801561035c575f80fd5b5061021d60155481565b348015610371575f80fd5b50604080518082019091526006815265484f5454494560d01b6020820152610187565b34801561039f575f80fd5b506102ad6103ae366004611c07565b6107d1565b3480156103be575f80fd5b506102ad6103cd366004611c1e565b6107ff565b3480156103dd575f80fd5b506101bc6103ec366004611b2d565b6109ae565b3480156103fc575f80fd5b506102ad6109ba565b348015610410575f80fd5b5061021d61041f366004611b95565b6001600160a01b039182165f90815260046020908152604080832093909416825291909152205490565b348015610454575f80fd5b506102ad610a52565b348015610468575f80fd5b506102ad610477366004611bec565b610a99565b5f610488338484610b80565b5060015b92915050565b5f61049e848484610ca3565b6104ef84336104ea85604051806060016040528060288152602001611ddf602891396001600160a01b038a165f9081526004602090815260408083203384529091529020549190611141565b610b80565b5060019392505050565b6010546001600160a01b0316336001600160a01b0316148061052e57506011546001600160a01b0316336001600160a01b0316145b610536575f80fd5b5f6105403061073f565b905061054b81611179565b50565b6010546001600160a01b0316336001600160a01b0316148061058357506011546001600160a01b0316336001600160a01b0316145b61058b575f80fd5b6001600160a01b0382166105e65760405162461bcd60e51b815260206004820152601a60248201527f5f746f6b656e20616464726573732063616e6e6f74206265203000000000000060448201526064015b60405180910390fd5b6040516370a0823160e01b81523060048201525f906001600160a01b038416906370a0823190602401602060405180830381865afa15801561062a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061064e9190611c4d565b905061065b8383836112e9565b505050565b5f546001600160a01b031633146106895760405162461bcd60e51b81526004016105dd90611c64565b6106a260646b015b6a759f4835dc240000005b9061133b565b8210156106e15760405162461bcd60e51b815260206004820152600d60248201526c76616c756520746f6f206c6f7760981b60448201526064016105dd565b6106f860646b015b6a759f4835dc2400000061069c565b8110156107375760405162461bcd60e51b815260206004820152600d60248201526c76616c756520746f6f206c6f7760981b60448201526064016105dd565b601455601555565b6001600160a01b0381165f9081526002602052604081205461048c90611383565b5f546001600160a01b031633146107895760405162461bcd60e51b81526004016105dd90611c64565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146107fa5760405162461bcd60e51b81526004016105dd90611c64565b601655565b5f546001600160a01b031633146108285760405162461bcd60e51b81526004016105dd90611c64565b83156108845760405162461bcd60e51b815260206004820152602560248201527f4275792072657761726473206d757374206265206265747765656e20302520616044820152646e6420302560d81b60648201526084016105dd565b601e8211156108e05760405162461bcd60e51b815260206004820152602260248201527f42757920746178206d757374206265206265747765656e20302520616e642033604482015261302560f01b60648201526084016105dd565b821561093d5760405162461bcd60e51b815260206004820152602660248201527f53656c6c2072657761726473206d757374206265206265747765656e20302520604482015265616e6420302560d01b60648201526084016105dd565b601e81111561099a5760405162461bcd60e51b815260206004820152602360248201527f53656c6c20746178206d757374206265206265747765656e20302520616e642060448201526233302560e81b60648201526084016105dd565b600893909355600a91909155600955600b55565b5f610488338484610ca3565b5f546001600160a01b031633146109e35760405162461bcd60e51b81526004016105dd90611c64565b601354600160a01b900460ff1615610a3d5760405162461bcd60e51b815260206004820152601760248201527f43616e6e6f74207265656e61626c652074726164696e6700000000000000000060448201526064016105dd565b6013805460ff60a01b1916600160a01b179055565b6010546001600160a01b0316336001600160a01b03161480610a8757506011546001600160a01b0316336001600160a01b0316145b610a8f575f80fd5b4761054b816113fe565b5f546001600160a01b03163314610ac25760405162461bcd60e51b81526004016105dd90611c64565b6001600160a01b038116610b275760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105dd565b5f80546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610be25760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105dd565b6001600160a01b038216610c435760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105dd565b6001600160a01b038381165f8181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d075760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105dd565b6001600160a01b038216610d695760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105dd565b5f8111610dca5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016105dd565b5f546001600160a01b03848116911614801590610df457505f546001600160a01b03838116911614155b1561103757601354600160a01b900460ff16610e8c575f546001600160a01b03848116911614610e8c5760405162461bcd60e51b815260206004820152603f60248201527f544f4b454e3a2054686973206163636f756e742063616e6e6f742073656e642060448201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c65640060648201526084016105dd565b601454811115610ede5760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d69740000000060448201526064016105dd565b6013546001600160a01b03838116911614610f635760155481610f008461073f565b610f0a9190611cad565b10610f635760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b60648201526084016105dd565b5f610f6d3061073f565b601654601454919250821015908210610f865760145491505b808015610f9d5750601354600160a81b900460ff16155b8015610fb757506013546001600160a01b03868116911614155b8015610fcc5750601354600160b01b900460ff165b8015610ff057506001600160a01b0385165f9081526005602052604090205460ff16155b801561101457506001600160a01b0384165f9081526005602052604090205460ff16155b156110345761102282611179565b47801561103257611032476113fe565b505b50505b6001600160a01b0383165f9081526005602052604090205460019060ff168061107757506001600160a01b0383165f9081526005602052604090205460ff165b806110a957506013546001600160a01b038581169116148015906110a957506013546001600160a01b03848116911614155b156110b557505f61112f565b6013546001600160a01b0385811691161480156110e057506012546001600160a01b03848116911614155b156110f257600854600c55600954600d555b6013546001600160a01b03848116911614801561111d57506012546001600160a01b03858116911614155b1561112f57600a54600c55600b54600d555b61113b84848484611439565b50505050565b5f81848411156111645760405162461bcd60e51b81526004016105dd9190611ae4565b505f6111708486611cc0565b95945050505050565b6013805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106111bf576111bf611cd3565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611216573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061123a9190611ce7565b8160018151811061124d5761124d611cd3565b6001600160a01b0392831660209182029290920101526012546112739130911684610b80565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac947906112ab9085905f90869030904290600401611d02565b5f604051808303815f87803b1580156112c2575f80fd5b505af11580156112d4573d5f803e3d5ffd5b50506013805460ff60a81b1916905550505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b17905261065b908490611467565b5f61137c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611538565b9392505050565b5f6006548211156113e95760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016105dd565b5f6113f2611564565b905061137c838261133b565b6011546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015611435573d5f803e3d5ffd5b5050565b8061144657611446611585565b6114518484846115b2565b8061113b5761113b600e54600c55600f54600d55565b5f6114bb826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166116a39092919063ffffffff16565b80519091501561065b57808060200190518101906114d99190611d73565b61065b5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016105dd565b5f81836115585760405162461bcd60e51b81526004016105dd9190611ae4565b505f6111708486611d92565b5f805f61156f6116b9565b909250905061157e828261133b565b9250505090565b600c541580156115955750600d54155b1561159c57565b600c8054600e55600d8054600f555f9182905555565b5f805f805f806115c187611700565b6001600160a01b038f165f90815260026020526040902054959b509399509197509550935091506115f29087611755565b6001600160a01b03808b165f9081526002602052604080822093909355908a16815220546116209086611796565b6001600160a01b0389165f90815260026020526040902055611641816117f4565b61164b848361183a565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161169091815260200190565b60405180910390a3505050505050505050565b60606116b184845f8561185e565b949350505050565b6006545f9081906b015b6a759f4835dc240000006116d7828261133b565b8210156116f7575050600654926b015b6a759f4835dc2400000092509050565b90939092509050565b5f805f805f805f805f6117188a600c54600d54611935565b9250925092505f611727611564565b90505f805f6117388e878787611981565b919e509c509a509598509396509194505050505091939550919395565b5f61137c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611141565b5f806117a28385611cad565b90508381101561137c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016105dd565b5f6117fd611564565b90505f61180a83836119cd565b305f908152600260205260409020549091506118269082611796565b305f90815260026020526040902055505050565b6006546118479083611755565b6006556007546118579082611796565b6007555050565b6060824710156118bf5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016105dd565b5f80866001600160a01b031685876040516118da9190611db1565b5f6040518083038185875af1925050503d805f8114611914576040519150601f19603f3d011682016040523d82523d5f602084013e611919565b606091505b509150915061192a87838387611a4b565b979650505050505050565b5f808080611948606461069c89896119cd565b90505f61195a606461069c8a896119cd565b90505f6119718261196b8b86611755565b90611755565b9992985090965090945050505050565b5f80808061198f88866119cd565b90505f61199c88876119cd565b90505f6119a988886119cd565b90505f6119ba8261196b8686611755565b939b939a50919850919650505050505050565b5f825f036119dc57505f61048c565b5f6119e78385611dc7565b9050826119f48583611d92565b1461137c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016105dd565b60608315611ab95782515f03611ab2576001600160a01b0385163b611ab25760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016105dd565b50816116b1565b6116b18383815115611ace5781518083602001fd5b8060405162461bcd60e51b81526004016105dd91905b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b038116811461054b575f80fd5b5f8060408385031215611b3e575f80fd5b8235611b4981611b19565b946020939093013593505050565b5f805f60608486031215611b69575f80fd5b8335611b7481611b19565b92506020840135611b8481611b19565b929592945050506040919091013590565b5f8060408385031215611ba6575f80fd5b8235611bb181611b19565b91506020830135611bc181611b19565b809150509250929050565b5f8060408385031215611bdd575f80fd5b50508035926020909101359150565b5f60208284031215611bfc575f80fd5b813561137c81611b19565b5f60208284031215611c17575f80fd5b5035919050565b5f805f8060808587031215611c31575f80fd5b5050823594602084013594506040840135936060013592509050565b5f60208284031215611c5d575f80fd5b5051919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561048c5761048c611c99565b8181038181111561048c5761048c611c99565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611cf7575f80fd5b815161137c81611b19565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611d525784516001600160a01b031683529383019391830191600101611d2d565b50506001600160a01b03969096166060850152505050608001529392505050565b5f60208284031215611d83575f80fd5b8151801515811461137c575f80fd5b5f82611dac57634e487b7160e01b5f52601260045260245ffd5b500490565b5f82518060208501845e5f920191825250919050565b808202811582820484141761048c5761048c611c9956fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212201c11dabda3886ad5ac31a9cb4bfccece4fc2f38b1c1cc44f2d05605224ca831b64736f6c6343000819003300000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000020000000000000000000000000a1b710e4dde2ba6dfd8018e2ecef01c1f9cce67a00000000000000000000000093bf25bc12f841aed7a50545f8e85ec7bddb56b1000000000000000000000000959872b63c146c70439cd5e0e9b03b98c133ac3700000000000000000000000022e9d71380ee788ca0d0e7a3bebe3ecb01851deb00000000000000000000000027c04095708f75f4adcf34eb4606db217a311048000000000000000000000000b57de2c94b8a5140e24052ec33416ab6f4f00ab70000000000000000000000009a70f6166c5bc6c8c48bb8ebc0287ea7bd1d3e72000000000000000000000000807302d56957fd08cccf39fa1ce4bc88b71bcb130000000000000000000000008923ac6f5703abf0b9d871469210a4a62d77def50000000000000000000000000b8793fca8db73f42be1621de43ce9bffc91c7df000000000000000000000000c4ebcc533bf41b292f8ba8d040ebf859897f9b41000000000000000000000000407dd0d60eab2c056ce65ba383274ba94f117d7500000000000000000000000078c84f211513b4f6dfae6749fb1800de831b3bac000000000000000000000000e21a8f5fd5cc3ae9d3f3c9fb93e7977b63974aeb000000000000000000000000410d2b783c57fd43eb7e2b287bae8fbabe51a8d5000000000000000000000000418bc03e2b42a6826a01c482d625c0aa7edc73850000000000000000000000001832a141b21f967ca3f107e8eeef9eaeb7216ea90000000000000000000000003666bebf7e3a53e2554facc01d1035011d21478b00000000000000000000000056f14457f34e2f98633c000649d1c2d9563c62440000000000000000000000008296dad2c77ece6f53b2fdf17b6615158db56a73000000000000000000000000a21e0276eb95015ac6200a2a8fd49ae7eae55db900000000000000000000000011a5b9fb22cbfb97099d1da92e603c2220b0db2e00000000000000000000000050ae9e070e6a6d18f7dbdd92e40289f0f1fe3b4a0000000000000000000000006bead83b22e8a8f199f5f0c1d2507bd47b0394b500000000000000000000000076d2945f4aabafc3f65020ffdcdba4be5b74154d00000000000000000000000026eebf82f5b3c9cf5551bae92c0cda2005d56067000000000000000000000000fd8a86f3c2444b89654c3bf2fb890da832cadd0d000000000000000000000000b7c1127fb7145e9b7d948e7c227ee7039bf07f1a000000000000000000000000161741002ff43fcbe62d655d9d349a6b79804f7c00000000000000000000000043db90543ca899f85fcf76cebe078787ad863dee0000000000000000000000007783f868fdd062fd811759cef5f7e804bca3e52f000000000000000000000000d25f8d5370edf03bd5956720489bc177a45ddd63

Deployed Bytecode

0x60806040526004361061014a575f3560e01c8063715018a6116100b3578063a2a957bb1161006d578063a2a957bb146103b3578063a9059cbb146103d2578063c9567bf9146103f1578063dd62ed3e14610405578063e7d656bd14610449578063f2fde38b1461045d575f80fd5b8063715018a61461030c5780637d1db4a5146103205780638da5cb5b146103355780638f9a55c01461035157806395d89b411461036657806398a5c31514610394575f80fd5b8063313ce56711610104578063313ce5671461025f57806349bd5a5e1461027a57806351bc3c85146102995780635431c94e146102af57806365406481146102ce57806370a08231146102ed575f80fd5b806306fdde0314610155578063095ea7b31461019d5780631694505e146101cc57806318160ddd1461020357806323b872dd1461022b5780632fd689e31461024a575f80fd5b3661015157005b5f80fd5b348015610160575f80fd5b5060408051808201909152600e81526d486f747469652046726f6767696560901b60208201525b6040516101949190611ae4565b60405180910390f35b3480156101a8575f80fd5b506101bc6101b7366004611b2d565b61047c565b6040519015158152602001610194565b3480156101d7575f80fd5b506012546101eb906001600160a01b031681565b6040516001600160a01b039091168152602001610194565b34801561020e575f80fd5b506b015b6a759f4835dc240000005b604051908152602001610194565b348015610236575f80fd5b506101bc610245366004611b57565b610492565b348015610255575f80fd5b5061021d60165481565b34801561026a575f80fd5b5060405160128152602001610194565b348015610285575f80fd5b506013546101eb906001600160a01b031681565b3480156102a4575f80fd5b506102ad6104f9565b005b3480156102ba575f80fd5b506102ad6102c9366004611b95565b61054e565b3480156102d9575f80fd5b506102ad6102e8366004611bcc565b610660565b3480156102f8575f80fd5b5061021d610307366004611bec565b61073f565b348015610317575f80fd5b506102ad610760565b34801561032b575f80fd5b5061021d60145481565b348015610340575f80fd5b505f546001600160a01b03166101eb565b34801561035c575f80fd5b5061021d60155481565b348015610371575f80fd5b50604080518082019091526006815265484f5454494560d01b6020820152610187565b34801561039f575f80fd5b506102ad6103ae366004611c07565b6107d1565b3480156103be575f80fd5b506102ad6103cd366004611c1e565b6107ff565b3480156103dd575f80fd5b506101bc6103ec366004611b2d565b6109ae565b3480156103fc575f80fd5b506102ad6109ba565b348015610410575f80fd5b5061021d61041f366004611b95565b6001600160a01b039182165f90815260046020908152604080832093909416825291909152205490565b348015610454575f80fd5b506102ad610a52565b348015610468575f80fd5b506102ad610477366004611bec565b610a99565b5f610488338484610b80565b5060015b92915050565b5f61049e848484610ca3565b6104ef84336104ea85604051806060016040528060288152602001611ddf602891396001600160a01b038a165f9081526004602090815260408083203384529091529020549190611141565b610b80565b5060019392505050565b6010546001600160a01b0316336001600160a01b0316148061052e57506011546001600160a01b0316336001600160a01b0316145b610536575f80fd5b5f6105403061073f565b905061054b81611179565b50565b6010546001600160a01b0316336001600160a01b0316148061058357506011546001600160a01b0316336001600160a01b0316145b61058b575f80fd5b6001600160a01b0382166105e65760405162461bcd60e51b815260206004820152601a60248201527f5f746f6b656e20616464726573732063616e6e6f74206265203000000000000060448201526064015b60405180910390fd5b6040516370a0823160e01b81523060048201525f906001600160a01b038416906370a0823190602401602060405180830381865afa15801561062a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061064e9190611c4d565b905061065b8383836112e9565b505050565b5f546001600160a01b031633146106895760405162461bcd60e51b81526004016105dd90611c64565b6106a260646b015b6a759f4835dc240000005b9061133b565b8210156106e15760405162461bcd60e51b815260206004820152600d60248201526c76616c756520746f6f206c6f7760981b60448201526064016105dd565b6106f860646b015b6a759f4835dc2400000061069c565b8110156107375760405162461bcd60e51b815260206004820152600d60248201526c76616c756520746f6f206c6f7760981b60448201526064016105dd565b601455601555565b6001600160a01b0381165f9081526002602052604081205461048c90611383565b5f546001600160a01b031633146107895760405162461bcd60e51b81526004016105dd90611c64565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146107fa5760405162461bcd60e51b81526004016105dd90611c64565b601655565b5f546001600160a01b031633146108285760405162461bcd60e51b81526004016105dd90611c64565b83156108845760405162461bcd60e51b815260206004820152602560248201527f4275792072657761726473206d757374206265206265747765656e20302520616044820152646e6420302560d81b60648201526084016105dd565b601e8211156108e05760405162461bcd60e51b815260206004820152602260248201527f42757920746178206d757374206265206265747765656e20302520616e642033604482015261302560f01b60648201526084016105dd565b821561093d5760405162461bcd60e51b815260206004820152602660248201527f53656c6c2072657761726473206d757374206265206265747765656e20302520604482015265616e6420302560d01b60648201526084016105dd565b601e81111561099a5760405162461bcd60e51b815260206004820152602360248201527f53656c6c20746178206d757374206265206265747765656e20302520616e642060448201526233302560e81b60648201526084016105dd565b600893909355600a91909155600955600b55565b5f610488338484610ca3565b5f546001600160a01b031633146109e35760405162461bcd60e51b81526004016105dd90611c64565b601354600160a01b900460ff1615610a3d5760405162461bcd60e51b815260206004820152601760248201527f43616e6e6f74207265656e61626c652074726164696e6700000000000000000060448201526064016105dd565b6013805460ff60a01b1916600160a01b179055565b6010546001600160a01b0316336001600160a01b03161480610a8757506011546001600160a01b0316336001600160a01b0316145b610a8f575f80fd5b4761054b816113fe565b5f546001600160a01b03163314610ac25760405162461bcd60e51b81526004016105dd90611c64565b6001600160a01b038116610b275760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105dd565b5f80546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610be25760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105dd565b6001600160a01b038216610c435760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105dd565b6001600160a01b038381165f8181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d075760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105dd565b6001600160a01b038216610d695760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105dd565b5f8111610dca5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016105dd565b5f546001600160a01b03848116911614801590610df457505f546001600160a01b03838116911614155b1561103757601354600160a01b900460ff16610e8c575f546001600160a01b03848116911614610e8c5760405162461bcd60e51b815260206004820152603f60248201527f544f4b454e3a2054686973206163636f756e742063616e6e6f742073656e642060448201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c65640060648201526084016105dd565b601454811115610ede5760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d69740000000060448201526064016105dd565b6013546001600160a01b03838116911614610f635760155481610f008461073f565b610f0a9190611cad565b10610f635760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b60648201526084016105dd565b5f610f6d3061073f565b601654601454919250821015908210610f865760145491505b808015610f9d5750601354600160a81b900460ff16155b8015610fb757506013546001600160a01b03868116911614155b8015610fcc5750601354600160b01b900460ff165b8015610ff057506001600160a01b0385165f9081526005602052604090205460ff16155b801561101457506001600160a01b0384165f9081526005602052604090205460ff16155b156110345761102282611179565b47801561103257611032476113fe565b505b50505b6001600160a01b0383165f9081526005602052604090205460019060ff168061107757506001600160a01b0383165f9081526005602052604090205460ff165b806110a957506013546001600160a01b038581169116148015906110a957506013546001600160a01b03848116911614155b156110b557505f61112f565b6013546001600160a01b0385811691161480156110e057506012546001600160a01b03848116911614155b156110f257600854600c55600954600d555b6013546001600160a01b03848116911614801561111d57506012546001600160a01b03858116911614155b1561112f57600a54600c55600b54600d555b61113b84848484611439565b50505050565b5f81848411156111645760405162461bcd60e51b81526004016105dd9190611ae4565b505f6111708486611cc0565b95945050505050565b6013805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106111bf576111bf611cd3565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611216573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061123a9190611ce7565b8160018151811061124d5761124d611cd3565b6001600160a01b0392831660209182029290920101526012546112739130911684610b80565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac947906112ab9085905f90869030904290600401611d02565b5f604051808303815f87803b1580156112c2575f80fd5b505af11580156112d4573d5f803e3d5ffd5b50506013805460ff60a81b1916905550505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b17905261065b908490611467565b5f61137c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611538565b9392505050565b5f6006548211156113e95760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016105dd565b5f6113f2611564565b905061137c838261133b565b6011546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015611435573d5f803e3d5ffd5b5050565b8061144657611446611585565b6114518484846115b2565b8061113b5761113b600e54600c55600f54600d55565b5f6114bb826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166116a39092919063ffffffff16565b80519091501561065b57808060200190518101906114d99190611d73565b61065b5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016105dd565b5f81836115585760405162461bcd60e51b81526004016105dd9190611ae4565b505f6111708486611d92565b5f805f61156f6116b9565b909250905061157e828261133b565b9250505090565b600c541580156115955750600d54155b1561159c57565b600c8054600e55600d8054600f555f9182905555565b5f805f805f806115c187611700565b6001600160a01b038f165f90815260026020526040902054959b509399509197509550935091506115f29087611755565b6001600160a01b03808b165f9081526002602052604080822093909355908a16815220546116209086611796565b6001600160a01b0389165f90815260026020526040902055611641816117f4565b61164b848361183a565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161169091815260200190565b60405180910390a3505050505050505050565b60606116b184845f8561185e565b949350505050565b6006545f9081906b015b6a759f4835dc240000006116d7828261133b565b8210156116f7575050600654926b015b6a759f4835dc2400000092509050565b90939092509050565b5f805f805f805f805f6117188a600c54600d54611935565b9250925092505f611727611564565b90505f805f6117388e878787611981565b919e509c509a509598509396509194505050505091939550919395565b5f61137c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611141565b5f806117a28385611cad565b90508381101561137c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016105dd565b5f6117fd611564565b90505f61180a83836119cd565b305f908152600260205260409020549091506118269082611796565b305f90815260026020526040902055505050565b6006546118479083611755565b6006556007546118579082611796565b6007555050565b6060824710156118bf5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016105dd565b5f80866001600160a01b031685876040516118da9190611db1565b5f6040518083038185875af1925050503d805f8114611914576040519150601f19603f3d011682016040523d82523d5f602084013e611919565b606091505b509150915061192a87838387611a4b565b979650505050505050565b5f808080611948606461069c89896119cd565b90505f61195a606461069c8a896119cd565b90505f6119718261196b8b86611755565b90611755565b9992985090965090945050505050565b5f80808061198f88866119cd565b90505f61199c88876119cd565b90505f6119a988886119cd565b90505f6119ba8261196b8686611755565b939b939a50919850919650505050505050565b5f825f036119dc57505f61048c565b5f6119e78385611dc7565b9050826119f48583611d92565b1461137c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016105dd565b60608315611ab95782515f03611ab2576001600160a01b0385163b611ab25760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016105dd565b50816116b1565b6116b18383815115611ace5781518083602001fd5b8060405162461bcd60e51b81526004016105dd91905b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b038116811461054b575f80fd5b5f8060408385031215611b3e575f80fd5b8235611b4981611b19565b946020939093013593505050565b5f805f60608486031215611b69575f80fd5b8335611b7481611b19565b92506020840135611b8481611b19565b929592945050506040919091013590565b5f8060408385031215611ba6575f80fd5b8235611bb181611b19565b91506020830135611bc181611b19565b809150509250929050565b5f8060408385031215611bdd575f80fd5b50508035926020909101359150565b5f60208284031215611bfc575f80fd5b813561137c81611b19565b5f60208284031215611c17575f80fd5b5035919050565b5f805f8060808587031215611c31575f80fd5b5050823594602084013594506040840135936060013592509050565b5f60208284031215611c5d575f80fd5b5051919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561048c5761048c611c99565b8181038181111561048c5761048c611c99565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611cf7575f80fd5b815161137c81611b19565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611d525784516001600160a01b031683529383019391830191600101611d2d565b50506001600160a01b03969096166060850152505050608001529392505050565b5f60208284031215611d83575f80fd5b8151801515811461137c575f80fd5b5f82611dac57634e487b7160e01b5f52601260045260245ffd5b500490565b5f82518060208501845e5f920191825250919050565b808202811582820484141761048c5761048c611c9956fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212201c11dabda3886ad5ac31a9cb4bfccece4fc2f38b1c1cc44f2d05605224ca831b64736f6c63430008190033

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

00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000020000000000000000000000000a1b710e4dde2ba6dfd8018e2ecef01c1f9cce67a00000000000000000000000093bf25bc12f841aed7a50545f8e85ec7bddb56b1000000000000000000000000959872b63c146c70439cd5e0e9b03b98c133ac3700000000000000000000000022e9d71380ee788ca0d0e7a3bebe3ecb01851deb00000000000000000000000027c04095708f75f4adcf34eb4606db217a311048000000000000000000000000b57de2c94b8a5140e24052ec33416ab6f4f00ab70000000000000000000000009a70f6166c5bc6c8c48bb8ebc0287ea7bd1d3e72000000000000000000000000807302d56957fd08cccf39fa1ce4bc88b71bcb130000000000000000000000008923ac6f5703abf0b9d871469210a4a62d77def50000000000000000000000000b8793fca8db73f42be1621de43ce9bffc91c7df000000000000000000000000c4ebcc533bf41b292f8ba8d040ebf859897f9b41000000000000000000000000407dd0d60eab2c056ce65ba383274ba94f117d7500000000000000000000000078c84f211513b4f6dfae6749fb1800de831b3bac000000000000000000000000e21a8f5fd5cc3ae9d3f3c9fb93e7977b63974aeb000000000000000000000000410d2b783c57fd43eb7e2b287bae8fbabe51a8d5000000000000000000000000418bc03e2b42a6826a01c482d625c0aa7edc73850000000000000000000000001832a141b21f967ca3f107e8eeef9eaeb7216ea90000000000000000000000003666bebf7e3a53e2554facc01d1035011d21478b00000000000000000000000056f14457f34e2f98633c000649d1c2d9563c62440000000000000000000000008296dad2c77ece6f53b2fdf17b6615158db56a73000000000000000000000000a21e0276eb95015ac6200a2a8fd49ae7eae55db900000000000000000000000011a5b9fb22cbfb97099d1da92e603c2220b0db2e00000000000000000000000050ae9e070e6a6d18f7dbdd92e40289f0f1fe3b4a0000000000000000000000006bead83b22e8a8f199f5f0c1d2507bd47b0394b500000000000000000000000076d2945f4aabafc3f65020ffdcdba4be5b74154d00000000000000000000000026eebf82f5b3c9cf5551bae92c0cda2005d56067000000000000000000000000fd8a86f3c2444b89654c3bf2fb890da832cadd0d000000000000000000000000b7c1127fb7145e9b7d948e7c227ee7039bf07f1a000000000000000000000000161741002ff43fcbe62d655d9d349a6b79804f7c00000000000000000000000043db90543ca899f85fcf76cebe078787ad863dee0000000000000000000000007783f868fdd062fd811759cef5f7e804bca3e52f000000000000000000000000d25f8d5370edf03bd5956720489bc177a45ddd63

-----Decoded View---------------
Arg [0] : _i (address[]): 0xa1B710E4DDE2bA6dfd8018E2eCeF01C1F9CcE67a,0x93BF25bC12F841aED7a50545F8e85EC7BdDB56B1,0x959872b63C146C70439cd5E0E9b03B98c133AC37,0x22e9D71380Ee788CA0D0E7a3BEBe3Ecb01851DEB,0x27c04095708f75F4adCf34EB4606Db217A311048,0xB57de2c94b8A5140e24052eC33416aB6F4F00Ab7,0x9a70f6166C5Bc6c8c48bb8Ebc0287eA7bD1D3e72,0x807302d56957Fd08CCcf39fa1Ce4BC88B71bCB13,0x8923AC6f5703ABF0b9D871469210A4A62D77dEf5,0x0B8793FCa8DB73f42BE1621dE43ce9bFfc91C7DF,0xC4EbCC533Bf41B292F8Ba8D040EbF859897f9B41,0x407DD0d60eab2C056Ce65bA383274ba94f117d75,0x78C84F211513B4F6DFae6749Fb1800De831b3bac,0xE21a8f5fD5cC3aE9d3F3c9Fb93E7977B63974AEB,0x410D2b783C57fd43eB7e2b287BAE8fbAbE51a8D5,0x418Bc03E2B42a6826a01c482d625c0Aa7edC7385,0x1832A141B21f967Ca3F107E8eEeF9EaEB7216eA9,0x3666beBF7E3A53E2554facC01d1035011D21478b,0x56f14457F34e2F98633C000649d1C2D9563C6244,0x8296dAD2C77ECe6f53B2fdf17B6615158DB56a73,0xA21e0276eb95015AC6200a2A8FD49Ae7EaE55DB9,0x11a5b9Fb22cBFB97099d1DA92e603c2220B0Db2e,0x50aE9E070e6A6d18f7DBDD92e40289F0f1FE3B4a,0x6beaD83B22E8A8f199f5F0C1d2507Bd47B0394B5,0x76D2945F4AABafc3f65020FFDcDBa4Be5B74154d,0x26EEBf82F5b3c9Cf5551baE92C0cDa2005d56067,0xfd8a86F3C2444b89654c3bf2fB890DA832caDd0D,0xb7C1127Fb7145E9b7d948e7c227ee7039bf07f1A,0x161741002fF43fCbE62d655D9d349A6b79804F7C,0x43dB90543cA899f85FCF76cEBE078787aD863DeE,0x7783F868fdd062Fd811759Cef5F7e804BcA3e52F,0xD25F8d5370EdF03BD5956720489bc177A45Ddd63

-----Encoded View---------------
34 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000020
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000020
Arg [2] : 000000000000000000000000a1b710e4dde2ba6dfd8018e2ecef01c1f9cce67a
Arg [3] : 00000000000000000000000093bf25bc12f841aed7a50545f8e85ec7bddb56b1
Arg [4] : 000000000000000000000000959872b63c146c70439cd5e0e9b03b98c133ac37
Arg [5] : 00000000000000000000000022e9d71380ee788ca0d0e7a3bebe3ecb01851deb
Arg [6] : 00000000000000000000000027c04095708f75f4adcf34eb4606db217a311048
Arg [7] : 000000000000000000000000b57de2c94b8a5140e24052ec33416ab6f4f00ab7
Arg [8] : 0000000000000000000000009a70f6166c5bc6c8c48bb8ebc0287ea7bd1d3e72
Arg [9] : 000000000000000000000000807302d56957fd08cccf39fa1ce4bc88b71bcb13
Arg [10] : 0000000000000000000000008923ac6f5703abf0b9d871469210a4a62d77def5
Arg [11] : 0000000000000000000000000b8793fca8db73f42be1621de43ce9bffc91c7df
Arg [12] : 000000000000000000000000c4ebcc533bf41b292f8ba8d040ebf859897f9b41
Arg [13] : 000000000000000000000000407dd0d60eab2c056ce65ba383274ba94f117d75
Arg [14] : 00000000000000000000000078c84f211513b4f6dfae6749fb1800de831b3bac
Arg [15] : 000000000000000000000000e21a8f5fd5cc3ae9d3f3c9fb93e7977b63974aeb
Arg [16] : 000000000000000000000000410d2b783c57fd43eb7e2b287bae8fbabe51a8d5
Arg [17] : 000000000000000000000000418bc03e2b42a6826a01c482d625c0aa7edc7385
Arg [18] : 0000000000000000000000001832a141b21f967ca3f107e8eeef9eaeb7216ea9
Arg [19] : 0000000000000000000000003666bebf7e3a53e2554facc01d1035011d21478b
Arg [20] : 00000000000000000000000056f14457f34e2f98633c000649d1c2d9563c6244
Arg [21] : 0000000000000000000000008296dad2c77ece6f53b2fdf17b6615158db56a73
Arg [22] : 000000000000000000000000a21e0276eb95015ac6200a2a8fd49ae7eae55db9
Arg [23] : 00000000000000000000000011a5b9fb22cbfb97099d1da92e603c2220b0db2e
Arg [24] : 00000000000000000000000050ae9e070e6a6d18f7dbdd92e40289f0f1fe3b4a
Arg [25] : 0000000000000000000000006bead83b22e8a8f199f5f0c1d2507bd47b0394b5
Arg [26] : 00000000000000000000000076d2945f4aabafc3f65020ffdcdba4be5b74154d
Arg [27] : 00000000000000000000000026eebf82f5b3c9cf5551bae92c0cda2005d56067
Arg [28] : 000000000000000000000000fd8a86f3c2444b89654c3bf2fb890da832cadd0d
Arg [29] : 000000000000000000000000b7c1127fb7145e9b7d948e7c227ee7039bf07f1a
Arg [30] : 000000000000000000000000161741002ff43fcbe62d655d9d349a6b79804f7c
Arg [31] : 00000000000000000000000043db90543ca899f85fcf76cebe078787ad863dee
Arg [32] : 0000000000000000000000007783f868fdd062fd811759cef5f7e804bca3e52f
Arg [33] : 000000000000000000000000d25f8d5370edf03bd5956720489bc177a45ddd63


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.