ETH Price: $2,275.45 (-4.55%)

Contract

0x41c18296a8eF0Ce89E7601749444C52c26745AC4
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve194651812024-03-19 0:17:23172 days ago1710807443IN
0x41c18296...c26745AC4
0 ETH0.0013694829.59439556
Approve194595862024-03-18 5:25:11173 days ago1710739511IN
0x41c18296...c26745AC4
0 ETH0.001153724.7518658
Approve193951102024-03-09 4:18:59182 days ago1709957939IN
0x41c18296...c26745AC4
0 ETH0.0019937742.77469461
Approve193950322024-03-09 4:03:11182 days ago1709956991IN
0x41c18296...c26745AC4
0 ETH0.0021105445.28004401
Approve193950232024-03-09 4:01:23182 days ago1709956883IN
0x41c18296...c26745AC4
0 ETH0.0024360852.26414253
Approve193944382024-03-09 2:03:59182 days ago1709949839IN
0x41c18296...c26745AC4
0 ETH0.0021876947.25155067
Approve193944302024-03-09 2:02:23182 days ago1709949743IN
0x41c18296...c26745AC4
0 ETH0.0018327839.53471008
Approve193943842024-03-09 1:53:11182 days ago1709949191IN
0x41c18296...c26745AC4
0 ETH0.0024257752.04299253
Approve193521332024-03-03 4:03:47188 days ago1709438627IN
0x41c18296...c26745AC4
0 ETH0.0020182943.35669368
Approve193520482024-03-03 3:46:47188 days ago1709437607IN
0x41c18296...c26745AC4
0 ETH0.0016403235.45651013
Approve192539272024-02-18 9:54:11201 days ago1708250051IN
0x41c18296...c26745AC4
0 ETH0.0010101521.67201391
Approve192242792024-02-14 5:59:23206 days ago1707890363IN
0x41c18296...c26745AC4
0 ETH0.0007422615.94517336
Approve191302052024-02-01 1:03:47219 days ago1706749427IN
0x41c18296...c26745AC4
0 ETH0.0012603127.07395329
Approve190874182024-01-26 1:10:59225 days ago1706231459IN
0x41c18296...c26745AC4
0 ETH0.0009632220.66515386
Approve190874162024-01-26 1:10:35225 days ago1706231435IN
0x41c18296...c26745AC4
0 ETH0.0009345220.04939118
Approve190643412024-01-22 19:28:35228 days ago1705951715IN
0x41c18296...c26745AC4
0 ETH0.0009144719.75656735
Approve189407502024-01-05 11:23:35245 days ago1704453815IN
0x41c18296...c26745AC4
0 ETH0.0007879716.9272151
Approve188894032023-12-29 6:17:23253 days ago1703830643IN
0x41c18296...c26745AC4
0 ETH0.0009401220.19561379
Approve187982352023-12-16 11:09:11265 days ago1702724951IN
0x41c18296...c26745AC4
0 ETH0.0017338337.19800159
Approve187871642023-12-14 21:50:11267 days ago1702590611IN
0x41c18296...c26745AC4
0 ETH0.0021456646.36773608
Transfer187871602023-12-14 21:49:23267 days ago1702590563IN
0x41c18296...c26745AC4
0 ETH0.0023443150.87156507
Approve186504422023-11-25 18:17:23286 days ago1700936243IN
0x41c18296...c26745AC4
0 ETH0.0012212726.20152107
Approve186095782023-11-20 0:58:59292 days ago1700441939IN
0x41c18296...c26745AC4
0 ETH0.0008378717.99915401
Approve185711272023-11-14 15:46:11297 days ago1699976771IN
0x41c18296...c26745AC4
0 ETH0.0025953756.08582597
Approve185701042023-11-14 12:20:47297 days ago1699964447IN
0x41c18296...c26745AC4
0 ETH0.0015118632.47760816
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Moontendo

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-10-23
*/

// SPDX-License-Identifier: Unlicensed

pragma solidity ^0.8.16;

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

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        return a + b;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return a - b;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        return a * b;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return a / b;
    }

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

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

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

abstract contract Ownable is Context {
    address internal _owner;

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

    constructor() {
        _owner = _msgSender();
        emit OwnershipTransferred(address(0), _owner);
    }

    function owner() public view virtual 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;
    }
}

interface IERC20Metadata is IERC20 {
    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function decimals() external view returns (uint8);
}

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

    mapping(address => uint256) private _balances;

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

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;

    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }

    function name() public view virtual override returns (string memory) {
        return _name;
    }

    function symbol() public view virtual override returns (string memory) {
        return _symbol;
    }

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

    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }

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

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

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

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

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

    function increaseAllowance(
        address spender,
        uint256 addedValue
    ) public virtual returns (bool) {
        _approve(
            _msgSender(),
            spender,
            _allowances[_msgSender()][spender].add(addedValue)
        );
        return true;
    }

    function decreaseAllowance(
        address spender,
        uint256 subtractedValue
    ) public virtual returns (bool) {
        _approve(
            _msgSender(),
            spender,
            _allowances[_msgSender()][spender].sub(
                subtractedValue,
                "ERC20: decreased allowance below zero"
            )
        );
        return true;
    }

    function _transfer(
        address sender,
        address recipient,
        uint256 amount
    ) internal virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        _beforeTokenTransfer(sender, recipient, amount);

        _balances[sender] = _balances[sender].sub(
            amount,
            "ERC20: transfer amount exceeds balance"
        );
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
    }

    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _beforeTokenTransfer(address(0), account, amount);

        _totalSupply = _totalSupply.add(amount);
        _balances[account] = _balances[account].add(amount);
        emit Transfer(address(0), account, amount);
    }

    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");

        _beforeTokenTransfer(account, address(0), amount);

        _balances[account] = _balances[account].sub(
            amount,
            "ERC20: burn amount exceeds balance"
        );
        _totalSupply = _totalSupply.sub(amount);
        emit Transfer(account, address(0), amount);
    }

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _beforeTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}
}

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

interface IUniswapV2Pair {
    
}

interface IUniswapV2Router01 {
    function factory() external pure returns (address);

    function WETH() external pure returns (address);
}

interface IUniswapV2Router02 is IUniswapV2Router01 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}

