Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 330 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Transfer | 19829705 | 220 days ago | IN | 0 ETH | 0.00025001 | ||||
Approve | 18413415 | 419 days ago | IN | 0 ETH | 0.00079072 | ||||
Approve | 18287625 | 436 days ago | IN | 0 ETH | 0.00057423 | ||||
Approve | 18271619 | 438 days ago | IN | 0 ETH | 0.0008472 | ||||
Approve | 18271524 | 438 days ago | IN | 0 ETH | 0.00080216 | ||||
Approve | 18240293 | 443 days ago | IN | 0 ETH | 0.00039698 | ||||
Approve | 18239608 | 443 days ago | IN | 0 ETH | 0.00029173 | ||||
Approve | 18202061 | 448 days ago | IN | 0 ETH | 0.00031376 | ||||
Approve | 18084503 | 465 days ago | IN | 0 ETH | 0.00069027 | ||||
Approve | 18000610 | 476 days ago | IN | 0 ETH | 0.00038027 | ||||
Approve | 18000608 | 476 days ago | IN | 0 ETH | 0.00068514 | ||||
Approve | 17899379 | 491 days ago | IN | 0 ETH | 0.00109554 | ||||
Approve | 17867821 | 495 days ago | IN | 0 ETH | 0.00101535 | ||||
Approve | 17860336 | 496 days ago | IN | 0 ETH | 0.00062817 | ||||
Approve | 17825102 | 501 days ago | IN | 0 ETH | 0.00075794 | ||||
Approve | 17812139 | 503 days ago | IN | 0 ETH | 0.00077162 | ||||
Approve | 17798581 | 505 days ago | IN | 0 ETH | 0.00101495 | ||||
Approve | 17771845 | 508 days ago | IN | 0 ETH | 0.0025446 | ||||
Approve | 17734918 | 514 days ago | IN | 0 ETH | 0.00203139 | ||||
Approve | 17724851 | 515 days ago | IN | 0 ETH | 0.00102396 | ||||
Approve | 17697329 | 519 days ago | IN | 0 ETH | 0.0006009 | ||||
Approve | 17676693 | 522 days ago | IN | 0 ETH | 0.00072532 | ||||
Approve | 17672414 | 522 days ago | IN | 0 ETH | 0.09558098 | ||||
Transfer | 17665469 | 523 days ago | IN | 0 ETH | 0.00139952 | ||||
Approve | 17660442 | 524 days ago | IN | 0 ETH | 0.00059487 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
MemeBoxToken
Compiler Version
v0.8.18+commit.87f61d96
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-07-05 */ // File: @openzeppelin/contracts/utils/Context.sol // OpenZeppelin Contracts v4.4.1 (utils/Context.sol) pragma solidity ^0.8.0; /** * @dev Provides information about the current execution context, including the * sender of the transaction and its data. While these are generally available * via msg.sender and msg.data, they should not be accessed in such a direct * manner, since when dealing with meta-transactions the account sending and * paying for execution may not be the actual sender (as far as an application * is concerned). * * This contract is only required for intermediate, library-like contracts. */ abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } } // File: @openzeppelin/contracts/access/Ownable.sol // OpenZeppelin Contracts (last updated v4.7.0) (access/Ownable.sol) pragma solidity ^0.8.0; /** * @dev Contract module which provides a basic access control mechanism, where * there is an account (an owner) that can be granted exclusive access to * specific functions. * * By default, the owner account will be the one that deploys the contract. This * can later be changed with {transferOwnership}. * * This module is used through inheritance. It will make available the modifier * `onlyOwner`, which can be applied to your functions to restrict their use to * the owner. */ abstract 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() { _transferOwnership(_msgSender()); } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { _checkOwner(); _; } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if the sender is not the owner. */ function _checkOwner() internal view virtual { 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 { _transferOwnership(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"); _transferOwnership(newOwner); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Internal function without access restriction. */ function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } } // File: @openzeppelin/contracts/token/ERC20/IERC20.sol // OpenZeppelin Contracts (last updated v4.6.0) (token/ERC20/IERC20.sol) pragma solidity ^0.8.0; /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface IERC20 { /** * @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); /** * @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 `to`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address to, 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 `from` to `to` 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 from, address to, uint256 amount ) external returns (bool); } // File: @openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol // OpenZeppelin Contracts v4.4.1 (token/ERC20/extensions/IERC20Metadata.sol) pragma solidity ^0.8.0; /** * @dev Interface for the optional metadata functions from the ERC20 standard. * * _Available since v4.1._ */ interface IERC20Metadata is IERC20 { /** * @dev Returns the name of the token. */ function name() external view returns (string memory); /** * @dev Returns the symbol of the token. */ function symbol() external view returns (string memory); /** * @dev Returns the decimals places of the token. */ function decimals() external view returns (uint8); } // File: @openzeppelin/contracts/token/ERC20/ERC20.sol // OpenZeppelin Contracts (last updated v4.8.0) (token/ERC20/ERC20.sol) pragma solidity ^0.8.0; /** * @dev Implementation of the {IERC20} interface. * * This implementation is agnostic to the way tokens are created. This means * that a supply mechanism has to be added in a derived contract using {_mint}. * For a generic mechanism see {ERC20PresetMinterPauser}. * * TIP: For a detailed writeup see our guide * https://forum.openzeppelin.com/t/how-to-implement-erc20-supply-mechanisms/226[How * to implement supply mechanisms]. * * We have followed general OpenZeppelin Contracts guidelines: functions revert * instead returning `false` on failure. This behavior is nonetheless * conventional and does not conflict with the expectations of ERC20 * applications. * * Additionally, an {Approval} event is emitted on calls to {transferFrom}. * This allows applications to reconstruct the allowance for all accounts just * by listening to said events. Other implementations of the EIP may not emit * these events, as it isn't required by the specification. * * Finally, the non-standard {decreaseAllowance} and {increaseAllowance} * functions have been added to mitigate the well-known issues around setting * allowances. See {IERC20-approve}. */ contract ERC20 is Context, IERC20, IERC20Metadata { mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; uint256 private _totalSupply; string private _name; string private _symbol; /** * @dev Sets the values for {name} and {symbol}. * * The default value of {decimals} is 18. To select a different value for * {decimals} you should overload it. * * All two of these values are immutable: they can only be set once during * construction. */ constructor(string memory name_, string memory symbol_) { _name = name_; _symbol = symbol_; } /** * @dev Returns the name of the token. */ function name() public view virtual override returns (string memory) { return _name; } /** * @dev Returns the symbol of the token, usually a shorter version of the * name. */ function symbol() public view virtual override returns (string memory) { return _symbol; } /** * @dev Returns the number of decimals used to get its user representation. * For example, if `decimals` equals `2`, a balance of `505` tokens should * be displayed to a user as `5.05` (`505 / 10 ** 2`). * * Tokens usually opt for a value of 18, imitating the relationship between * Ether and Wei. This is the value {ERC20} uses, unless this function is * overridden; * * NOTE: This information is only used for _display_ purposes: it in * no way affects any of the arithmetic of the contract, including * {IERC20-balanceOf} and {IERC20-transfer}. */ function decimals() public view virtual override returns (uint8) { return 18; } /** * @dev See {IERC20-totalSupply}. */ function totalSupply() public view virtual override returns (uint256) { return _totalSupply; } /** * @dev See {IERC20-balanceOf}. */ function balanceOf(address account) public view virtual override returns (uint256) { return _balances[account]; } /** * @dev See {IERC20-transfer}. * * Requirements: * * - `to` cannot be the zero address. * - the caller must have a balance of at least `amount`. */ function transfer(address to, uint256 amount) public virtual override returns (bool) { address owner = _msgSender(); _transfer(owner, to, amount); return true; } /** * @dev See {IERC20-allowance}. */ function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } /** * @dev See {IERC20-approve}. * * NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on * `transferFrom`. This is semantically equivalent to an infinite approval. * * Requirements: * * - `spender` cannot be the zero address. */ function approve(address spender, uint256 amount) public virtual override returns (bool) { address owner = _msgSender(); _approve(owner, spender, amount); return true; } /** * @dev See {IERC20-transferFrom}. * * Emits an {Approval} event indicating the updated allowance. This is not * required by the EIP. See the note at the beginning of {ERC20}. * * NOTE: Does not update the allowance if the current allowance * is the maximum `uint256`. * * Requirements: * * - `from` and `to` cannot be the zero address. * - `from` must have a balance of at least `amount`. * - the caller must have allowance for ``from``'s tokens of at least * `amount`. */ function transferFrom( address from, address to, uint256 amount ) public virtual override returns (bool) { address spender = _msgSender(); _spendAllowance(from, spender, amount); _transfer(from, to, amount); return true; } /** * @dev Atomically increases the allowance granted to `spender` by the caller. * * This is an alternative to {approve} that can be used as a mitigation for * problems described in {IERC20-approve}. * * Emits an {Approval} event indicating the updated allowance. * * Requirements: * * - `spender` cannot be the zero address. */ function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { address owner = _msgSender(); _approve(owner, spender, allowance(owner, spender) + addedValue); return true; } /** * @dev Atomically decreases the allowance granted to `spender` by the caller. * * This is an alternative to {approve} that can be used as a mitigation for * problems described in {IERC20-approve}. * * Emits an {Approval} event indicating the updated allowance. * * Requirements: * * - `spender` cannot be the zero address. * - `spender` must have allowance for the caller of at least * `subtractedValue`. */ function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { address owner = _msgSender(); uint256 currentAllowance = allowance(owner, spender); require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero"); unchecked { _approve(owner, spender, currentAllowance - subtractedValue); } return true; } /** * @dev Moves `amount` of tokens from `from` to `to`. * * This internal function is equivalent to {transfer}, and can be used to * e.g. implement automatic token fees, slashing mechanisms, etc. * * Emits a {Transfer} event. * * Requirements: * * - `from` cannot be the zero address. * - `to` cannot be the zero address. * - `from` must have a balance of at least `amount`. */ function _transfer( address from, address to, uint256 amount ) internal virtual { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); _beforeTokenTransfer(from, to, amount); uint256 fromBalance = _balances[from]; require(fromBalance >= amount, "ERC20: transfer amount exceeds balance"); unchecked { _balances[from] = fromBalance - amount; // Overflow not possible: the sum of all balances is capped by totalSupply, and the sum is preserved by // decrementing then incrementing. _balances[to] += amount; } emit Transfer(from, to, amount); _afterTokenTransfer(from, to, amount); } /** @dev Creates `amount` tokens and assigns them to `account`, increasing * the total supply. * * Emits a {Transfer} event with `from` set to the zero address. * * Requirements: * * - `account` cannot be the zero address. */ function _mint(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: mint to the zero address"); _beforeTokenTransfer(address(0), account, amount); _totalSupply += amount; unchecked { // Overflow not possible: balance + amount is at most totalSupply + amount, which is checked above. _balances[account] += amount; } emit Transfer(address(0), account, amount); _afterTokenTransfer(address(0), account, amount); } /** * @dev Destroys `amount` tokens from `account`, reducing the * total supply. * * Emits a {Transfer} event with `to` set to the zero address. * * Requirements: * * - `account` cannot be the zero address. * - `account` must have at least `amount` tokens. */ function _burn(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: burn from the zero address"); _beforeTokenTransfer(account, address(0), amount); uint256 accountBalance = _balances[account]; require(accountBalance >= amount, "ERC20: burn amount exceeds balance"); unchecked { _balances[account] = accountBalance - amount; // Overflow not possible: amount <= accountBalance <= totalSupply. _totalSupply -= amount; } emit Transfer(account, address(0), amount); _afterTokenTransfer(account, address(0), amount); } /** * @dev Sets `amount` as the allowance of `spender` over the `owner` s tokens. * * This internal function is equivalent to `approve`, and can be used to * e.g. set automatic allowances for certain subsystems, etc. * * Emits an {Approval} event. * * Requirements: * * - `owner` cannot be the zero address. * - `spender` cannot be the zero address. */ function _approve( address owner, address spender, uint256 amount ) internal virtual { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } /** * @dev Updates `owner` s allowance for `spender` based on spent `amount`. * * Does not update the allowance amount in case of infinite allowance. * Revert if not enough allowance is available. * * Might emit an {Approval} event. */ function _spendAllowance( address owner, address spender, uint256 amount ) internal virtual { uint256 currentAllowance = allowance(owner, spender); if (currentAllowance != type(uint256).max) { require(currentAllowance >= amount, "ERC20: insufficient allowance"); unchecked { _approve(owner, spender, currentAllowance - amount); } } } /** * @dev Hook that is called before any transfer of tokens. This includes * minting and burning. * * Calling conditions: * * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens * will be transferred to `to`. * - when `from` is zero, `amount` tokens will be minted for `to`. * - when `to` is zero, `amount` of ``from``'s tokens will be burned. * - `from` and `to` are never both zero. * * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]. */ function _beforeTokenTransfer( address from, address to, uint256 amount ) internal virtual {} /** * @dev Hook that is called after any transfer of tokens. This includes * minting and burning. * * Calling conditions: * * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens * has been transferred to `to`. * - when `from` is zero, `amount` tokens have been minted for `to`. * - when `to` is zero, `amount` of ``from``'s tokens have been burned. * - `from` and `to` are never both zero. * * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]. */ function _afterTokenTransfer( address from, address to, uint256 amount ) internal virtual {} } // File: contracts/MEMEBOX.sol pragma solidity ^0.8.18; contract MemeBoxToken is Ownable, ERC20 { uint256 public constant TOTAL_SUPPLY = 100 * (10 ** 12) * (10 ** 18); // Total 100 trillion MEMEBOX // Sniper bots and MEV protection mapping(address => bool) public bots; // AMM mapping(address => bool) public ammPairs; // Exclude from max transaction amount mapping(address => bool) public excludedFromMaxTransferAmount; // Max transaction amount, only applied in limited mode uint256 public maxTransferAmount; // Flags bool public swapEnabled; // Set to true when trading is enabled bool public limitedMode = true; // Set to false when it gets stable // Events event SetBot(address bot, bool isSet); event SetAmmPair(address pair, bool isPair); event SwapEnabled(); event LimitedModeDisabled(); event MaxTransferAmountUpdated(uint256 amount); constructor() ERC20("MemeBox", "MEMEBOX") { _mint(msg.sender, TOTAL_SUPPLY); } // Blacklist Sniper and MEV bots function setBot(address _bot, bool _isSet) external onlyOwner { bots[_bot] = _isSet; emit SetBot(_bot, _isSet); } // Enable swap function enableSwap() external onlyOwner { swapEnabled = true; emit SwapEnabled(); } // Disable limited mode function disableLimitedMode() external onlyOwner { limitedMode = false; emit LimitedModeDisabled(); } // Set AMM pair function setAmmPair(address _pair, bool _isPair) external onlyOwner { ammPairs[_pair] = _isPair; emit SetAmmPair(_pair, _isPair); } // Set max transfer amount function setMaxTransferAmount(uint256 _maxTransferAmount) external onlyOwner { maxTransferAmount = _maxTransferAmount; emit MaxTransferAmountUpdated(_maxTransferAmount); } // Exclude from max transfer amount function excludeFromMaxTransferAmount(address _account, bool _excluded) external onlyOwner { excludedFromMaxTransferAmount[_account] = _excluded; } // Override _transfer function _transfer(address from, address to, uint256 amount) internal override { require(!bots[from] && !bots[to], "Blacklisted bot"); // Only owner can transfer tokens before trading starts if (to != owner() && from != owner()) { require(swapEnabled, "Swap not enabled"); } if (limitedMode) { // Check max transaction amount if (!excludedFromMaxTransferAmount[to] && ammPairs[from]) { // On buy require(amount <= maxTransferAmount, "Buy amount exceeded"); } else if (ammPairs[to] && !excludedFromMaxTransferAmount[from]) { // On sell require(amount <= maxTransferAmount, "Sell amount exceeded"); } } super._transfer(from, to, amount); } // Burn MEMEBOX function burn(uint256 amount) external { _burn(msg.sender, amount); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"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":[],"name":"LimitedModeDisabled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"MaxTransferAmountUpdated","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":false,"internalType":"address","name":"pair","type":"address"},{"indexed":false,"internalType":"bool","name":"isPair","type":"bool"}],"name":"SetAmmPair","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"bot","type":"address"},{"indexed":false,"internalType":"bool","name":"isSet","type":"bool"}],"name":"SetBot","type":"event"},{"anonymous":false,"inputs":[],"name":"SwapEnabled","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":"TOTAL_SUPPLY","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"ammPairs","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"","type":"address"}],"name":"bots","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"disableLimitedMode","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"enableSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_account","type":"address"},{"internalType":"bool","name":"_excluded","type":"bool"}],"name":"excludeFromMaxTransferAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"excludedFromMaxTransferAmount","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"limitedMode","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTransferAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_pair","type":"address"},{"internalType":"bool","name":"_isPair","type":"bool"}],"name":"setAmmPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_bot","type":"address"},{"internalType":"bool","name":"_isSet","type":"bool"}],"name":"setBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxTransferAmount","type":"uint256"}],"name":"setMaxTransferAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040526001600a60016101000a81548160ff0219169083151502179055503480156200002c57600080fd5b506040518060400160405280600781526020017f4d656d65426f78000000000000000000000000000000000000000000000000008152506040518060400160405280600781526020017f4d454d45424f5800000000000000000000000000000000000000000000000000815250620000b9620000ad6200010560201b60201c565b6200010d60201b60201c565b8160049081620000ca9190620005c3565b508060059081620000dc9190620005c3565b505050620000ff336d04ee2d6d415b85acef8100000000620001d160201b60201c565b620007c5565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000243576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200023a906200070b565b60405180910390fd5b62000257600083836200033f60201b60201c565b80600360008282546200026b91906200075c565b9250508190555080600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516200031f9190620007a8565b60405180910390a36200033b600083836200034460201b60201c565b5050565b505050565b505050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620003cb57607f821691505b602082108103620003e157620003e062000383565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200044b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200040c565b6200045786836200040c565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620004a46200049e62000498846200046f565b62000479565b6200046f565b9050919050565b6000819050919050565b620004c08362000483565b620004d8620004cf82620004ab565b84845462000419565b825550505050565b600090565b620004ef620004e0565b620004fc818484620004b5565b505050565b5b81811015620005245762000518600082620004e5565b60018101905062000502565b5050565b601f82111562000573576200053d81620003e7565b6200054884620003fc565b8101602085101562000558578190505b620005706200056785620003fc565b83018262000501565b50505b505050565b600082821c905092915050565b6000620005986000198460080262000578565b1980831691505092915050565b6000620005b3838362000585565b9150826002028217905092915050565b620005ce8262000349565b67ffffffffffffffff811115620005ea57620005e962000354565b5b620005f68254620003b2565b6200060382828562000528565b600060209050601f8311600181146200063b576000841562000626578287015190505b620006328582620005a5565b865550620006a2565b601f1984166200064b86620003e7565b60005b8281101562000675578489015182556001820191506020850194506020810190506200064e565b8683101562000695578489015162000691601f89168262000585565b8355505b6001600288020188555050505b505050505050565b600082825260208201905092915050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6000620006f3601f83620006aa565b91506200070082620006bb565b602082019050919050565b600060208201905081810360008301526200072681620006e4565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000769826200046f565b915062000776836200046f565b92508282019050808211156200079157620007906200072d565b5b92915050565b620007a2816200046f565b82525050565b6000602082019050620007bf600083018462000797565b92915050565b6124af80620007d56000396000f3fe608060405234801561001057600080fd5b50600436106101c45760003560e01c8063715018a6116100f9578063a72905a211610097578063bfd7928411610071578063bfd79284146104e3578063dba851b014610513578063dd62ed3e14610531578063f2fde38b14610561576101c4565b8063a72905a214610465578063a9059cbb14610495578063a9e75723146104c5576101c4565b8063902d55a5116100d3578063902d55a5146103c957806395d89b41146103e75780639dc3fbaa14610405578063a457c2d714610435576101c4565b8063715018a6146103855780638bf554091461038f5780638da5cb5b146103ab576101c4565b8063342aa8b51161016657806339ab668d1161014057806339ab668d146102ff57806342966c681461031b5780636ddd17131461033757806370a0823114610355576101c4565b8063342aa8b5146102a9578063360ed68b146102c557806339509351146102cf576101c4565b806318160ddd116101a257806318160ddd1461023357806323b872dd146102515780632969144814610281578063313ce5671461028b576101c4565b806306fdde03146101c9578063095ea7b3146101e75780630a65692314610217575b600080fd5b6101d161057d565b6040516101de91906118ce565b60405180910390f35b61020160048036038101906101fc9190611989565b61060f565b60405161020e91906119e4565b60405180910390f35b610231600480360381019061022c9190611a2b565b610632565b005b61023b6106ce565b6040516102489190611a7a565b60405180910390f35b61026b60048036038101906102669190611a95565b6106d8565b60405161027891906119e4565b60405180910390f35b610289610707565b005b610293610758565b6040516102a09190611b04565b60405180910390f35b6102c360048036038101906102be9190611a2b565b610761565b005b6102cd6107fd565b005b6102e960048036038101906102e49190611989565b61084e565b6040516102f691906119e4565b60405180910390f35b61031960048036038101906103149190611a2b565b610885565b005b61033560048036038101906103309190611b1f565b6108e8565b005b61033f6108f5565b60405161034c91906119e4565b60405180910390f35b61036f600480360381019061036a9190611b4c565b610908565b60405161037c9190611a7a565b60405180910390f35b61038d610951565b005b6103a960048036038101906103a49190611b1f565b610965565b005b6103b36109ae565b6040516103c09190611b88565b60405180910390f35b6103d16109d7565b6040516103de9190611a7a565b60405180910390f35b6103ef6109e9565b6040516103fc91906118ce565b60405180910390f35b61041f600480360381019061041a9190611b4c565b610a7b565b60405161042c91906119e4565b60405180910390f35b61044f600480360381019061044a9190611989565b610a9b565b60405161045c91906119e4565b60405180910390f35b61047f600480360381019061047a9190611b4c565b610b12565b60405161048c91906119e4565b60405180910390f35b6104af60048036038101906104aa9190611989565b610b32565b6040516104bc91906119e4565b60405180910390f35b6104cd610b55565b6040516104da9190611a7a565b60405180910390f35b6104fd60048036038101906104f89190611b4c565b610b5b565b60405161050a91906119e4565b60405180910390f35b61051b610b7b565b60405161052891906119e4565b60405180910390f35b61054b60048036038101906105469190611ba3565b610b8e565b6040516105589190611a7a565b60405180910390f35b61057b60048036038101906105769190611b4c565b610c15565b005b60606004805461058c90611c12565b80601f01602080910402602001604051908101604052809291908181526020018280546105b890611c12565b80156106055780601f106105da57610100808354040283529160200191610605565b820191906000526020600020905b8154815290600101906020018083116105e857829003601f168201915b5050505050905090565b60008061061a610c98565b9050610627818585610ca0565b600191505092915050565b61063a610e69565b80600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507ffc3be6b1c4465a996923f9dede24a6ea35dac31b54675fec7eae02b78ed3fd3782826040516106c2929190611c43565b60405180910390a15050565b6000600354905090565b6000806106e3610c98565b90506106f0858285610ee7565b6106fb858585610f73565b60019150509392505050565b61070f610e69565b6001600a60006101000a81548160ff0219169083151502179055507f41c787961cb389554b90a8dbfb700790a3f278f50ba1d330c0b555d884789b5a60405160405180910390a1565b60006012905090565b610769610e69565b80600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f88e1fe32606c8b910fb44abf3ca1abc1953d6fc7bc7fbefb56d77f4fdee51d2882826040516107f1929190611c43565b60405180910390a15050565b610805610e69565b6000600a60016101000a81548160ff0219169083151502179055507f467397ece55e925b5472b81f602634f1967b8a1e5a97008575b84dd96f9f591160405160405180910390a1565b600080610859610c98565b905061087a81858561086b8589610b8e565b6108759190611c9b565b610ca0565b600191505092915050565b61088d610e69565b80600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6108f23382611328565b50565b600a60009054906101000a900460ff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610959610e69565b61096360006114f7565b565b61096d610e69565b806009819055507fb81a465c2b79d7b689b78d9aaf5a787dd386b73a952be0569f2fbc637aabb897816040516109a39190611a7a565b60405180910390a150565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6d04ee2d6d415b85acef810000000081565b6060600580546109f890611c12565b80601f0160208091040260200160405190810160405280929190818152602001828054610a2490611c12565b8015610a715780601f10610a4657610100808354040283529160200191610a71565b820191906000526020600020905b815481529060010190602001808311610a5457829003601f168201915b5050505050905090565b60086020528060005260406000206000915054906101000a900460ff1681565b600080610aa6610c98565b90506000610ab48286610b8e565b905083811015610af9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610af090611d41565b60405180910390fd5b610b068286868403610ca0565b60019250505092915050565b60076020528060005260406000206000915054906101000a900460ff1681565b600080610b3d610c98565b9050610b4a818585610f73565b600191505092915050565b60095481565b60066020528060005260406000206000915054906101000a900460ff1681565b600a60019054906101000a900460ff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610c1d610e69565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610c8c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c8390611dd3565b60405180910390fd5b610c95816114f7565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610d0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d0690611e65565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610d7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d7590611ef7565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610e5c9190611a7a565b60405180910390a3505050565b610e71610c98565b73ffffffffffffffffffffffffffffffffffffffff16610e8f6109ae565b73ffffffffffffffffffffffffffffffffffffffff1614610ee5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610edc90611f63565b60405180910390fd5b565b6000610ef38484610b8e565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610f6d5781811015610f5f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f5690611fcf565b60405180910390fd5b610f6c8484848403610ca0565b5b50505050565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156110175750600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b611056576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161104d9061203b565b60405180910390fd5b61105e6109ae565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141580156110cc575061109c6109ae565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561112157600a60009054906101000a900460ff16611120576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611117906120a7565b60405180910390fd5b5b600a60019054906101000a900460ff161561131857600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156111d95750600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561122857600954811115611223576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161121a90612113565b60405180910390fd5b611317565b600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156112cb5750600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561131657600954811115611315576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161130c9061217f565b60405180910390fd5b5b5b5b6113238383836115bb565b505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611397576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161138e90612211565b60405180910390fd5b6113a382600083611834565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508181101561142a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611421906122a3565b60405180910390fd5b818103600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600360008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516114de9190611a7a565b60405180910390a36114f283600084611839565b505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361162a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162190612335565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611699576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611690906123c7565b60405180910390fd5b6116a4838383611834565b6000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508181101561172b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161172290612459565b60405180910390fd5b818103600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161181b9190611a7a565b60405180910390a361182e848484611839565b50505050565b505050565b505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561187857808201518184015260208101905061185d565b60008484015250505050565b6000601f19601f8301169050919050565b60006118a08261183e565b6118aa8185611849565b93506118ba81856020860161185a565b6118c381611884565b840191505092915050565b600060208201905081810360008301526118e88184611895565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611920826118f5565b9050919050565b61193081611915565b811461193b57600080fd5b50565b60008135905061194d81611927565b92915050565b6000819050919050565b61196681611953565b811461197157600080fd5b50565b6000813590506119838161195d565b92915050565b600080604083850312156119a05761199f6118f0565b5b60006119ae8582860161193e565b92505060206119bf85828601611974565b9150509250929050565b60008115159050919050565b6119de816119c9565b82525050565b60006020820190506119f960008301846119d5565b92915050565b611a08816119c9565b8114611a1357600080fd5b50565b600081359050611a25816119ff565b92915050565b60008060408385031215611a4257611a416118f0565b5b6000611a508582860161193e565b9250506020611a6185828601611a16565b9150509250929050565b611a7481611953565b82525050565b6000602082019050611a8f6000830184611a6b565b92915050565b600080600060608486031215611aae57611aad6118f0565b5b6000611abc8682870161193e565b9350506020611acd8682870161193e565b9250506040611ade86828701611974565b9150509250925092565b600060ff82169050919050565b611afe81611ae8565b82525050565b6000602082019050611b196000830184611af5565b92915050565b600060208284031215611b3557611b346118f0565b5b6000611b4384828501611974565b91505092915050565b600060208284031215611b6257611b616118f0565b5b6000611b708482850161193e565b91505092915050565b611b8281611915565b82525050565b6000602082019050611b9d6000830184611b79565b92915050565b60008060408385031215611bba57611bb96118f0565b5b6000611bc88582860161193e565b9250506020611bd98582860161193e565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680611c2a57607f821691505b602082108103611c3d57611c3c611be3565b5b50919050565b6000604082019050611c586000830185611b79565b611c6560208301846119d5565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611ca682611953565b9150611cb183611953565b9250828201905080821115611cc957611cc8611c6c565b5b92915050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000611d2b602583611849565b9150611d3682611ccf565b604082019050919050565b60006020820190508181036000830152611d5a81611d1e565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000611dbd602683611849565b9150611dc882611d61565b604082019050919050565b60006020820190508181036000830152611dec81611db0565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000611e4f602483611849565b9150611e5a82611df3565b604082019050919050565b60006020820190508181036000830152611e7e81611e42565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000611ee1602283611849565b9150611eec82611e85565b604082019050919050565b60006020820190508181036000830152611f1081611ed4565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000611f4d602083611849565b9150611f5882611f17565b602082019050919050565b60006020820190508181036000830152611f7c81611f40565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000611fb9601d83611849565b9150611fc482611f83565b602082019050919050565b60006020820190508181036000830152611fe881611fac565b9050919050565b7f426c61636b6c697374656420626f740000000000000000000000000000000000600082015250565b6000612025600f83611849565b915061203082611fef565b602082019050919050565b6000602082019050818103600083015261205481612018565b9050919050565b7f53776170206e6f7420656e61626c656400000000000000000000000000000000600082015250565b6000612091601083611849565b915061209c8261205b565b602082019050919050565b600060208201905081810360008301526120c081612084565b9050919050565b7f42757920616d6f756e7420657863656564656400000000000000000000000000600082015250565b60006120fd601383611849565b9150612108826120c7565b602082019050919050565b6000602082019050818103600083015261212c816120f0565b9050919050565b7f53656c6c20616d6f756e74206578636565646564000000000000000000000000600082015250565b6000612169601483611849565b915061217482612133565b602082019050919050565b600060208201905081810360008301526121988161215c565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b60006121fb602183611849565b91506122068261219f565b604082019050919050565b6000602082019050818103600083015261222a816121ee565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b600061228d602283611849565b915061229882612231565b604082019050919050565b600060208201905081810360008301526122bc81612280565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061231f602583611849565b915061232a826122c3565b604082019050919050565b6000602082019050818103600083015261234e81612312565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006123b1602383611849565b91506123bc82612355565b604082019050919050565b600060208201905081810360008301526123e0816123a4565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000612443602683611849565b915061244e826123e7565b604082019050919050565b6000602082019050818103600083015261247281612436565b905091905056fea2646970667358221220c4083b02ece05c36655c8d2dca91188882a1a7c394e6f08080859a9081440eb064736f6c63430008120033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101c45760003560e01c8063715018a6116100f9578063a72905a211610097578063bfd7928411610071578063bfd79284146104e3578063dba851b014610513578063dd62ed3e14610531578063f2fde38b14610561576101c4565b8063a72905a214610465578063a9059cbb14610495578063a9e75723146104c5576101c4565b8063902d55a5116100d3578063902d55a5146103c957806395d89b41146103e75780639dc3fbaa14610405578063a457c2d714610435576101c4565b8063715018a6146103855780638bf554091461038f5780638da5cb5b146103ab576101c4565b8063342aa8b51161016657806339ab668d1161014057806339ab668d146102ff57806342966c681461031b5780636ddd17131461033757806370a0823114610355576101c4565b8063342aa8b5146102a9578063360ed68b146102c557806339509351146102cf576101c4565b806318160ddd116101a257806318160ddd1461023357806323b872dd146102515780632969144814610281578063313ce5671461028b576101c4565b806306fdde03146101c9578063095ea7b3146101e75780630a65692314610217575b600080fd5b6101d161057d565b6040516101de91906118ce565b60405180910390f35b61020160048036038101906101fc9190611989565b61060f565b60405161020e91906119e4565b60405180910390f35b610231600480360381019061022c9190611a2b565b610632565b005b61023b6106ce565b6040516102489190611a7a565b60405180910390f35b61026b60048036038101906102669190611a95565b6106d8565b60405161027891906119e4565b60405180910390f35b610289610707565b005b610293610758565b6040516102a09190611b04565b60405180910390f35b6102c360048036038101906102be9190611a2b565b610761565b005b6102cd6107fd565b005b6102e960048036038101906102e49190611989565b61084e565b6040516102f691906119e4565b60405180910390f35b61031960048036038101906103149190611a2b565b610885565b005b61033560048036038101906103309190611b1f565b6108e8565b005b61033f6108f5565b60405161034c91906119e4565b60405180910390f35b61036f600480360381019061036a9190611b4c565b610908565b60405161037c9190611a7a565b60405180910390f35b61038d610951565b005b6103a960048036038101906103a49190611b1f565b610965565b005b6103b36109ae565b6040516103c09190611b88565b60405180910390f35b6103d16109d7565b6040516103de9190611a7a565b60405180910390f35b6103ef6109e9565b6040516103fc91906118ce565b60405180910390f35b61041f600480360381019061041a9190611b4c565b610a7b565b60405161042c91906119e4565b60405180910390f35b61044f600480360381019061044a9190611989565b610a9b565b60405161045c91906119e4565b60405180910390f35b61047f600480360381019061047a9190611b4c565b610b12565b60405161048c91906119e4565b60405180910390f35b6104af60048036038101906104aa9190611989565b610b32565b6040516104bc91906119e4565b60405180910390f35b6104cd610b55565b6040516104da9190611a7a565b60405180910390f35b6104fd60048036038101906104f89190611b4c565b610b5b565b60405161050a91906119e4565b60405180910390f35b61051b610b7b565b60405161052891906119e4565b60405180910390f35b61054b60048036038101906105469190611ba3565b610b8e565b6040516105589190611a7a565b60405180910390f35b61057b60048036038101906105769190611b4c565b610c15565b005b60606004805461058c90611c12565b80601f01602080910402602001604051908101604052809291908181526020018280546105b890611c12565b80156106055780601f106105da57610100808354040283529160200191610605565b820191906000526020600020905b8154815290600101906020018083116105e857829003601f168201915b5050505050905090565b60008061061a610c98565b9050610627818585610ca0565b600191505092915050565b61063a610e69565b80600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507ffc3be6b1c4465a996923f9dede24a6ea35dac31b54675fec7eae02b78ed3fd3782826040516106c2929190611c43565b60405180910390a15050565b6000600354905090565b6000806106e3610c98565b90506106f0858285610ee7565b6106fb858585610f73565b60019150509392505050565b61070f610e69565b6001600a60006101000a81548160ff0219169083151502179055507f41c787961cb389554b90a8dbfb700790a3f278f50ba1d330c0b555d884789b5a60405160405180910390a1565b60006012905090565b610769610e69565b80600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f88e1fe32606c8b910fb44abf3ca1abc1953d6fc7bc7fbefb56d77f4fdee51d2882826040516107f1929190611c43565b60405180910390a15050565b610805610e69565b6000600a60016101000a81548160ff0219169083151502179055507f467397ece55e925b5472b81f602634f1967b8a1e5a97008575b84dd96f9f591160405160405180910390a1565b600080610859610c98565b905061087a81858561086b8589610b8e565b6108759190611c9b565b610ca0565b600191505092915050565b61088d610e69565b80600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6108f23382611328565b50565b600a60009054906101000a900460ff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610959610e69565b61096360006114f7565b565b61096d610e69565b806009819055507fb81a465c2b79d7b689b78d9aaf5a787dd386b73a952be0569f2fbc637aabb897816040516109a39190611a7a565b60405180910390a150565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6d04ee2d6d415b85acef810000000081565b6060600580546109f890611c12565b80601f0160208091040260200160405190810160405280929190818152602001828054610a2490611c12565b8015610a715780601f10610a4657610100808354040283529160200191610a71565b820191906000526020600020905b815481529060010190602001808311610a5457829003601f168201915b5050505050905090565b60086020528060005260406000206000915054906101000a900460ff1681565b600080610aa6610c98565b90506000610ab48286610b8e565b905083811015610af9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610af090611d41565b60405180910390fd5b610b068286868403610ca0565b60019250505092915050565b60076020528060005260406000206000915054906101000a900460ff1681565b600080610b3d610c98565b9050610b4a818585610f73565b600191505092915050565b60095481565b60066020528060005260406000206000915054906101000a900460ff1681565b600a60019054906101000a900460ff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610c1d610e69565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610c8c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c8390611dd3565b60405180910390fd5b610c95816114f7565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610d0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d0690611e65565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610d7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d7590611ef7565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610e5c9190611a7a565b60405180910390a3505050565b610e71610c98565b73ffffffffffffffffffffffffffffffffffffffff16610e8f6109ae565b73ffffffffffffffffffffffffffffffffffffffff1614610ee5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610edc90611f63565b60405180910390fd5b565b6000610ef38484610b8e565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610f6d5781811015610f5f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f5690611fcf565b60405180910390fd5b610f6c8484848403610ca0565b5b50505050565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156110175750600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b611056576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161104d9061203b565b60405180910390fd5b61105e6109ae565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141580156110cc575061109c6109ae565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561112157600a60009054906101000a900460ff16611120576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611117906120a7565b60405180910390fd5b5b600a60019054906101000a900460ff161561131857600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156111d95750600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561122857600954811115611223576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161121a90612113565b60405180910390fd5b611317565b600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156112cb5750600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561131657600954811115611315576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161130c9061217f565b60405180910390fd5b5b5b5b6113238383836115bb565b505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611397576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161138e90612211565b60405180910390fd5b6113a382600083611834565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508181101561142a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611421906122a3565b60405180910390fd5b818103600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600360008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516114de9190611a7a565b60405180910390a36114f283600084611839565b505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361162a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162190612335565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611699576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611690906123c7565b60405180910390fd5b6116a4838383611834565b6000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508181101561172b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161172290612459565b60405180910390fd5b818103600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161181b9190611a7a565b60405180910390a361182e848484611839565b50505050565b505050565b505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561187857808201518184015260208101905061185d565b60008484015250505050565b6000601f19601f8301169050919050565b60006118a08261183e565b6118aa8185611849565b93506118ba81856020860161185a565b6118c381611884565b840191505092915050565b600060208201905081810360008301526118e88184611895565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611920826118f5565b9050919050565b61193081611915565b811461193b57600080fd5b50565b60008135905061194d81611927565b92915050565b6000819050919050565b61196681611953565b811461197157600080fd5b50565b6000813590506119838161195d565b92915050565b600080604083850312156119a05761199f6118f0565b5b60006119ae8582860161193e565b92505060206119bf85828601611974565b9150509250929050565b60008115159050919050565b6119de816119c9565b82525050565b60006020820190506119f960008301846119d5565b92915050565b611a08816119c9565b8114611a1357600080fd5b50565b600081359050611a25816119ff565b92915050565b60008060408385031215611a4257611a416118f0565b5b6000611a508582860161193e565b9250506020611a6185828601611a16565b9150509250929050565b611a7481611953565b82525050565b6000602082019050611a8f6000830184611a6b565b92915050565b600080600060608486031215611aae57611aad6118f0565b5b6000611abc8682870161193e565b9350506020611acd8682870161193e565b9250506040611ade86828701611974565b9150509250925092565b600060ff82169050919050565b611afe81611ae8565b82525050565b6000602082019050611b196000830184611af5565b92915050565b600060208284031215611b3557611b346118f0565b5b6000611b4384828501611974565b91505092915050565b600060208284031215611b6257611b616118f0565b5b6000611b708482850161193e565b91505092915050565b611b8281611915565b82525050565b6000602082019050611b9d6000830184611b79565b92915050565b60008060408385031215611bba57611bb96118f0565b5b6000611bc88582860161193e565b9250506020611bd98582860161193e565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680611c2a57607f821691505b602082108103611c3d57611c3c611be3565b5b50919050565b6000604082019050611c586000830185611b79565b611c6560208301846119d5565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611ca682611953565b9150611cb183611953565b9250828201905080821115611cc957611cc8611c6c565b5b92915050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000611d2b602583611849565b9150611d3682611ccf565b604082019050919050565b60006020820190508181036000830152611d5a81611d1e565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000611dbd602683611849565b9150611dc882611d61565b604082019050919050565b60006020820190508181036000830152611dec81611db0565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000611e4f602483611849565b9150611e5a82611df3565b604082019050919050565b60006020820190508181036000830152611e7e81611e42565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000611ee1602283611849565b9150611eec82611e85565b604082019050919050565b60006020820190508181036000830152611f1081611ed4565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000611f4d602083611849565b9150611f5882611f17565b602082019050919050565b60006020820190508181036000830152611f7c81611f40565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000611fb9601d83611849565b9150611fc482611f83565b602082019050919050565b60006020820190508181036000830152611fe881611fac565b9050919050565b7f426c61636b6c697374656420626f740000000000000000000000000000000000600082015250565b6000612025600f83611849565b915061203082611fef565b602082019050919050565b6000602082019050818103600083015261205481612018565b9050919050565b7f53776170206e6f7420656e61626c656400000000000000000000000000000000600082015250565b6000612091601083611849565b915061209c8261205b565b602082019050919050565b600060208201905081810360008301526120c081612084565b9050919050565b7f42757920616d6f756e7420657863656564656400000000000000000000000000600082015250565b60006120fd601383611849565b9150612108826120c7565b602082019050919050565b6000602082019050818103600083015261212c816120f0565b9050919050565b7f53656c6c20616d6f756e74206578636565646564000000000000000000000000600082015250565b6000612169601483611849565b915061217482612133565b602082019050919050565b600060208201905081810360008301526121988161215c565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b60006121fb602183611849565b91506122068261219f565b604082019050919050565b6000602082019050818103600083015261222a816121ee565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b600061228d602283611849565b915061229882612231565b604082019050919050565b600060208201905081810360008301526122bc81612280565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061231f602583611849565b915061232a826122c3565b604082019050919050565b6000602082019050818103600083015261234e81612312565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006123b1602383611849565b91506123bc82612355565b604082019050919050565b600060208201905081810360008301526123e0816123a4565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000612443602683611849565b915061244e826123e7565b604082019050919050565b6000602082019050818103600083015261247281612436565b905091905056fea2646970667358221220c4083b02ece05c36655c8d2dca91188882a1a7c394e6f08080859a9081440eb064736f6c63430008120033
Deployed Bytecode Sourcemap
20607:2868:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9351:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11702:201;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;22019:146;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10471:108;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12483:295;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;21746:99;;;:::i;:::-;;10313:93;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;21594:128;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;21878:116;;;:::i;:::-;;13187:238;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;22432:155;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;23395:77;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;21114:23;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10642:127;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2776:103;;;:::i;:::-;;22201:186;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2128:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20652:68;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9570:104;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20936:61;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13928:436;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20847:40;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10975:193;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;21063:32;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20794:36;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;21181:30;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11231:151;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3034:201;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9351:100;9405:13;9438:5;9431:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9351:100;:::o;11702:201::-;11785:4;11802:13;11818:12;:10;:12::i;:::-;11802:28;;11841:32;11850:5;11857:7;11866:6;11841:8;:32::i;:::-;11891:4;11884:11;;;11702:201;;;;:::o;22019:146::-;2014:13;:11;:13::i;:::-;22112:7:::1;22094:8;:15;22103:5;22094:15;;;;;;;;;;;;;;;;:25;;;;;;;;;;;;;;;;;;22133:26;22144:5;22151:7;22133:26;;;;;;;:::i;:::-;;;;;;;;22019:146:::0;;:::o;10471:108::-;10532:7;10559:12;;10552:19;;10471:108;:::o;12483:295::-;12614:4;12631:15;12649:12;:10;:12::i;:::-;12631:30;;12672:38;12688:4;12694:7;12703:6;12672:15;:38::i;:::-;12721:27;12731:4;12737:2;12741:6;12721:9;:27::i;:::-;12766:4;12759:11;;;12483:295;;;;;:::o;21746:99::-;2014:13;:11;:13::i;:::-;21808:4:::1;21794:11;;:18;;;;;;;;;;;;;;;;;;21826:13;;;;;;;;;;21746:99::o:0;10313:93::-;10371:5;10396:2;10389:9;;10313:93;:::o;21594:128::-;2014:13;:11;:13::i;:::-;21676:6:::1;21663:4;:10;21668:4;21663:10;;;;;;;;;;;;;;;;:19;;;;;;;;;;;;;;;;;;21696:20;21703:4;21709:6;21696:20;;;;;;;:::i;:::-;;;;;;;;21594:128:::0;;:::o;21878:116::-;2014:13;:11;:13::i;:::-;21948:5:::1;21934:11;;:19;;;;;;;;;;;;;;;;;;21967:21;;;;;;;;;;21878:116::o:0;13187:238::-;13275:4;13292:13;13308:12;:10;:12::i;:::-;13292:28;;13331:64;13340:5;13347:7;13384:10;13356:25;13366:5;13373:7;13356:9;:25::i;:::-;:38;;;;:::i;:::-;13331:8;:64::i;:::-;13413:4;13406:11;;;13187:238;;;;:::o;22432:155::-;2014:13;:11;:13::i;:::-;22572:9:::1;22530:29;:39;22560:8;22530:39;;;;;;;;;;;;;;;;:51;;;;;;;;;;;;;;;;;;22432:155:::0;;:::o;23395:77::-;23441:25;23447:10;23459:6;23441:5;:25::i;:::-;23395:77;:::o;21114:23::-;;;;;;;;;;;;;:::o;10642:127::-;10716:7;10743:9;:18;10753:7;10743:18;;;;;;;;;;;;;;;;10736:25;;10642:127;;;:::o;2776:103::-;2014:13;:11;:13::i;:::-;2841:30:::1;2868:1;2841:18;:30::i;:::-;2776:103::o:0;22201:186::-;2014:13;:11;:13::i;:::-;22305:18:::1;22285:17;:38;;;;22337:44;22362:18;22337:44;;;;;;:::i;:::-;;;;;;;;22201:186:::0;:::o;2128:87::-;2174:7;2201:6;;;;;;;;;;;2194:13;;2128:87;:::o;20652:68::-;20691:29;20652:68;:::o;9570:104::-;9626:13;9659:7;9652:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9570:104;:::o;20936:61::-;;;;;;;;;;;;;;;;;;;;;;:::o;13928:436::-;14021:4;14038:13;14054:12;:10;:12::i;:::-;14038:28;;14077:24;14104:25;14114:5;14121:7;14104:9;:25::i;:::-;14077:52;;14168:15;14148:16;:35;;14140:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;14261:60;14270:5;14277:7;14305:15;14286:16;:34;14261:8;:60::i;:::-;14352:4;14345:11;;;;13928:436;;;;:::o;20847:40::-;;;;;;;;;;;;;;;;;;;;;;:::o;10975:193::-;11054:4;11071:13;11087:12;:10;:12::i;:::-;11071:28;;11110;11120:5;11127:2;11131:6;11110:9;:28::i;:::-;11156:4;11149:11;;;10975:193;;;;:::o;21063:32::-;;;;:::o;20794:36::-;;;;;;;;;;;;;;;;;;;;;;:::o;21181:30::-;;;;;;;;;;;;;:::o;11231:151::-;11320:7;11347:11;:18;11359:5;11347:18;;;;;;;;;;;;;;;:27;11366:7;11347:27;;;;;;;;;;;;;;;;11340:34;;11231:151;;;;:::o;3034:201::-;2014:13;:11;:13::i;:::-;3143:1:::1;3123:22;;:8;:22;;::::0;3115:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;3199:28;3218:8;3199:18;:28::i;:::-;3034:201:::0;:::o;679:98::-;732:7;759:10;752:17;;679:98;:::o;17955:380::-;18108:1;18091:19;;:5;:19;;;18083:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;18189:1;18170:21;;:7;:21;;;18162:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;18273:6;18243:11;:18;18255:5;18243:18;;;;;;;;;;;;;;;:27;18262:7;18243:27;;;;;;;;;;;;;;;:36;;;;18311:7;18295:32;;18304:5;18295:32;;;18320:6;18295:32;;;;;;:::i;:::-;;;;;;;;17955:380;;;:::o;2293:132::-;2368:12;:10;:12::i;:::-;2357:23;;:7;:5;:7::i;:::-;:23;;;2349:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;2293:132::o;18626:453::-;18761:24;18788:25;18798:5;18805:7;18788:9;:25::i;:::-;18761:52;;18848:17;18828:16;:37;18824:248;;18910:6;18890:16;:26;;18882:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;18994:51;19003:5;19010:7;19038:6;19019:16;:25;18994:8;:51::i;:::-;18824:248;18750:329;18626:453;;;:::o;22618:752::-;22713:4;:10;22718:4;22713:10;;;;;;;;;;;;;;;;;;;;;;;;;22712:11;:24;;;;;22728:4;:8;22733:2;22728:8;;;;;;;;;;;;;;;;;;;;;;;;;22727:9;22712:24;22704:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;22836:7;:5;:7::i;:::-;22830:13;;:2;:13;;;;:32;;;;;22855:7;:5;:7::i;:::-;22847:15;;:4;:15;;;;22830:32;22826:95;;;22881:11;;;;;;;;;;;22873:40;;;;;;;;;;;;:::i;:::-;;;;;;;;;22826:95;22933:11;;;;;;;;;;;22929:394;;;22999:29;:33;23029:2;22999:33;;;;;;;;;;;;;;;;;;;;;;;;;22998:34;:52;;;;;23036:8;:14;23045:4;23036:14;;;;;;;;;;;;;;;;;;;;;;;;;22998:52;22994:322;;;23100:17;;23090:6;:27;;23082:59;;;;;;;;;;;;:::i;:::-;;;;;;;;;22994:322;;;23161:8;:12;23170:2;23161:12;;;;;;;;;;;;;;;;;;;;;;;;;:52;;;;;23178:29;:35;23208:4;23178:35;;;;;;;;;;;;;;;;;;;;;;;;;23177:36;23161:52;23157:159;;;23264:17;;23254:6;:27;;23246:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;23157:159;22994:322;22929:394;23331:33;23347:4;23353:2;23357:6;23331:15;:33::i;:::-;22618:752;;;:::o;16842:675::-;16945:1;16926:21;;:7;:21;;;16918:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;16998:49;17019:7;17036:1;17040:6;16998:20;:49::i;:::-;17060:22;17085:9;:18;17095:7;17085:18;;;;;;;;;;;;;;;;17060:43;;17140:6;17122:14;:24;;17114:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;17259:6;17242:14;:23;17221:9;:18;17231:7;17221:18;;;;;;;;;;;;;;;:44;;;;17376:6;17360:12;;:22;;;;;;;;;;;17437:1;17411:37;;17420:7;17411:37;;;17441:6;17411:37;;;;;;:::i;:::-;;;;;;;;17461:48;17481:7;17498:1;17502:6;17461:19;:48::i;:::-;16907:610;16842:675;;:::o;3395:191::-;3469:16;3488:6;;;;;;;;;;;3469:25;;3514:8;3505:6;;:17;;;;;;;;;;;;;;;;;;3569:8;3538:40;;3559:8;3538:40;;;;;;;;;;;;3458:128;3395:191;:::o;14834:840::-;14981:1;14965:18;;:4;:18;;;14957:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;15058:1;15044:16;;:2;:16;;;15036:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;15113:38;15134:4;15140:2;15144:6;15113:20;:38::i;:::-;15164:19;15186:9;:15;15196:4;15186:15;;;;;;;;;;;;;;;;15164:37;;15235:6;15220:11;:21;;15212:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;15352:6;15338:11;:20;15320:9;:15;15330:4;15320:15;;;;;;;;;;;;;;;:38;;;;15555:6;15538:9;:13;15548:2;15538:13;;;;;;;;;;;;;;;;:23;;;;;;;;;;;15605:2;15590:26;;15599:4;15590:26;;;15609:6;15590:26;;;;;;:::i;:::-;;;;;;;;15629:37;15649:4;15655:2;15659:6;15629:19;:37::i;:::-;14946:728;14834:840;;;:::o;19679:125::-;;;;:::o;20408:124::-;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:116::-;3516:21;3531:5;3516:21;:::i;:::-;3509:5;3506:32;3496:60;;3552:1;3549;3542:12;3496:60;3446:116;:::o;3568:133::-;3611:5;3649:6;3636:20;3627:29;;3665:30;3689:5;3665:30;:::i;:::-;3568:133;;;;:::o;3707:468::-;3772:6;3780;3829:2;3817:9;3808:7;3804:23;3800:32;3797:119;;;3835:79;;:::i;:::-;3797:119;3955:1;3980:53;4025:7;4016:6;4005:9;4001:22;3980:53;:::i;:::-;3970:63;;3926:117;4082:2;4108:50;4150:7;4141:6;4130:9;4126:22;4108:50;:::i;:::-;4098:60;;4053:115;3707:468;;;;;:::o;4181:118::-;4268:24;4286:5;4268:24;:::i;:::-;4263:3;4256:37;4181:118;;:::o;4305:222::-;4398:4;4436:2;4425:9;4421:18;4413:26;;4449:71;4517:1;4506:9;4502:17;4493:6;4449:71;:::i;:::-;4305:222;;;;:::o;4533:619::-;4610:6;4618;4626;4675:2;4663:9;4654:7;4650:23;4646:32;4643:119;;;4681:79;;:::i;:::-;4643:119;4801:1;4826:53;4871:7;4862:6;4851:9;4847:22;4826:53;:::i;:::-;4816:63;;4772:117;4928:2;4954:53;4999:7;4990:6;4979:9;4975:22;4954:53;:::i;:::-;4944:63;;4899:118;5056:2;5082:53;5127:7;5118:6;5107:9;5103:22;5082:53;:::i;:::-;5072:63;;5027:118;4533:619;;;;;:::o;5158:86::-;5193:7;5233:4;5226:5;5222:16;5211:27;;5158:86;;;:::o;5250:112::-;5333:22;5349:5;5333:22;:::i;:::-;5328:3;5321:35;5250:112;;:::o;5368:214::-;5457:4;5495:2;5484:9;5480:18;5472:26;;5508:67;5572:1;5561:9;5557:17;5548:6;5508:67;:::i;:::-;5368:214;;;;:::o;5588:329::-;5647:6;5696:2;5684:9;5675:7;5671:23;5667:32;5664:119;;;5702:79;;:::i;:::-;5664:119;5822:1;5847:53;5892:7;5883:6;5872:9;5868:22;5847:53;:::i;:::-;5837:63;;5793:117;5588:329;;;;:::o;5923:::-;5982:6;6031:2;6019:9;6010:7;6006:23;6002:32;5999:119;;;6037:79;;:::i;:::-;5999:119;6157:1;6182:53;6227:7;6218:6;6207:9;6203:22;6182:53;:::i;:::-;6172:63;;6128:117;5923:329;;;;:::o;6258:118::-;6345:24;6363:5;6345:24;:::i;:::-;6340:3;6333:37;6258:118;;:::o;6382:222::-;6475:4;6513:2;6502:9;6498:18;6490:26;;6526:71;6594:1;6583:9;6579:17;6570:6;6526:71;:::i;:::-;6382:222;;;;:::o;6610:474::-;6678:6;6686;6735:2;6723:9;6714:7;6710:23;6706:32;6703:119;;;6741:79;;:::i;:::-;6703:119;6861:1;6886:53;6931:7;6922:6;6911:9;6907:22;6886:53;:::i;:::-;6876:63;;6832:117;6988:2;7014:53;7059:7;7050:6;7039:9;7035:22;7014:53;:::i;:::-;7004:63;;6959:118;6610:474;;;;;:::o;7090:180::-;7138:77;7135:1;7128:88;7235:4;7232:1;7225:15;7259:4;7256:1;7249:15;7276:320;7320:6;7357:1;7351:4;7347:12;7337:22;;7404:1;7398:4;7394:12;7425:18;7415:81;;7481:4;7473:6;7469:17;7459:27;;7415:81;7543:2;7535:6;7532:14;7512:18;7509:38;7506:84;;7562:18;;:::i;:::-;7506:84;7327:269;7276:320;;;:::o;7602:::-;7717:4;7755:2;7744:9;7740:18;7732:26;;7768:71;7836:1;7825:9;7821:17;7812:6;7768:71;:::i;:::-;7849:66;7911:2;7900:9;7896:18;7887:6;7849:66;:::i;:::-;7602:320;;;;;:::o;7928:180::-;7976:77;7973:1;7966:88;8073:4;8070:1;8063:15;8097:4;8094:1;8087:15;8114:191;8154:3;8173:20;8191:1;8173:20;:::i;:::-;8168:25;;8207:20;8225:1;8207:20;:::i;:::-;8202:25;;8250:1;8247;8243:9;8236:16;;8271:3;8268:1;8265:10;8262:36;;;8278:18;;:::i;:::-;8262:36;8114:191;;;;:::o;8311:224::-;8451:34;8447:1;8439:6;8435:14;8428:58;8520:7;8515:2;8507:6;8503:15;8496:32;8311:224;:::o;8541:366::-;8683:3;8704:67;8768:2;8763:3;8704:67;:::i;:::-;8697:74;;8780:93;8869:3;8780:93;:::i;:::-;8898:2;8893:3;8889:12;8882:19;;8541:366;;;:::o;8913:419::-;9079:4;9117:2;9106:9;9102:18;9094:26;;9166:9;9160:4;9156:20;9152:1;9141:9;9137:17;9130:47;9194:131;9320:4;9194:131;:::i;:::-;9186:139;;8913:419;;;:::o;9338:225::-;9478:34;9474:1;9466:6;9462:14;9455:58;9547:8;9542:2;9534:6;9530:15;9523:33;9338:225;:::o;9569:366::-;9711:3;9732:67;9796:2;9791:3;9732:67;:::i;:::-;9725:74;;9808:93;9897:3;9808:93;:::i;:::-;9926:2;9921:3;9917:12;9910:19;;9569:366;;;:::o;9941:419::-;10107:4;10145:2;10134:9;10130:18;10122:26;;10194:9;10188:4;10184:20;10180:1;10169:9;10165:17;10158:47;10222:131;10348:4;10222:131;:::i;:::-;10214:139;;9941:419;;;:::o;10366:223::-;10506:34;10502:1;10494:6;10490:14;10483:58;10575:6;10570:2;10562:6;10558:15;10551:31;10366:223;:::o;10595:366::-;10737:3;10758:67;10822:2;10817:3;10758:67;:::i;:::-;10751:74;;10834:93;10923:3;10834:93;:::i;:::-;10952:2;10947:3;10943:12;10936:19;;10595:366;;;:::o;10967:419::-;11133:4;11171:2;11160:9;11156:18;11148:26;;11220:9;11214:4;11210:20;11206:1;11195:9;11191:17;11184:47;11248:131;11374:4;11248:131;:::i;:::-;11240:139;;10967:419;;;:::o;11392:221::-;11532:34;11528:1;11520:6;11516:14;11509:58;11601:4;11596:2;11588:6;11584:15;11577:29;11392:221;:::o;11619:366::-;11761:3;11782:67;11846:2;11841:3;11782:67;:::i;:::-;11775:74;;11858:93;11947:3;11858:93;:::i;:::-;11976:2;11971:3;11967:12;11960:19;;11619:366;;;:::o;11991:419::-;12157:4;12195:2;12184:9;12180:18;12172:26;;12244:9;12238:4;12234:20;12230:1;12219:9;12215:17;12208:47;12272:131;12398:4;12272:131;:::i;:::-;12264:139;;11991:419;;;:::o;12416:182::-;12556:34;12552:1;12544:6;12540:14;12533:58;12416:182;:::o;12604:366::-;12746:3;12767:67;12831:2;12826:3;12767:67;:::i;:::-;12760:74;;12843:93;12932:3;12843:93;:::i;:::-;12961:2;12956:3;12952:12;12945:19;;12604:366;;;:::o;12976:419::-;13142:4;13180:2;13169:9;13165:18;13157:26;;13229:9;13223:4;13219:20;13215:1;13204:9;13200:17;13193:47;13257:131;13383:4;13257:131;:::i;:::-;13249:139;;12976:419;;;:::o;13401:179::-;13541:31;13537:1;13529:6;13525:14;13518:55;13401:179;:::o;13586:366::-;13728:3;13749:67;13813:2;13808:3;13749:67;:::i;:::-;13742:74;;13825:93;13914:3;13825:93;:::i;:::-;13943:2;13938:3;13934:12;13927:19;;13586:366;;;:::o;13958:419::-;14124:4;14162:2;14151:9;14147:18;14139:26;;14211:9;14205:4;14201:20;14197:1;14186:9;14182:17;14175:47;14239:131;14365:4;14239:131;:::i;:::-;14231:139;;13958:419;;;:::o;14383:165::-;14523:17;14519:1;14511:6;14507:14;14500:41;14383:165;:::o;14554:366::-;14696:3;14717:67;14781:2;14776:3;14717:67;:::i;:::-;14710:74;;14793:93;14882:3;14793:93;:::i;:::-;14911:2;14906:3;14902:12;14895:19;;14554:366;;;:::o;14926:419::-;15092:4;15130:2;15119:9;15115:18;15107:26;;15179:9;15173:4;15169:20;15165:1;15154:9;15150:17;15143:47;15207:131;15333:4;15207:131;:::i;:::-;15199:139;;14926:419;;;:::o;15351:166::-;15491:18;15487:1;15479:6;15475:14;15468:42;15351:166;:::o;15523:366::-;15665:3;15686:67;15750:2;15745:3;15686:67;:::i;:::-;15679:74;;15762:93;15851:3;15762:93;:::i;:::-;15880:2;15875:3;15871:12;15864:19;;15523:366;;;:::o;15895:419::-;16061:4;16099:2;16088:9;16084:18;16076:26;;16148:9;16142:4;16138:20;16134:1;16123:9;16119:17;16112:47;16176:131;16302:4;16176:131;:::i;:::-;16168:139;;15895:419;;;:::o;16320:169::-;16460:21;16456:1;16448:6;16444:14;16437:45;16320:169;:::o;16495:366::-;16637:3;16658:67;16722:2;16717:3;16658:67;:::i;:::-;16651:74;;16734:93;16823:3;16734:93;:::i;:::-;16852:2;16847:3;16843:12;16836:19;;16495:366;;;:::o;16867:419::-;17033:4;17071:2;17060:9;17056:18;17048:26;;17120:9;17114:4;17110:20;17106:1;17095:9;17091:17;17084:47;17148:131;17274:4;17148:131;:::i;:::-;17140:139;;16867:419;;;:::o;17292:170::-;17432:22;17428:1;17420:6;17416:14;17409:46;17292:170;:::o;17468:366::-;17610:3;17631:67;17695:2;17690:3;17631:67;:::i;:::-;17624:74;;17707:93;17796:3;17707:93;:::i;:::-;17825:2;17820:3;17816:12;17809:19;;17468:366;;;:::o;17840:419::-;18006:4;18044:2;18033:9;18029:18;18021:26;;18093:9;18087:4;18083:20;18079:1;18068:9;18064:17;18057:47;18121:131;18247:4;18121:131;:::i;:::-;18113:139;;17840:419;;;:::o;18265:220::-;18405:34;18401:1;18393:6;18389:14;18382:58;18474:3;18469:2;18461:6;18457:15;18450:28;18265:220;:::o;18491:366::-;18633:3;18654:67;18718:2;18713:3;18654:67;:::i;:::-;18647:74;;18730:93;18819:3;18730:93;:::i;:::-;18848:2;18843:3;18839:12;18832:19;;18491:366;;;:::o;18863:419::-;19029:4;19067:2;19056:9;19052:18;19044:26;;19116:9;19110:4;19106:20;19102:1;19091:9;19087:17;19080:47;19144:131;19270:4;19144:131;:::i;:::-;19136:139;;18863:419;;;:::o;19288:221::-;19428:34;19424:1;19416:6;19412:14;19405:58;19497:4;19492:2;19484:6;19480:15;19473:29;19288:221;:::o;19515:366::-;19657:3;19678:67;19742:2;19737:3;19678:67;:::i;:::-;19671:74;;19754:93;19843:3;19754:93;:::i;:::-;19872:2;19867:3;19863:12;19856:19;;19515:366;;;:::o;19887:419::-;20053:4;20091:2;20080:9;20076:18;20068:26;;20140:9;20134:4;20130:20;20126:1;20115:9;20111:17;20104:47;20168:131;20294:4;20168:131;:::i;:::-;20160:139;;19887:419;;;:::o;20312:224::-;20452:34;20448:1;20440:6;20436:14;20429:58;20521:7;20516:2;20508:6;20504:15;20497:32;20312:224;:::o;20542:366::-;20684:3;20705:67;20769:2;20764:3;20705:67;:::i;:::-;20698:74;;20781:93;20870:3;20781:93;:::i;:::-;20899:2;20894:3;20890:12;20883:19;;20542:366;;;:::o;20914:419::-;21080:4;21118:2;21107:9;21103:18;21095:26;;21167:9;21161:4;21157:20;21153:1;21142:9;21138:17;21131:47;21195:131;21321:4;21195:131;:::i;:::-;21187:139;;20914:419;;;:::o;21339:222::-;21479:34;21475:1;21467:6;21463:14;21456:58;21548:5;21543:2;21535:6;21531:15;21524:30;21339:222;:::o;21567:366::-;21709:3;21730:67;21794:2;21789:3;21730:67;:::i;:::-;21723:74;;21806:93;21895:3;21806:93;:::i;:::-;21924:2;21919:3;21915:12;21908:19;;21567:366;;;:::o;21939:419::-;22105:4;22143:2;22132:9;22128:18;22120:26;;22192:9;22186:4;22182:20;22178:1;22167:9;22163:17;22156:47;22220:131;22346:4;22220:131;:::i;:::-;22212:139;;21939:419;;;:::o;22364:225::-;22504:34;22500:1;22492:6;22488:14;22481:58;22573:8;22568:2;22560:6;22556:15;22549:33;22364:225;:::o;22595:366::-;22737:3;22758:67;22822:2;22817:3;22758:67;:::i;:::-;22751:74;;22834:93;22923:3;22834:93;:::i;:::-;22952:2;22947:3;22943:12;22936:19;;22595:366;;;:::o;22967:419::-;23133:4;23171:2;23160:9;23156:18;23148:26;;23220:9;23214:4;23210:20;23206:1;23195:9;23191:17;23184:47;23248:131;23374:4;23248:131;:::i;:::-;23240:139;;22967:419;;;:::o
Swarm Source
ipfs://c4083b02ece05c36655c8d2dca91188882a1a7c394e6f08080859a9081440eb0
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.