contract Moontendo is ERC20 {
    using SafeMath for uint256;

    mapping(address => bool) private _isExcludedFromFee;
    mapping(address => bool) private _isExcludedFromMaxWallet;

    address public marketingWallet;
    address public eventsWallet;
    address public developmentWallet;
    address public profitShareWallet;
    address constant burnAddress = 0x000000000000000000000000000000000000dEaD;

    uint256 public buyEventsFee = 10;
    uint256 public buyMarketingFee = 10;
    uint256 public buyDevelopmentFee = 25;
    uint256 public buyProfitShareFee = 15;

    uint256 public sellEventsFee = 10;
    uint256 public sellMarketingFee = 10;
    uint256 public sellDevelopmentFee = 25;
    uint256 public sellProfitShareFee = 15;

    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;
    uint256 public maxWalletBalance;
    bool public tradingEnabled = false;

    constructor() ERC20("Moontendo", "$COLOR") {
        marketingWallet = 0xaC29FAF385AfA88303989A3BFcE4148FF675c51e;
        eventsWallet = 0xFb931da2770067f35B4FaDb6a8f120E91Ba997f4;
        profitShareWallet = 0xBe3CD3d2C6C2Af3c09fCA75A9CD8b59F5eC78304;
        developmentWallet = 0x94b025202eE7511209806a44DEa69dbA7Fea9dCa;

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

        uniswapV2Router = _uniswapV2Router;

        _isExcludedFromFee[_msgSender()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[marketingWallet] = true;
        _isExcludedFromFee[developmentWallet] = true;
        _isExcludedFromFee[eventsWallet] = true;
        _isExcludedFromFee[profitShareWallet] = true;

        _isExcludedFromMaxWallet[owner()] = true;
        _isExcludedFromMaxWallet[address(this)] = true;
        _isExcludedFromMaxWallet[marketingWallet] = true;
        _isExcludedFromMaxWallet[developmentWallet] = true;
        _isExcludedFromMaxWallet[eventsWallet] = true;
        _isExcludedFromMaxWallet[profitShareWallet] = true;

        _mint(owner(), 1000000000 * 10 ** decimals());
        maxWalletBalance = (totalSupply() * 3) / 100;
    }

    function includeAndExcludeInWhitelist(
        address account,
        bool value
    ) public onlyOwner {
        _isExcludedFromFee[account] = value;
    }

    function includeAndExcludedFromMaxWallet(
        address account,
        bool value
    ) public onlyOwner {
        _isExcludedFromMaxWallet[account] = value;
    }

    function isExcludedFromFee(address account) public view returns (bool) {
        return _isExcludedFromFee[account];
    }

    function isExcludedFromMaxWallet(
        address account
    ) public view returns (bool) {
        return _isExcludedFromMaxWallet[account];
    }

    function setMaxWalletBalance(uint256 maxBalancePercent) external onlyOwner {
        maxWalletBalance = maxBalancePercent * 10 ** decimals();
    }

    function enableTrading() external onlyOwner {
        tradingEnabled = true;
    }

    function setSellFees(
        uint256 eventsFee,
        uint256 marketingFee,
        uint256 developmentFee,
        uint256 profitShareFee
    ) external onlyOwner {
        sellEventsFee = eventsFee;
        sellMarketingFee = marketingFee;
        sellDevelopmentFee = developmentFee;
        sellProfitShareFee = profitShareFee;
    }

    function setBuyFees(
        uint256 eventsFee,
        uint256 marketingFee,
        uint256 developmentFee,
        uint256 profitShareFee
    ) external onlyOwner {
        buyEventsFee = eventsFee;
        buyMarketingFee = marketingFee;
        buyDevelopmentFee = developmentFee;
        buyProfitShareFee = profitShareFee;
    }

    function setWallets(
        address marketing,
        address events,
        address development,
        address profitShare
    ) external onlyOwner {
        marketingWallet = marketing;
        eventsWallet = events;
        developmentWallet = development;
        profitShare = profitShare;
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal override {
        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() && !tradingEnabled) {
            require(tradingEnabled, "ERC20: trading is not enabled yet");
        }

        if (
            from != owner() &&
            to != address(this) &&
            to != burnAddress &&
            to != uniswapV2Pair
        ) {
            uint256 currentBalance = balanceOf(to);
            require(
                _isExcludedFromMaxWallet[to] ||
                    (currentBalance + amount <= maxWalletBalance),
                "ERC20: Reached Max wallet holding limit."
            );
        }

        bool takeFee = true;
        if (_isExcludedFromFee[from] || _isExcludedFromFee[to]) {
            super._transfer(from, to, amount);
            takeFee = false;
        } else {
            if (from == uniswapV2Pair) {
                uint256 eventTokens = amount.mul(buyEventsFee).div(1000);
                uint256 marketingTokens = amount.mul(buyMarketingFee).div(1000);
                uint256 developmentTokens = amount.mul(buyDevelopmentFee).div(
                    1000
                );
                uint256 profitShareTokens = amount.mul(buyProfitShareFee).div(
                    1000
                );
                amount = amount.sub(
                    eventTokens.add(marketingTokens).add(developmentTokens).add(
                        profitShareTokens
                    )
                );
                super._transfer(from, eventsWallet, eventTokens);
                super._transfer(from, marketingWallet, marketingTokens);
                super._transfer(from, developmentWallet, developmentTokens);
                super._transfer(from, profitShareWallet, profitShareTokens);
                super._transfer(from, to, amount);
            } else if (to == uniswapV2Pair) {
                uint256 eventTokens = amount.mul(sellEventsFee).div(1000);
                uint256 marketingTokens = amount.mul(sellMarketingFee).div(
                    1000
                );
                uint256 developmentTokens = amount.mul(sellDevelopmentFee).div(
                    1000
                );
                uint256 profitShareTokens = amount.mul(sellProfitShareFee).div(
                    1000
                );
                amount = amount.sub(
                    eventTokens.add(marketingTokens).add(developmentTokens).add(
                        profitShareTokens
                    )
                );
                super._transfer(from, eventsWallet, eventTokens);
                super._transfer(from, marketingWallet, marketingTokens);
                super._transfer(from, developmentWallet, developmentTokens);
                super._transfer(from, profitShareWallet, profitShareTokens);
                super._transfer(from, to, amount);
            } else {
                super._transfer(from, to, amount);
            }
        }
    }

    function airdrop(
        address[] memory wallets,
        uint256[] memory amounts
    ) external onlyOwner {
        require(
            wallets.length == amounts.length,
            "ERC20: Arrays must be the same length"
        );
        require(
            wallets.length <= 200,
            "ERC20: 200 wallets per txn is allowed due to gas limits"
        );
        for (uint i = 0; i < wallets.length; i++) {
            address wallet = wallets[i];
            uint256 amount = amounts[i] * 10 ** decimals();
            transfer(wallet, amount);
        }
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"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":[{"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":[{"internalType":"address[]","name":"wallets","type":"address[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"airdrop","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":"buyDevelopmentFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyEventsFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyProfitShareFee","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":"developmentWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"eventsWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"includeAndExcludeInWhitelist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"includeAndExcludedFromMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromMaxWallet","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletBalance","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":"profitShareWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellDevelopmentFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellEventsFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellProfitShareFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"eventsFee","type":"uint256"},{"internalType":"uint256","name":"marketingFee","type":"uint256"},{"internalType":"uint256","name":"developmentFee","type":"uint256"},{"internalType":"uint256","name":"profitShareFee","type":"uint256"}],"name":"setBuyFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxBalancePercent","type":"uint256"}],"name":"setMaxWalletBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"eventsFee","type":"uint256"},{"internalType":"uint256","name":"marketingFee","type":"uint256"},{"internalType":"uint256","name":"developmentFee","type":"uint256"},{"internalType":"uint256","name":"profitShareFee","type":"uint256"}],"name":"setSellFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"marketing","type":"address"},{"internalType":"address","name":"events","type":"address"},{"internalType":"address","name":"development","type":"address"},{"internalType":"address","name":"profitShare","type":"address"}],"name":"setWallets","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"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"}]

6080604052600a600c819055600d8190556019600e819055600f80805560108390556011929092556012556013556017805460ff191690553480156200004457600080fd5b50604051806040016040528060098152602001684d6f6f6e74656e646f60b81b815250604051806040016040528060068152602001651221a7a627a960d11b81525062000096620004bd60201b60201c565b600080546001600160a01b0319166001600160a01b039290921691821781556040517f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a36004620000eb838262000671565b506005620000fa828262000671565b5050600880546001600160a01b031990811673ac29faf385afa88303989a3bfce4148ff675c51e1790915560098054821673fb931da2770067f35b4fadb6a8f120e91ba997f4179055600b8054821673be3cd3d2c6c2af3c09fca75a9cd8b59f5ec78304179055600a80549091167394b025202ee7511209806a44dea69dba7fea9dca179055506040805163c45a015560e01b81529051737a250d5630b4cf539739df2c5dacb4c659f2488d91829163c45a0155916004808201926020929091908290030181865afa158015620001d5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001fb91906200073d565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000249573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200026f91906200073d565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002bd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002e391906200073d565b601580546001600160a01b03199081166001600160a01b039384161790915560148054909116918316919091179055600160066000620003203390565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526006909352818320805485166001908117909155600854821684528284208054861682179055600a54821684528284208054861682179055600954821684528284208054861682179055600b54909116835290822080549093168117909255600790620003c66000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526007909352818320805485166001908117909155600854821684528284208054861682179055600a54821684528284208054861682179055600954821684528284208054861682179055600b549091168352912080549092161790556200048e6200046a6000546001600160a01b031690565b620004786012600a62000882565b6200048890633b9aca0062000893565b620004c1565b60646200049a60035490565b620004a790600362000893565b620004b39190620008ad565b60165550620008e6565b3390565b6001600160a01b0382166200051c5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b6003546200052b9082620005b6565b6003556001600160a01b038216600090815260016020526040902054620005539082620005b6565b6001600160a01b0383166000818152600160205260408082209390935591519091907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90620005a59085815260200190565b60405180910390a35050565b505050565b6000620005c48284620008d0565b90505b92915050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620005f857607f821691505b6020821081036200061957634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620005b157600081815260208120601f850160051c81016020861015620006485750805b601f850160051c820191505b81811015620006695782815560010162000654565b505050505050565b81516001600160401b038111156200068d576200068d620005cd565b620006a5816200069e8454620005e3565b846200061f565b602080601f831160018114620006dd5760008415620006c45750858301515b600019600386901b1c1916600185901b17855562000669565b600085815260208120601f198616915b828110156200070e57888601518255948401946001909101908401620006ed565b50858210156200072d5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000602082840312156200075057600080fd5b81516001600160a01b03811681146200076857600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620007c6578160001904821115620007aa57620007aa6200076f565b80851615620007b857918102915b93841c93908002906200078a565b509250929050565b600082620007df57506001620005c7565b81620007ee57506000620005c7565b8160018114620008075760028114620008125762000832565b6001915050620005c7565b60ff8411156200082657620008266200076f565b50506001821b620005c7565b5060208310610133831016604e8410600b841016171562000857575081810a620005c7565b62000863838362000785565b80600019048211156200087a576200087a6200076f565b029392505050565b6000620005c460ff841683620007ce565b8082028115828204841417620005c757620005c76200076f565b600082620008cb57634e487b7160e01b600052601260045260246000fd5b500490565b80820180821115620005c757620005c76200076f565b6119c680620008f66000396000f3fe608060405234801561001057600080fd5b50600436106102485760003560e01c806370a082311161013b57806395d89b41116100b8578063b556a6401161007c578063b556a640146104e9578063bbde77c1146104fc578063c04a541414610505578063dd62ed3e14610518578063f2fde38b1461055157600080fd5b806395d89b41146104a9578063a457c2d7146104b1578063a9059cbb146104c4578063b2041411146104d7578063b42cdaba146104e057600080fd5b806383672f3e116100ff57806383672f3e146104615780638a8c523c146104745780638da5cb5b1461047c5780638e4d62af1461048d57806392136913146104a057600080fd5b806370a082311461040b57806370e0e62414610434578063715018a61461043d57806375f0a874146104455780637bce5a041461045857600080fd5b806339509351116101c95780635342acb41161018d5780635342acb41461037a57806367243482146103a65780636b9b44eb146103b95780636c5b2855146103cc5780636dd3d39f146103df57600080fd5b806339509351146103215780633a9e00de1461033457806348eb61b61461034757806349bd5a5e1461035a5780634ada218b1461036d57600080fd5b806318160ddd1161021057806318160ddd146102e557806318a94cf1146102ed57806323b872dd146102f657806326fb9e8514610309578063313ce5671461031257600080fd5b806306fdde031461024d578063095ea7b31461026b5780630caeb3551461028e5780631694505e146102a5578063178d9b8e146102d0575b600080fd5b610255610564565b6040516102629190611300565b60405180910390f35b61027e61027936600461136a565b6105f6565b6040519015158152602001610262565b61029760135481565b604051908152602001610262565b6014546102b8906001600160a01b031681565b6040516001600160a01b039091168152602001610262565b6102e36102de366004611394565b61060d565b005b600354610297565b61029760125481565b61027e6103043660046113c6565b610654565b610297600c5481565b60405160128152602001610262565b61027e61032f36600461136a565b6106bd565b6102e3610342366004611402565b6106f3565b6102e361035536600461141b565b610739565b6015546102b8906001600160a01b031681565b60175461027e9060ff1681565b61027e610388366004611457565b6001600160a01b031660009081526006602052604090205460ff1690565b6102e36103b4366004611548565b61078e565b6009546102b8906001600160a01b031681565b6102e36103da366004611394565b610919565b61027e6103ed366004611457565b6001600160a01b031660009081526007602052604090205460ff1690565b610297610419366004611457565b6001600160a01b031660009081526001602052604090205490565b61029760105481565b6102e3610957565b6008546102b8906001600160a01b031681565b610297600d5481565b6102e361046f366004611608565b6109cb565b6102e3610a35565b6000546001600160a01b03166102b8565b6102e361049b36600461141b565b610a6e565b61029760115481565b610255610ac3565b61027e6104bf36600461136a565b610ad2565b61027e6104d236600461136a565b610b21565b610297600e5481565b610297600f5481565b600b546102b8906001600160a01b031681565b61029760165481565b600a546102b8906001600160a01b031681565b61029761052636600461165c565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b6102e361055f366004611457565b610b2e565b6060600480546105739061168f565b80601f016020809104026020016040519081016040528092919081815260200182805461059f9061168f565b80156105ec5780601f106105c1576101008083540402835291602001916105ec565b820191906000526020600020905b8154815290600101906020018083116105cf57829003601f168201915b5050505050905090565b6000610603338484610c18565b5060015b92915050565b6000546001600160a01b031633146106405760405162461bcd60e51b8152600401610637906116c9565b60405180910390fd5b600c93909355600d91909155600e55600f55565b6000610661848484610d3d565b6106b384336106ae85604051806060016040528060288152602001611944602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190611191565b610c18565b5060019392505050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916106039185906106ae90866111bd565b6000546001600160a01b0316331461071d5760405162461bcd60e51b8152600401610637906116c9565b6107296012600a6117f8565b6107339082611807565b60165550565b6000546001600160a01b031633146107635760405162461bcd60e51b8152600401610637906116c9565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b6000546001600160a01b031633146107b85760405162461bcd60e51b8152600401610637906116c9565b80518251146108175760405162461bcd60e51b815260206004820152602560248201527f45524332303a20417272617973206d757374206265207468652073616d65206c6044820152640cadccee8d60db1b6064820152608401610637565b60c88251111561088f5760405162461bcd60e51b815260206004820152603760248201527f45524332303a203230302077616c6c657473207065722074786e20697320616c60448201527f6c6f7765642064756520746f20676173206c696d6974730000000000000000006064820152608401610637565b60005b82518110156109145760008382815181106108af576108af61181e565b6020026020010151905060006108c3601290565b6108ce90600a6117f8565b8484815181106108e0576108e061181e565b60200260200101516108f29190611807565b90506108fe8282610b21565b505050808061090c90611834565b915050610892565b505050565b6000546001600160a01b031633146109435760405162461bcd60e51b8152600401610637906116c9565b601093909355601191909155601255601355565b6000546001600160a01b031633146109815760405162461bcd60e51b8152600401610637906116c9565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146109f55760405162461bcd60e51b8152600401610637906116c9565b50600880546001600160a01b039485166001600160a01b0319918216179091556009805493851693821693909317909255600a8054919093169116179055565b6000546001600160a01b03163314610a5f5760405162461bcd60e51b8152600401610637906116c9565b6017805460ff19166001179055565b6000546001600160a01b03163314610a985760405162461bcd60e51b8152600401610637906116c9565b6001600160a01b03919091166000908152600660205260409020805460ff1916911515919091179055565b6060600580546105739061168f565b600061060333846106ae8560405180606001604052806025815260200161196c602591393360009081526002602090815260408083206001600160a01b038d1684529091529020549190611191565b6000610603338484610d3d565b6000546001600160a01b03163314610b585760405162461bcd60e51b8152600401610637906116c9565b6001600160a01b038116610bbd5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610637565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610c7a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610637565b6001600160a01b038216610cdb5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610637565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610d635760405162461bcd60e51b81526004016106379061184d565b6001600160a01b038216610d895760405162461bcd60e51b815260040161063790611892565b60008111610deb5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610637565b6000546001600160a01b03848116911614801590610e0c575060175460ff16155b15610e6d5760175460ff16610e6d5760405162461bcd60e51b815260206004820152602160248201527f45524332303a2074726164696e67206973206e6f7420656e61626c65642079656044820152601d60fa1b6064820152608401610637565b6000546001600160a01b03848116911614801590610e9457506001600160a01b0382163014155b8015610eab57506001600160a01b03821661dead14155b8015610ec557506015546001600160a01b03838116911614155b15610f67576001600160a01b03821660009081526001602090815260408083205460079092529091205460ff1680610f085750601654610f0583836118d5565b11155b610f655760405162461bcd60e51b815260206004820152602860248201527f45524332303a2052656163686564204d61782077616c6c657420686f6c64696e60448201526733903634b6b4ba1760c11b6064820152608401610637565b505b6001600160a01b03831660009081526006602052604090205460019060ff1680610fa957506001600160a01b03831660009081526006602052604090205460ff165b15610fc157610fb98484846111d0565b50600061118b565b6015546001600160a01b03908116908516036110f0576000610ffa6103e8610ff4600c54866112dc90919063ffffffff16565b906112e8565b905060006110196103e8610ff4600d54876112dc90919063ffffffff16565b905060006110386103e8610ff4600e54886112dc90919063ffffffff16565b905060006110576103e8610ff4600f54896112dc90919063ffffffff16565b90506110796110728261106c858189896111bd565b906111bd565b87906112f4565b6009549096506110949089906001600160a01b0316866111d0565b6008546110ac9089906001600160a01b0316856111d0565b600a546110c49089906001600160a01b0316846111d0565b600b546110dc9089906001600160a01b0316836111d0565b6110e78888886111d0565b5050505061118b565b6015546001600160a01b03908116908416036111805760006111236103e8610ff4601054866112dc90919063ffffffff16565b905060006111426103e8610ff4601154876112dc90919063ffffffff16565b905060006111616103e8610ff4601254886112dc90919063ffffffff16565b905060006110576103e8610ff4601354896112dc90919063ffffffff16565b61118b8484846111d0565b50505050565b600081848411156111b55760405162461bcd60e51b81526004016106379190611300565b505050900390565b60006111c982846118d5565b9392505050565b6001600160a01b0383166111f65760405162461bcd60e51b81526004016106379061184d565b6001600160a01b03821661121c5760405162461bcd60e51b815260040161063790611892565b6112598160405180606001604052806026815260200161191e602691396001600160a01b0386166000908152600160205260409020549190611191565b6001600160a01b03808516600090815260016020526040808220939093559084168152205461128890826111bd565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d309085815260200190565b60006111c98284611807565b60006111c982846118e8565b60006111c9828461190a565b600060208083528351808285015260005b8181101561132d57858101830151858201604001528201611311565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461136557600080fd5b919050565b6000806040838503121561137d57600080fd5b6113868361134e565b946020939093013593505050565b600080600080608085870312156113aa57600080fd5b5050823594602084013594506040840135936060013592509050565b6000806000606084860312156113db57600080fd5b6113e48461134e565b92506113f26020850161134e565b9150604084013590509250925092565b60006020828403121561141457600080fd5b5035919050565b6000806040838503121561142e57600080fd5b6114378361134e565b91506020830135801515811461144c57600080fd5b809150509250929050565b60006020828403121561146957600080fd5b6111c98261134e565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156114b1576114b1611472565b604052919050565b600067ffffffffffffffff8211156114d3576114d3611472565b5060051b60200190565b600082601f8301126114ee57600080fd5b813560206115036114fe836114b9565b611488565b82815260059290921b8401810191818101908684111561152257600080fd5b8286015b8481101561153d5780358352918301918301611526565b509695505050505050565b6000806040838503121561155b57600080fd5b823567ffffffffffffffff8082111561157357600080fd5b818501915085601f83011261158757600080fd5b813560206115976114fe836114b9565b82815260059290921b840181019181810190898411156115b657600080fd5b948201945b838610156115db576115cc8661134e565b825294820194908201906115bb565b965050860135925050808211156115f157600080fd5b506115fe858286016114dd565b9150509250929050565b6000806000806080858703121561161e57600080fd5b6116278561134e565b93506116356020860161134e565b92506116436040860161134e565b91506116516060860161134e565b905092959194509250565b6000806040838503121561166f57600080fd5b6116788361134e565b91506116866020840161134e565b90509250929050565b600181811c908216806116a357607f821691505b6020821081036116c357634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561174f578160001904821115611735576117356116fe565b8085161561174257918102915b93841c9390800290611719565b509250929050565b60008261176657506001610607565b8161177357506000610607565b81600181146117895760028114611793576117af565b6001915050610607565b60ff8411156117a4576117a46116fe565b50506001821b610607565b5060208310610133831016604e8410600b84101617156117d2575081810a610607565b6117dc8383611714565b80600019048211156117f0576117f06116fe565b029392505050565b60006111c960ff841683611757565b8082028115828204841417610607576106076116fe565b634e487b7160e01b600052603260045260246000fd5b600060018201611846576118466116fe565b5060010190565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b80820180821115610607576106076116fe565b60008261190557634e487b7160e01b600052601260045260246000fd5b500490565b81810381811115610607576106076116fe56fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220ce05305845aa4ab810140b1c4d0d84d780909436732bb167957aedea7b60dce364736f6c63430008130033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106102485760003560e01c806370a082311161013b57806395d89b41116100b8578063b556a6401161007c578063b556a640146104e9578063bbde77c1146104fc578063c04a541414610505578063dd62ed3e14610518578063f2fde38b1461055157600080fd5b806395d89b41146104a9578063a457c2d7146104b1578063a9059cbb146104c4578063b2041411146104d7578063b42cdaba146104e057600080fd5b806383672f3e116100ff57806383672f3e146104615780638a8c523c146104745780638da5cb5b1461047c5780638e4d62af1461048d57806392136913146104a057600080fd5b806370a082311461040b57806370e0e62414610434578063715018a61461043d57806375f0a874146104455780637bce5a041461045857600080fd5b806339509351116101c95780635342acb41161018d5780635342acb41461037a57806367243482146103a65780636b9b44eb146103b95780636c5b2855146103cc5780636dd3d39f146103df57600080fd5b806339509351146103215780633a9e00de1461033457806348eb61b61461034757806349bd5a5e1461035a5780634ada218b1461036d57600080fd5b806318160ddd1161021057806318160ddd146102e557806318a94cf1146102ed57806323b872dd146102f657806326fb9e8514610309578063313ce5671461031257600080fd5b806306fdde031461024d578063095ea7b31461026b5780630caeb3551461028e5780631694505e146102a5578063178d9b8e146102d0575b600080fd5b610255610564565b6040516102629190611300565b60405180910390f35b61027e61027936600461136a565b6105f6565b6040519015158152602001610262565b61029760135481565b604051908152602001610262565b6014546102b8906001600160a01b031681565b6040516001600160a01b039091168152602001610262565b6102e36102de366004611394565b61060d565b005b600354610297565b61029760125481565b61027e6103043660046113c6565b610654565b610297600c5481565b60405160128152602001610262565b61027e61032f36600461136a565b6106bd565b6102e3610342366004611402565b6106f3565b6102e361035536600461141b565b610739565b6015546102b8906001600160a01b031681565b60175461027e9060ff1681565b61027e610388366004611457565b6001600160a01b031660009081526006602052604090205460ff1690565b6102e36103b4366004611548565b61078e565b6009546102b8906001600160a01b031681565b6102e36103da366004611394565b610919565b61027e6103ed366004611457565b6001600160a01b031660009081526007602052604090205460ff1690565b610297610419366004611457565b6001600160a01b031660009081526001602052604090205490565b61029760105481565b6102e3610957565b6008546102b8906001600160a01b031681565b610297600d5481565b6102e361046f366004611608565b6109cb565b6102e3610a35565b6000546001600160a01b03166102b8565b6102e361049b36600461141b565b610a6e565b61029760115481565b610255610ac3565b61027e6104bf36600461136a565b610ad2565b61027e6104d236600461136a565b610b21565b610297600e5481565b610297600f5481565b600b546102b8906001600160a01b031681565b61029760165481565b600a546102b8906001600160a01b031681565b61029761052636600461165c565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b6102e361055f366004611457565b610b2e565b6060600480546105739061168f565b80601f016020809104026020016040519081016040528092919081815260200182805461059f9061168f565b80156105ec5780601f106105c1576101008083540402835291602001916105ec565b820191906000526020600020905b8154815290600101906020018083116105cf57829003601f168201915b5050505050905090565b6000610603338484610c18565b5060015b92915050565b6000546001600160a01b031633146106405760405162461bcd60e51b8152600401610637906116c9565b60405180910390fd5b600c93909355600d91909155600e55600f55565b6000610661848484610d3d565b6106b384336106ae85604051806060016040528060288152602001611944602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190611191565b610c18565b5060019392505050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916106039185906106ae90866111bd565b6000546001600160a01b0316331461071d5760405162461bcd60e51b8152600401610637906116c9565b6107296012600a6117f8565b6107339082611807565b60165550565b6000546001600160a01b031633146107635760405162461bcd60e51b8152600401610637906116c9565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b6000546001600160a01b031633146107b85760405162461bcd60e51b8152600401610637906116c9565b80518251146108175760405162461bcd60e51b815260206004820152602560248201527f45524332303a20417272617973206d757374206265207468652073616d65206c6044820152640cadccee8d60db1b6064820152608401610637565b60c88251111561088f5760405162461bcd60e51b815260206004820152603760248201527f45524332303a203230302077616c6c657473207065722074786e20697320616c60448201527f6c6f7765642064756520746f20676173206c696d6974730000000000000000006064820152608401610637565b60005b82518110156109145760008382815181106108af576108af61181e565b6020026020010151905060006108c3601290565b6108ce90600a6117f8565b8484815181106108e0576108e061181e565b60200260200101516108f29190611807565b90506108fe8282610b21565b505050808061090c90611834565b915050610892565b505050565b6000546001600160a01b031633146109435760405162461bcd60e51b8152600401610637906116c9565b601093909355601191909155601255601355565b6000546001600160a01b031633146109815760405162461bcd60e51b8152600401610637906116c9565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146109f55760405162461bcd60e51b8152600401610637906116c9565b50600880546001600160a01b039485166001600160a01b0319918216179091556009805493851693821693909317909255600a8054919093169116179055565b6000546001600160a01b03163314610a5f5760405162461bcd60e51b8152600401610637906116c9565b6017805460ff19166001179055565b6000546001600160a01b03163314610a985760405162461bcd60e51b8152600401610637906116c9565b6001600160a01b03919091166000908152600660205260409020805460ff1916911515919091179055565b6060600580546105739061168f565b600061060333846106ae8560405180606001604052806025815260200161196c602591393360009081526002602090815260408083206001600160a01b038d1684529091529020549190611191565b6000610603338484610d3d565b6000546001600160a01b03163314610b585760405162461bcd60e51b8152600401610637906116c9565b6001600160a01b038116610bbd5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610637565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610c7a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610637565b6001600160a01b038216610cdb5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610637565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610d635760405162461bcd60e51b81526004016106379061184d565b6001600160a01b038216610d895760405162461bcd60e51b815260040161063790611892565b60008111610deb5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610637565b6000546001600160a01b03848116911614801590610e0c575060175460ff16155b15610e6d5760175460ff16610e6d5760405162461bcd60e51b815260206004820152602160248201527f45524332303a2074726164696e67206973206e6f7420656e61626c65642079656044820152601d60fa1b6064820152608401610637565b6000546001600160a01b03848116911614801590610e9457506001600160a01b0382163014155b8015610eab57506001600160a01b03821661dead14155b8015610ec557506015546001600160a01b03838116911614155b15610f67576001600160a01b03821660009081526001602090815260408083205460079092529091205460ff1680610f085750601654610f0583836118d5565b11155b610f655760405162461bcd60e51b815260206004820152602860248201527f45524332303a2052656163686564204d61782077616c6c657420686f6c64696e60448201526733903634b6b4ba1760c11b6064820152608401610637565b505b6001600160a01b03831660009081526006602052604090205460019060ff1680610fa957506001600160a01b03831660009081526006602052604090205460ff165b15610fc157610fb98484846111d0565b50600061118b565b6015546001600160a01b03908116908516036110f0576000610ffa6103e8610ff4600c54866112dc90919063ffffffff16565b906112e8565b905060006110196103e8610ff4600d54876112dc90919063ffffffff16565b905060006110386103e8610ff4600e54886112dc90919063ffffffff16565b905060006110576103e8610ff4600f54896112dc90919063ffffffff16565b90506110796110728261106c858189896111bd565b906111bd565b87906112f4565b6009549096506110949089906001600160a01b0316866111d0565b6008546110ac9089906001600160a01b0316856111d0565b600a546110c49089906001600160a01b0316846111d0565b600b546110dc9089906001600160a01b0316836111d0565b6110e78888886111d0565b5050505061118b565b6015546001600160a01b03908116908416036111805760006111236103e8610ff4601054866112dc90919063ffffffff16565b905060006111426103e8610ff4601154876112dc90919063ffffffff16565b905060006111616103e8610ff4601254886112dc90919063ffffffff16565b905060006110576103e8610ff4601354896112dc90919063ffffffff16565b61118b8484846111d0565b50505050565b600081848411156111b55760405162461bcd60e51b81526004016106379190611300565b505050900390565b60006111c982846118d5565b9392505050565b6001600160a01b0383166111f65760405162461bcd60e51b81526004016106379061184d565b6001600160a01b03821661121c5760405162461bcd60e51b815260040161063790611892565b6112598160405180606001604052806026815260200161191e602691396001600160a01b0386166000908152600160205260409020549190611191565b6001600160a01b03808516600090815260016020526040808220939093559084168152205461128890826111bd565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d309085815260200190565b60006111c98284611807565b60006111c982846118e8565b60006111c9828461190a565b600060208083528351808285015260005b8181101561132d57858101830151858201604001528201611311565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461136557600080fd5b919050565b6000806040838503121561137d57600080fd5b6113868361134e565b946020939093013593505050565b600080600080608085870312156113aa57600080fd5b5050823594602084013594506040840135936060013592509050565b6000806000606084860312156113db57600080fd5b6113e48461134e565b92506113f26020850161134e565b9150604084013590509250925092565b60006020828403121561141457600080fd5b5035919050565b6000806040838503121561142e57600080fd5b6114378361134e565b91506020830135801515811461144c57600080fd5b809150509250929050565b60006020828403121561146957600080fd5b6111c98261134e565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156114b1576114b1611472565b604052919050565b600067ffffffffffffffff8211156114d3576114d3611472565b5060051b60200190565b600082601f8301126114ee57600080fd5b813560206115036114fe836114b9565b611488565b82815260059290921b8401810191818101908684111561152257600080fd5b8286015b8481101561153d5780358352918301918301611526565b509695505050505050565b6000806040838503121561155b57600080fd5b823567ffffffffffffffff8082111561157357600080fd5b818501915085601f83011261158757600080fd5b813560206115976114fe836114b9565b82815260059290921b840181019181810190898411156115b657600080fd5b948201945b838610156115db576115cc8661134e565b825294820194908201906115bb565b965050860135925050808211156115f157600080fd5b506115fe858286016114dd565b9150509250929050565b6000806000806080858703121561161e57600080fd5b6116278561134e565b93506116356020860161134e565b92506116436040860161134e565b91506116516060860161134e565b905092959194509250565b6000806040838503121561166f57600080fd5b6116788361134e565b91506116866020840161134e565b90509250929050565b600181811c908216806116a357607f821691505b6020821081036116c357634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561174f578160001904821115611735576117356116fe565b8085161561174257918102915b93841c9390800290611719565b509250929050565b60008261176657506001610607565b8161177357506000610607565b81600181146117895760028114611793576117af565b6001915050610607565b60ff8411156117a4576117a46116fe565b50506001821b610607565b5060208310610133831016604e8410600b84101617156117d2575081810a610607565b6117dc8383611714565b80600019048211156117f0576117f06116fe565b029392505050565b60006111c960ff841683611757565b8082028115828204841417610607576106076116fe565b634e487b7160e01b600052603260045260246000fd5b600060018201611846576118466116fe565b5060010190565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b80820180821115610607576106076116fe565b60008261190557634e487b7160e01b600052601260045260246000fd5b500490565b81810381811115610607576106076116fe56fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220ce05305845aa4ab810140b1c4d0d84d780909436732bb167957aedea7b60dce364736f6c63430008130033

Deployed Bytecode Sourcemap

8551:8195:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3606:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4586:194;;;;;;:::i;:::-;;:::i;:::-;;;1169:14:1;;1162:22;1144:41;;1132:2;1117:18;4586:194:0;1004:187:1;9275:38:0;;;;;;;;;1342:25:1;;;1330:2;1315:18;9275:38:0;1196:177:1;9322:41:0;;;;;-1:-1:-1;;;;;9322:41:0;;;;;;-1:-1:-1;;;;;1568:32:1;;;1550:51;;1538:2;1523:18;9322:41:0;1378:229:1;12177:345:0;;;;;;:::i;:::-;;:::i;:::-;;3927:108;4015:12;;3927:108;;9230:38;;;;;;4788:454;;;;;;:::i;:::-;;:::i;8976:32::-;;;;;;3826:93;;;3909:2;2477:36:1;;2465:2;2450:18;3826:93:0;2335:184:1;5250:293:0;;;;;;:::i;:::-;;:::i;11570:149::-;;;;;;:::i;:::-;;:::i;11098:172::-;;;;;;:::i;:::-;;:::i;9370:28::-;;;;;-1:-1:-1;;;;;9370:28:0;;;9443:34;;;;;;;;;11278:124;;;;;;:::i;:::-;-1:-1:-1;;;;;11367:27:0;11343:4;11367:27;;;:18;:27;;;;;;;;;11278:124;16149:594;;;;;;:::i;:::-;;:::i;8782:27::-;;;;;-1:-1:-1;;;;;8782:27:0;;;11819:350;;;;;;:::i;:::-;;:::i;11410:152::-;;;;;;:::i;:::-;-1:-1:-1;;;;;11521:33:0;11497:4;11521:33;;;:24;:33;;;;;;;;;11410:152;4043:143;;;;;;:::i;:::-;-1:-1:-1;;;;;4160:18:0;4133:7;4160:18;;;:9;:18;;;;;;;4043:143;9147:33;;;;;;2491:148;;;:::i;8745:30::-;;;;;-1:-1:-1;;;;;8745:30:0;;;9015:35;;;;;;12530:315;;;;;;:::i;:::-;;:::i;11727:84::-;;;:::i;2268:87::-;2314:7;2341:6;-1:-1:-1;;;;;2341:6:0;2268:87;;10927:163;;;;;;:::i;:::-;;:::i;9187:36::-;;;;;;3714:104;;;:::i;5551:393::-;;;;;;:::i;:::-;;:::i;4194:200::-;;;;;;:::i;:::-;;:::i;9057:37::-;;;;;;9101;;;;;;8855:32;;;;;-1:-1:-1;;;;;8855:32:0;;;9405:31;;;;;;8816:32;;;;;-1:-1:-1;;;;;8816:32:0;;;4402:176;;;;;;:::i;:::-;-1:-1:-1;;;;;4543:18:0;;;4516:7;4543:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;4402:176;2647:281;;;;;;:::i;:::-;;:::i;3606:100::-;3660:13;3693:5;3686:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3606:100;:::o;4586:194::-;4694:4;4711:39;1932:10;4734:7;4743:6;4711:8;:39::i;:::-;-1:-1:-1;4768:4:0;4586:194;;;;;:::o;12177:345::-;2314:7;2341:6;-1:-1:-1;;;;;2341:6:0;1932:10;2403:23;2395:68;;;;-1:-1:-1;;;2395:68:0;;;;;;;:::i;:::-;;;;;;;;;12359:12:::1;:24:::0;;;;12394:15:::1;:30:::0;;;;12435:17:::1;:34:::0;12480:17:::1;:34:::0;12177:345::o;4788:454::-;4928:4;4945:36;4955:6;4963:9;4974:6;4945:9;:36::i;:::-;4992:220;5015:6;1932:10;5063:138;5119:6;5063:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;5063:19:0;;;;;;:11;:19;;;;;;;;1932:10;5063:33;;;;;;;;;;:37;:138::i;:::-;4992:8;:220::i;:::-;-1:-1:-1;5230:4:0;4788:454;;;;;:::o;5250:293::-;1932:10;5363:4;5452:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;5452:34:0;;;;;;;;;;5363:4;;5380:133;;5430:7;;5452:50;;5491:10;5452:38;:50::i;11570:149::-;2314:7;2341:6;-1:-1:-1;;;;;2341:6:0;1932:10;2403:23;2395:68;;;;-1:-1:-1;;;2395:68:0;;;;;;;:::i;:::-;11695:16:::1;3909:2:::0;11695::::1;:16;:::i;:::-;11675:36;::::0;:17;:36:::1;:::i;:::-;11656:16;:55:::0;-1:-1:-1;11570:149:0:o;11098:172::-;2314:7;2341:6;-1:-1:-1;;;;;2341:6:0;1932:10;2403:23;2395:68;;;;-1:-1:-1;;;2395:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;11221:33:0;;;::::1;;::::0;;;:24:::1;:33;::::0;;;;:41;;-1:-1:-1;;11221:41:0::1;::::0;::::1;;::::0;;;::::1;::::0;;11098:172::o;16149:594::-;2314:7;2341:6;-1:-1:-1;;;;;2341:6:0;1932:10;2403:23;2395:68;;;;-1:-1:-1;;;2395:68:0;;;;;;;:::i;:::-;16313:7:::1;:14;16295:7;:14;:32;16273:119;;;::::0;-1:-1:-1;;;16273:119:0;;9193:2:1;16273:119:0::1;::::0;::::1;9175:21:1::0;9232:2;9212:18;;;9205:30;9271:34;9251:18;;;9244:62;-1:-1:-1;;;9322:18:1;;;9315:35;9367:19;;16273:119:0::1;8991:401:1::0;16273:119:0::1;16443:3;16425:7;:14;:21;;16403:126;;;::::0;-1:-1:-1;;;16403:126:0;;9599:2:1;16403:126:0::1;::::0;::::1;9581:21:1::0;9638:2;9618:18;;;9611:30;9677:34;9657:18;;;9650:62;9748:25;9728:18;;;9721:53;9791:19;;16403:126:0::1;9397:419:1::0;16403:126:0::1;16545:6;16540:196;16561:7;:14;16557:1;:18;16540:196;;;16597:14;16614:7;16622:1;16614:10;;;;;;;;:::i;:::-;;;;;;;16597:27;;16639:14;16675:10;3909:2:::0;;3826:93;16675:10:::1;16669:16;::::0;:2:::1;:16;:::i;:::-;16656:7;16664:1;16656:10;;;;;;;;:::i;:::-;;;;;;;:29;;;;:::i;:::-;16639:46;;16700:24;16709:6;16717;16700:8;:24::i;:::-;;16582:154;;16577:3;;;;;:::i;:::-;;;;16540:196;;;;16149:594:::0;;:::o;11819:350::-;2314:7;2341:6;-1:-1:-1;;;;;2341:6:0;1932:10;2403:23;2395:68;;;;-1:-1:-1;;;2395:68:0;;;;;;;:::i;:::-;12002:13:::1;:25:::0;;;;12038:16:::1;:31:::0;;;;12080:18:::1;:35:::0;12126:18:::1;:35:::0;11819:350::o;2491:148::-;2314:7;2341:6;-1:-1:-1;;;;;2341:6:0;1932:10;2403:23;2395:68;;;;-1:-1:-1;;;2395:68:0;;;;;;;:::i;:::-;2598:1:::1;2582:6:::0;;2561:40:::1;::::0;-1:-1:-1;;;;;2582:6:0;;::::1;::::0;2561:40:::1;::::0;2598:1;;2561:40:::1;2629:1;2612:19:::0;;-1:-1:-1;;;;;;2612:19:0::1;::::0;;2491:148::o;12530:315::-;2314:7;2341:6;-1:-1:-1;;;;;2341:6:0;1932:10;2403:23;2395:68;;;;-1:-1:-1;;;2395:68:0;;;;;;;:::i;:::-;-1:-1:-1;12700:15:0::1;:27:::0;;-1:-1:-1;;;;;12700:27:0;;::::1;-1:-1:-1::0;;;;;;12700:27:0;;::::1;;::::0;;;12738:12:::1;:21:::0;;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;12770:17:::1;:31:::0;;;;;::::1;::::0;::::1;;::::0;;12530:315::o;11727:84::-;2314:7;2341:6;-1:-1:-1;;;;;2341:6:0;1932:10;2403:23;2395:68;;;;-1:-1:-1;;;2395:68:0;;;;;;;:::i;:::-;11782:14:::1;:21:::0;;-1:-1:-1;;11782:21:0::1;11799:4;11782:21;::::0;;11727:84::o;10927:163::-;2314:7;2341:6;-1:-1:-1;;;;;2341:6:0;1932:10;2403:23;2395:68;;;;-1:-1:-1;;;2395:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;11047:27:0;;;::::1;;::::0;;;:18:::1;:27;::::0;;;;:35;;-1:-1:-1;;11047:35:0::1;::::0;::::1;;::::0;;;::::1;::::0;;10927:163::o;3714:104::-;3770:13;3803:7;3796:14;;;;;:::i;5551:393::-;5669:4;5686:228;1932:10;5736:7;5758:145;5815:15;5758:145;;;;;;;;;;;;;;;;;1932:10;5758:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;5758:34:0;;;;;;;;;;;;:38;:145::i;4194:200::-;4305:4;4322:42;1932:10;4346:9;4357:6;4322:9;:42::i;2647:281::-;2314:7;2341:6;-1:-1:-1;;;;;2341:6:0;1932:10;2403:23;2395:68;;;;-1:-1:-1;;;2395:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2750:22:0;::::1;2728:110;;;::::0;-1:-1:-1;;;2728:110:0;;10295:2:1;2728:110:0::1;::::0;::::1;10277:21:1::0;10334:2;10314:18;;;10307:30;10373:34;10353:18;;;10346:62;-1:-1:-1;;;10424:18:1;;;10417:36;10470:19;;2728:110:0::1;10093:402:1::0;2728:110:0::1;2875:6;::::0;;2854:38:::1;::::0;-1:-1:-1;;;;;2854:38:0;;::::1;::::0;2875:6;::::1;::::0;2854:38:::1;::::0;::::1;2903:6;:17:::0;;-1:-1:-1;;;;;;2903:17:0::1;-1:-1:-1::0;;;;;2903:17:0;;;::::1;::::0;;;::::1;::::0;;2647:281::o;7419:380::-;-1:-1:-1;;;;;7555:19:0;;7547:68;;;;-1:-1:-1;;;7547:68:0;;10702:2:1;7547:68:0;;;10684:21:1;10741:2;10721:18;;;10714:30;10780:34;10760:18;;;10753:62;-1:-1:-1;;;10831:18:1;;;10824:34;10875:19;;7547:68:0;10500:400:1;7547:68:0;-1:-1:-1;;;;;7634:21:0;;7626:68;;;;-1:-1:-1;;;7626:68:0;;11107:2:1;7626:68:0;;;11089:21:1;11146:2;11126:18;;;11119:30;11185:34;11165:18;;;11158:62;-1:-1:-1;;;11236:18:1;;;11229:32;11278:19;;7626:68:0;10905:398:1;7626:68:0;-1:-1:-1;;;;;7707:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7759:32;;1342:25:1;;;7759:32:0;;1315:18:1;7759:32:0;;;;;;;;7419:380;;;:::o;12853:3288::-;-1:-1:-1;;;;;12985:18:0;;12977:68;;;;-1:-1:-1;;;12977:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;13064:16:0;;13056:64;;;;-1:-1:-1;;;13056:64:0;;;;;;;:::i;:::-;13148:1;13139:6;:10;13131:64;;;;-1:-1:-1;;;13131:64:0;;12320:2:1;13131:64:0;;;12302:21:1;12359:2;12339:18;;;12332:30;12398:34;12378:18;;;12371:62;-1:-1:-1;;;12449:18:1;;;12442:39;12498:19;;13131:64:0;12118:405:1;13131:64:0;2314:7;2341:6;-1:-1:-1;;;;;13212:15:0;;;2341:6;;13212:15;;;;:34;;-1:-1:-1;13232:14:0;;;;13231:15;13212:34;13208:127;;;13271:14;;;;13263:60;;;;-1:-1:-1;;;13263:60:0;;12730:2:1;13263:60:0;;;12712:21:1;12769:2;12749:18;;;12742:30;12808:34;12788:18;;;12781:62;-1:-1:-1;;;12859:18:1;;;12852:31;12900:19;;13263:60:0;12528:397:1;13263:60:0;2314:7;2341:6;-1:-1:-1;;;;;13365:15:0;;;2341:6;;13365:15;;;;:51;;-1:-1:-1;;;;;;13397:19:0;;13411:4;13397:19;;13365:51;:85;;;;-1:-1:-1;;;;;;13433:17:0;;8925:42;13433:17;;13365:85;:121;;;;-1:-1:-1;13473:13:0;;-1:-1:-1;;;;;13467:19:0;;;13473:13;;13467:19;;13365:121;13347:431;;;-1:-1:-1;;;;;4160:18:0;;13513:22;4160:18;;;:9;:18;;;;;;;;;13592:24;:28;;;;;;;;;;:98;;-1:-1:-1;13673:16:0;;13646:23;13663:6;13646:14;:23;:::i;:::-;:43;;13592:98;13566:200;;;;-1:-1:-1;;;13566:200:0;;13262:2:1;13566:200:0;;;13244:21:1;13301:2;13281:18;;;13274:30;13340:34;13320:18;;;13313:62;-1:-1:-1;;;13391:18:1;;;13384:38;13439:19;;13566:200:0;13060:404:1;13566:200:0;13498:280;13347:431;-1:-1:-1;;;;;13824:24:0;;13790:12;13824:24;;;:18;:24;;;;;;13805:4;;13824:24;;;:50;;-1:-1:-1;;;;;;13852:22:0;;;;;;:18;:22;;;;;;;;13824:50;13820:2314;;;13891:33;13907:4;13913:2;13917:6;13891:15;:33::i;:::-;-1:-1:-1;13949:5:0;13820:2314;;;13999:13;;-1:-1:-1;;;;;13999:13:0;;;13991:21;;;;13987:2136;;14033:19;14055:34;14084:4;14055:24;14066:12;;14055:6;:10;;:24;;;;:::i;:::-;:28;;:34::i;:::-;14033:56;;14108:23;14134:37;14166:4;14134:27;14145:15;;14134:6;:10;;:27;;;;:::i;:37::-;14108:63;;14190:25;14218:79;14274:4;14218:29;14229:17;;14218:6;:10;;:29;;;;:::i;:79::-;14190:107;;14316:25;14344:79;14400:4;14344:29;14355:17;;14344:6;:10;;:29;;;;:::i;:79::-;14316:107;-1:-1:-1;14451:178:0;14484:126;14316:107;14484:55;14521:17;14484:55;:11;14500:15;14484;:32::i;:::-;:36;;:55::i;:126::-;14451:6;;:10;:178::i;:::-;14670:12;;14442:187;;-1:-1:-1;14648:48:0;;14664:4;;-1:-1:-1;;;;;14670:12:0;14684:11;14648:15;:48::i;:::-;14737:15;;14715:55;;14731:4;;-1:-1:-1;;;;;14737:15:0;14754;14715;:55::i;:::-;14811:17;;14789:59;;14805:4;;-1:-1:-1;;;;;14811:17:0;14830;14789:15;:59::i;:::-;14889:17;;14867:59;;14883:4;;-1:-1:-1;;;;;14889:17:0;14908;14867:15;:59::i;:::-;14945:33;14961:4;14967:2;14971:6;14945:15;:33::i;:::-;14014:980;;;;13987:2136;;;15010:13;;-1:-1:-1;;;;;15010:13:0;;;15004:19;;;;15000:1123;;15044:19;15066:35;15096:4;15066:25;15077:13;;15066:6;:10;;:25;;;;:::i;:35::-;15044:57;;15120:23;15146:78;15201:4;15146:28;15157:16;;15146:6;:10;;:28;;;;:::i;:78::-;15120:104;;15243:25;15271:80;15328:4;15271:30;15282:18;;15271:6;:10;;:30;;;;:::i;:80::-;15243:108;;15370:25;15398:80;15455:4;15398:30;15409:18;;15398:6;:10;;:30;;;;:::i;15000:1123::-;16074:33;16090:4;16096:2;16100:6;16074:15;:33::i;:::-;12966:3175;12853:3288;;;:::o;1325:240::-;1445:7;1506:12;1498:6;;;;1490:29;;;;-1:-1:-1;;;1490:29:0;;;;;;;;:::i;:::-;-1:-1:-1;;;1541:5:0;;;1325:240::o;901:98::-;959:7;986:5;990:1;986;:5;:::i;:::-;979:12;901:98;-1:-1:-1;;;901:98:0:o;5952:610::-;-1:-1:-1;;;;;6092:20:0;;6084:70;;;;-1:-1:-1;;;6084:70:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;6173:23:0;;6165:71;;;;-1:-1:-1;;;6165:71:0;;;;;;;:::i;:::-;6329:108;6365:6;6329:108;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6329:17:0;;;;;;:9;:17;;;;;;;:108;:21;:108::i;:::-;-1:-1:-1;;;;;6309:17:0;;;;;;;:9;:17;;;;;;:128;;;;6471:20;;;;;;;:32;;6496:6;6471:24;:32::i;:::-;-1:-1:-1;;;;;6448:20:0;;;;;;;:9;:20;;;;;;;:55;;;;6519:35;;;;;;;;;;6547:6;1342:25:1;;1330:2;1315:18;;1196:177;1113:98:0;1171:7;1198:5;1202:1;1198;:5;:::i;1219:98::-;1277:7;1304:5;1308:1;1304;:5;:::i;1007:98::-;1065:7;1092:5;1096:1;1092;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:173::-;635:20;;-1:-1:-1;;;;;684:31:1;;674:42;;664:70;;730:1;727;720:12;664:70;567:173;;;:::o;745:254::-;813:6;821;874:2;862:9;853:7;849:23;845:32;842:52;;;890:1;887;880:12;842:52;913:29;932:9;913:29;:::i;:::-;903:39;989:2;974:18;;;;961:32;;-1:-1:-1;;;745:254:1:o;1612:385::-;1698:6;1706;1714;1722;1775:3;1763:9;1754:7;1750:23;1746:33;1743:53;;;1792:1;1789;1782:12;1743:53;-1:-1:-1;;1815:23:1;;;1885:2;1870:18;;1857:32;;-1:-1:-1;1936:2:1;1921:18;;1908:32;;1987:2;1972:18;1959:32;;-1:-1:-1;1612:385:1;-1:-1:-1;1612:385:1:o;2002:328::-;2079:6;2087;2095;2148:2;2136:9;2127:7;2123:23;2119:32;2116:52;;;2164:1;2161;2154:12;2116:52;2187:29;2206:9;2187:29;:::i;:::-;2177:39;;2235:38;2269:2;2258:9;2254:18;2235:38;:::i;:::-;2225:48;;2320:2;2309:9;2305:18;2292:32;2282:42;;2002:328;;;;;:::o;2524:180::-;2583:6;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;-1:-1:-1;2675:23:1;;2524:180;-1:-1:-1;2524:180:1:o;2709:347::-;2774:6;2782;2835:2;2823:9;2814:7;2810:23;2806:32;2803:52;;;2851:1;2848;2841:12;2803:52;2874:29;2893:9;2874:29;:::i;:::-;2864:39;;2953:2;2942:9;2938:18;2925:32;3000:5;2993:13;2986:21;2979:5;2976:32;2966:60;;3022:1;3019;3012:12;2966:60;3045:5;3035:15;;;2709:347;;;;;:::o;3269:186::-;3328:6;3381:2;3369:9;3360:7;3356:23;3352:32;3349:52;;;3397:1;3394;3387:12;3349:52;3420:29;3439:9;3420:29;:::i;3460:127::-;3521:10;3516:3;3512:20;3509:1;3502:31;3552:4;3549:1;3542:15;3576:4;3573:1;3566:15;3592:275;3663:2;3657:9;3728:2;3709:13;;-1:-1:-1;;3705:27:1;3693:40;;3763:18;3748:34;;3784:22;;;3745:62;3742:88;;;3810:18;;:::i;:::-;3846:2;3839:22;3592:275;;-1:-1:-1;3592:275:1:o;3872:183::-;3932:4;3965:18;3957:6;3954:30;3951:56;;;3987:18;;:::i;:::-;-1:-1:-1;4032:1:1;4028:14;4044:4;4024:25;;3872:183::o;4060:662::-;4114:5;4167:3;4160:4;4152:6;4148:17;4144:27;4134:55;;4185:1;4182;4175:12;4134:55;4221:6;4208:20;4247:4;4271:60;4287:43;4327:2;4287:43;:::i;:::-;4271:60;:::i;:::-;4365:15;;;4451:1;4447:10;;;;4435:23;;4431:32;;;4396:12;;;;4475:15;;;4472:35;;;4503:1;4500;4493:12;4472:35;4539:2;4531:6;4527:15;4551:142;4567:6;4562:3;4559:15;4551:142;;;4633:17;;4621:30;;4671:12;;;;4584;;4551:142;;;-1:-1:-1;4711:5:1;4060:662;-1:-1:-1;;;;;;4060:662:1:o;4727:1146::-;4845:6;4853;4906:2;4894:9;4885:7;4881:23;4877:32;4874:52;;;4922:1;4919;4912:12;4874:52;4962:9;4949:23;4991:18;5032:2;5024:6;5021:14;5018:34;;;5048:1;5045;5038:12;5018:34;5086:6;5075:9;5071:22;5061:32;;5131:7;5124:4;5120:2;5116:13;5112:27;5102:55;;5153:1;5150;5143:12;5102:55;5189:2;5176:16;5211:4;5235:60;5251:43;5291:2;5251:43;:::i;5235:60::-;5329:15;;;5411:1;5407:10;;;;5399:19;;5395:28;;;5360:12;;;;5435:19;;;5432:39;;;5467:1;5464;5457:12;5432:39;5491:11;;;;5511:148;5527:6;5522:3;5519:15;5511:148;;;5593:23;5612:3;5593:23;:::i;:::-;5581:36;;5544:12;;;;5637;;;;5511:148;;;5678:5;-1:-1:-1;;5721:18:1;;5708:32;;-1:-1:-1;;5752:16:1;;;5749:36;;;5781:1;5778;5771:12;5749:36;;5804:63;5859:7;5848:8;5837:9;5833:24;5804:63;:::i;:::-;5794:73;;;4727:1146;;;;;:::o;5878:409::-;5964:6;5972;5980;5988;6041:3;6029:9;6020:7;6016:23;6012:33;6009:53;;;6058:1;6055;6048:12;6009:53;6081:29;6100:9;6081:29;:::i;:::-;6071:39;;6129:38;6163:2;6152:9;6148:18;6129:38;:::i;:::-;6119:48;;6186:38;6220:2;6209:9;6205:18;6186:38;:::i;:::-;6176:48;;6243:38;6277:2;6266:9;6262:18;6243:38;:::i;:::-;6233:48;;5878:409;;;;;;;:::o;6292:260::-;6360:6;6368;6421:2;6409:9;6400:7;6396:23;6392:32;6389:52;;;6437:1;6434;6427:12;6389:52;6460:29;6479:9;6460:29;:::i;:::-;6450:39;;6508:38;6542:2;6531:9;6527:18;6508:38;:::i;:::-;6498:48;;6292:260;;;;;:::o;6557:380::-;6636:1;6632:12;;;;6679;;;6700:61;;6754:4;6746:6;6742:17;6732:27;;6700:61;6807:2;6799:6;6796:14;6776:18;6773:38;6770:161;;6853:10;6848:3;6844:20;6841:1;6834:31;6888:4;6885:1;6878:15;6916:4;6913:1;6906:15;6770:161;;6557:380;;;:::o;6942:356::-;7144:2;7126:21;;;7163:18;;;7156:30;7222:34;7217:2;7202:18;;7195:62;7289:2;7274:18;;6942:356::o;7303:127::-;7364:10;7359:3;7355:20;7352:1;7345:31;7395:4;7392:1;7385:15;7419:4;7416:1;7409:15;7435:422;7524:1;7567:5;7524:1;7581:270;7602:7;7592:8;7589:21;7581:270;;;7661:4;7657:1;7653:6;7649:17;7643:4;7640:27;7637:53;;;7670:18;;:::i;:::-;7720:7;7710:8;7706:22;7703:55;;;7740:16;;;;7703:55;7819:22;;;;7779:15;;;;7581:270;;;7585:3;7435:422;;;;;:::o;7862:806::-;7911:5;7941:8;7931:80;;-1:-1:-1;7982:1:1;7996:5;;7931:80;8030:4;8020:76;;-1:-1:-1;8067:1:1;8081:5;;8020:76;8112:4;8130:1;8125:59;;;;8198:1;8193:130;;;;8105:218;;8125:59;8155:1;8146:10;;8169:5;;;8193:130;8230:3;8220:8;8217:17;8214:43;;;8237:18;;:::i;:::-;-1:-1:-1;;8293:1:1;8279:16;;8308:5;;8105:218;;8407:2;8397:8;8394:16;8388:3;8382:4;8379:13;8375:36;8369:2;8359:8;8356:16;8351:2;8345:4;8342:12;8338:35;8335:77;8332:159;;;-1:-1:-1;8444:19:1;;;8476:5;;8332:159;8523:34;8548:8;8542:4;8523:34;:::i;:::-;8593:6;8589:1;8585:6;8581:19;8572:7;8569:32;8566:58;;;8604:18;;:::i;:::-;8642:20;;7862:806;-1:-1:-1;;;7862:806:1:o;8673:140::-;8731:5;8760:47;8801:4;8791:8;8787:19;8781:4;8760:47;:::i;8818:168::-;8891:9;;;8922;;8939:15;;;8933:22;;8919:37;8909:71;;8960:18;;:::i;9821:127::-;9882:10;9877:3;9873:20;9870:1;9863:31;9913:4;9910:1;9903:15;9937:4;9934:1;9927:15;9953:135;9992:3;10013:17;;;10010:43;;10033:18;;:::i;:::-;-1:-1:-1;10080:1:1;10069:13;;9953:135::o;11308:401::-;11510:2;11492:21;;;11549:2;11529:18;;;11522:30;11588:34;11583:2;11568:18;;11561:62;-1:-1:-1;;;11654:2:1;11639:18;;11632:35;11699:3;11684:19;;11308:401::o;11714:399::-;11916:2;11898:21;;;11955:2;11935:18;;;11928:30;11994:34;11989:2;11974:18;;11967:62;-1:-1:-1;;;12060:2:1;12045:18;;12038:33;12103:3;12088:19;;11714:399::o;12930:125::-;12995:9;;;13016:10;;;13013:36;;;13029:18;;:::i;13469:217::-;13509:1;13535;13525:132;;13579:10;13574:3;13570:20;13567:1;13560:31;13614:4;13611:1;13604:15;13642:4;13639:1;13632:15;13525:132;-1:-1:-1;13671:9:1;;13469:217::o;13691:128::-;13758:9;;;13779:11;;;13776:37;;;13793:18;;:::i

Swarm Source

ipfs://ce05305845aa4ab810140b1c4d0d84d780909436732bb167957aedea7b60dce3

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.