ERC-20
Overview
Max Total Supply
69,000,000,000 CUM
Holders
162
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
384,645,955.640253749056402305 CUMValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
CUM
Compiler Version
v0.8.0+commit.c7dfd78e
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-05-22 */ // File @openzeppelin/contracts/utils/[email protected] // SPDX-License-Identifier: MIT // OpenZeppelin Contracts v4.4.0 (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/[email protected] // OpenZeppelin Contracts v4.4.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 Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if called by any account other than the 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 { _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/[email protected] // OpenZeppelin Contracts v4.4.0 (token/ERC20/IERC20.sol) pragma solidity ^0.8.0; /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface IERC20 { /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @dev Returns the amount of tokens owned by `account`. */ function balanceOf(address account) external view returns (uint256); /** * @dev Moves `amount` tokens from the caller's account to `recipient`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address recipient, uint256 amount) external returns (bool); /** * @dev Returns the remaining number of tokens that `spender` will be * allowed to spend on behalf of `owner` through {transferFrom}. This is * zero by default. * * This value changes when {approve} or {transferFrom} are called. */ function allowance(address owner, address spender) external view returns (uint256); /** * @dev Sets `amount` as the allowance of `spender` over the caller's tokens. * * Returns a boolean value indicating whether the operation succeeded. * * IMPORTANT: Beware that changing an allowance with this method brings the risk * that someone may use both the old and the new allowance by unfortunate * transaction ordering. One possible solution to mitigate this race * condition is to first reduce the spender's allowance to 0 and set the * desired value afterwards: * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 * * Emits an {Approval} event. */ function approve(address spender, uint256 amount) external returns (bool); /** * @dev Moves `amount` tokens from `sender` to `recipient` using the * allowance mechanism. `amount` is then deducted from the caller's * allowance. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); /** * @dev Emitted when `value` tokens are moved from one account (`from`) to * another (`to`). * * Note that `value` may be zero. */ event Transfer(address indexed from, address indexed to, uint256 value); /** * @dev Emitted when the allowance of a `spender` for an `owner` is set by * a call to {approve}. `value` is the new allowance. */ event Approval(address indexed owner, address indexed spender, uint256 value); } // File @openzeppelin/contracts/token/ERC20/extensions/[email protected] // OpenZeppelin Contracts v4.4.0 (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/[email protected] // OpenZeppelin Contracts v4.4.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.zeppelin.solutions/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: * * - `recipient` cannot be the zero address. * - the caller must have a balance of at least `amount`. */ function transfer(address recipient, uint256 amount) public virtual override returns (bool) { _transfer(_msgSender(), recipient, 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}. * * Requirements: * * - `spender` cannot be the zero address. */ function approve(address spender, uint256 amount) public virtual override returns (bool) { _approve(_msgSender(), 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}. * * Requirements: * * - `sender` and `recipient` cannot be the zero address. * - `sender` must have a balance of at least `amount`. * - the caller must have allowance for ``sender``'s tokens of at least * `amount`. */ function transferFrom( address sender, address recipient, uint256 amount ) public virtual override returns (bool) { _transfer(sender, recipient, amount); uint256 currentAllowance = _allowances[sender][_msgSender()]; require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance"); unchecked { _approve(sender, _msgSender(), currentAllowance - 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) { _approve(_msgSender(), spender, _allowances[_msgSender()][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) { uint256 currentAllowance = _allowances[_msgSender()][spender]; require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero"); unchecked { _approve(_msgSender(), spender, currentAllowance - subtractedValue); } return true; } /** * @dev Moves `amount` of tokens from `sender` to `recipient`. * * 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: * * - `sender` cannot be the zero address. * - `recipient` cannot be the zero address. * - `sender` must have a balance of at least `amount`. */ function _transfer( address sender, address recipient, uint256 amount ) internal virtual { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); _beforeTokenTransfer(sender, recipient, amount); uint256 senderBalance = _balances[sender]; require(senderBalance >= amount, "ERC20: transfer amount exceeds balance"); unchecked { _balances[sender] = senderBalance - amount; } _balances[recipient] += amount; emit Transfer(sender, recipient, amount); _afterTokenTransfer(sender, recipient, 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; _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; } _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 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/CUM.sol pragma solidity ^0.8.0; contract CUM is Ownable, ERC20 { bool public limited; uint256 public maxHoldingAmount; uint256 public minHoldingAmount; address public uniswapV2Pair; mapping(address => bool) public presalelists; constructor(uint256 _totalSupply) ERC20("CUM Coin", "CUM") { _mint(msg.sender, _totalSupply); } //List of Pre Salers, locks tokens until unlocked function presalelist(address[] memory _addresses, bool _isLocked) external onlyOwner { for (uint256 i = 0; i < _addresses.length; i++) { presalelists[_addresses[i]] = _isLocked; } } //Don't allow trading on Uniswap until launch time function setRule(bool _limited, address _uniswapV2Pair, uint256 _maxHoldingAmount, uint256 _minHoldingAmount) external onlyOwner { limited = _limited; uniswapV2Pair = _uniswapV2Pair; maxHoldingAmount = _maxHoldingAmount; minHoldingAmount = _minHoldingAmount; } function _beforeTokenTransfer( address from, address to, uint256 amount ) override internal virtual { require(!presalelists[to] && !presalelists[from], "Pre-sale Still Locked"); if (uniswapV2Pair == address(0)) { require(from == owner() || to == owner(), "trading is not started"); return; } if (limited && from == uniswapV2Pair) { require(super.balanceOf(to) + amount <= maxHoldingAmount && super.balanceOf(to) + amount >= minHoldingAmount, "Forbid"); } } function burn(uint256 value) external { _burn(msg.sender, value); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"uint256","name":"_totalSupply","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"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":"uint256","name":"value","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":[{"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":"limited","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxHoldingAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minHoldingAmount","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":[{"internalType":"address[]","name":"_addresses","type":"address[]"},{"internalType":"bool","name":"_isLocked","type":"bool"}],"name":"presalelist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"presalelists","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_limited","type":"bool"},{"internalType":"address","name":"_uniswapV2Pair","type":"address"},{"internalType":"uint256","name":"_maxHoldingAmount","type":"uint256"},{"internalType":"uint256","name":"_minHoldingAmount","type":"uint256"}],"name":"setRule","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"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
60806040523480156200001157600080fd5b5060405162002f8a38038062002f8a8339818101604052810190620000379190620007b1565b6040518060400160405280600881526020017f43554d20436f696e0000000000000000000000000000000000000000000000008152506040518060400160405280600381526020017f43554d0000000000000000000000000000000000000000000000000000000000815250620000c3620000b76200011060201b60201c565b6200011860201b60201c565b8160049080519060200190620000db929190620006ea565b508060059080519060200190620000f4929190620006ea565b505050620001093382620001dc60201b60201c565b5062000ac1565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156200024f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000246906200095c565b60405180910390fd5b62000263600083836200035660201b60201c565b8060036000828254620002779190620009ac565b9250508190555080600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254620002cf9190620009ac565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516200033691906200097e565b60405180910390a362000352600083836200067360201b60201c565b5050565b600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015620003fb5750600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6200043d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000434906200093a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156200056157620004a56200067860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480620005195750620004ea6200067860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b6200055b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005529062000918565b60405180910390fd5b6200066e565b600660009054906101000a900460ff168015620005cb5750600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b156200066d5760075481620005eb84620006a160201b620009111760201c565b620005f79190620009ac565b111580156200062a5750600854816200061b84620006a160201b620009111760201c565b620006279190620009ac565b10155b6200066c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200066390620008f6565b60405180910390fd5b5b5b505050565b505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b828054620006f89062000a13565b90600052602060002090601f0160209004810192826200071c576000855562000768565b82601f106200073757805160ff191683800117855562000768565b8280016001018555821562000768579182015b82811115620007675782518255916020019190600101906200074a565b5b5090506200077791906200077b565b5090565b5b80821115620007965760008160009055506001016200077c565b5090565b600081519050620007ab8162000aa7565b92915050565b600060208284031215620007c457600080fd5b6000620007d4848285016200079a565b91505092915050565b6000620007ec6006836200099b565b91507f466f7262696400000000000000000000000000000000000000000000000000006000830152602082019050919050565b60006200082e6016836200099b565b91507f74726164696e67206973206e6f742073746172746564000000000000000000006000830152602082019050919050565b6000620008706015836200099b565b91507f5072652d73616c65205374696c6c204c6f636b656400000000000000000000006000830152602082019050919050565b6000620008b2601f836200099b565b91507f45524332303a206d696e7420746f20746865207a65726f2061646472657373006000830152602082019050919050565b620008f08162000a09565b82525050565b600060208201905081810360008301526200091181620007dd565b9050919050565b6000602082019050818103600083015262000933816200081f565b9050919050565b60006020820190508181036000830152620009558162000861565b9050919050565b600060208201905081810360008301526200097781620008a3565b9050919050565b6000602082019050620009956000830184620008e5565b92915050565b600082825260208201905092915050565b6000620009b98262000a09565b9150620009c68362000a09565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115620009fe57620009fd62000a49565b5b828201905092915050565b6000819050919050565b6000600282049050600182168062000a2c57607f821691505b6020821081141562000a435762000a4262000a78565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b62000ab28162000a09565b811462000abe57600080fd5b50565b6124b98062000ad16000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c806370a08231116100b857806395d89b411161007c57806395d89b4114610355578063a457c2d714610373578063a9059cbb146103a3578063dd62ed3e146103d3578063e7e199a214610403578063f2fde38b1461043357610142565b806370a08231146102c1578063715018a6146102f1578063860a32ec146102fb57806389f9a1d3146103195780638da5cb5b1461033757610142565b8063313ce5671161010a578063313ce56714610201578063395093511461021f5780633aa633aa1461024f57806342966c681461026b57806349bd5a5e14610287578063519673b1146102a557610142565b806306fdde0314610147578063095ea7b31461016557806318160ddd146101955780631ab99e12146101b357806323b872dd146101d1575b600080fd5b61014f61044f565b60405161015c9190611f82565b60405180910390f35b61017f600480360381019061017a91906118bf565b6104e1565b60405161018c9190611f67565b60405180910390f35b61019d6104ff565b6040516101aa9190612164565b60405180910390f35b6101bb610509565b6040516101c89190612164565b60405180910390f35b6101eb60048036038101906101e69190611870565b61050f565b6040516101f89190611f67565b60405180910390f35b610209610607565b604051610216919061217f565b60405180910390f35b610239600480360381019061023491906118bf565b610610565b6040516102469190611f67565b60405180910390f35b6102696004803603810190610264919061194f565b6106bc565b005b610285600480360381019061028091906119b2565b6107a7565b005b61028f6107b4565b60405161029c9190611f4c565b60405180910390f35b6102bf60048036038101906102ba91906118fb565b6107da565b005b6102db60048036038101906102d6919061180b565b610911565b6040516102e89190612164565b60405180910390f35b6102f961095a565b005b6103036109e2565b6040516103109190611f67565b60405180910390f35b6103216109f5565b60405161032e9190612164565b60405180910390f35b61033f6109fb565b60405161034c9190611f4c565b60405180910390f35b61035d610a24565b60405161036a9190611f82565b60405180910390f35b61038d600480360381019061038891906118bf565b610ab6565b60405161039a9190611f67565b60405180910390f35b6103bd60048036038101906103b891906118bf565b610ba1565b6040516103ca9190611f67565b60405180910390f35b6103ed60048036038101906103e89190611834565b610bbf565b6040516103fa9190612164565b60405180910390f35b61041d6004803603810190610418919061180b565b610c46565b60405161042a9190611f67565b60405180910390f35b61044d6004803603810190610448919061180b565b610c66565b005b60606004805461045e90612325565b80601f016020809104026020016040519081016040528092919081815260200182805461048a90612325565b80156104d75780601f106104ac576101008083540402835291602001916104d7565b820191906000526020600020905b8154815290600101906020018083116104ba57829003601f168201915b5050505050905090565b60006104f56104ee610d5e565b8484610d66565b6001905092915050565b6000600354905090565b60085481565b600061051c848484610f31565b6000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610567610d5e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156105e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105de90612064565b60405180910390fd5b6105fb856105f3610d5e565b858403610d66565b60019150509392505050565b60006012905090565b60006106b261061d610d5e565b84846002600061062b610d5e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546106ad9190612213565b610d66565b6001905092915050565b6106c4610d5e565b73ffffffffffffffffffffffffffffffffffffffff166106e26109fb565b73ffffffffffffffffffffffffffffffffffffffff1614610738576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161072f90612084565b60405180910390fd5b83600660006101000a81548160ff02191690831515021790555082600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816007819055508060088190555050505050565b6107b133826111b5565b50565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6107e2610d5e565b73ffffffffffffffffffffffffffffffffffffffff166108006109fb565b73ffffffffffffffffffffffffffffffffffffffff1614610856576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161084d90612084565b60405180910390fd5b60005b825181101561090c5781600a60008584815181106108a0577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061090490612357565b915050610859565b505050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610962610d5e565b73ffffffffffffffffffffffffffffffffffffffff166109806109fb565b73ffffffffffffffffffffffffffffffffffffffff16146109d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109cd90612084565b60405180910390fd5b6109e0600061138e565b565b600660009054906101000a900460ff1681565b60075481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060058054610a3390612325565b80601f0160208091040260200160405190810160405280929190818152602001828054610a5f90612325565b8015610aac5780601f10610a8157610100808354040283529160200191610aac565b820191906000526020600020905b815481529060010190602001808311610a8f57829003601f168201915b5050505050905090565b60008060026000610ac5610d5e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610b82576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b7990612144565b60405180910390fd5b610b96610b8d610d5e565b85858403610d66565b600191505092915050565b6000610bb5610bae610d5e565b8484610f31565b6001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600a6020528060005260406000206000915054906101000a900460ff1681565b610c6e610d5e565b73ffffffffffffffffffffffffffffffffffffffff16610c8c6109fb565b73ffffffffffffffffffffffffffffffffffffffff1614610ce2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cd990612084565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610d52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4990611fe4565b60405180910390fd5b610d5b8161138e565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610dd6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dcd90612104565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610e46576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3d90612004565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610f249190612164565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610fa1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f98906120e4565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611011576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161100890611fa4565b60405180910390fd5b61101c838383611452565b6000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156110a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161109a90612024565b60405180910390fd5b818103600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546111389190612213565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161119c9190612164565b60405180910390a36111af848484611731565b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611225576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161121c906120a4565b60405180910390fd5b61123182600083611452565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156112b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112af90611fc4565b60405180910390fd5b818103600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600360008282546113109190612269565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516113759190612164565b60405180910390a361138983600084611731565b505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156114f65750600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b611535576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161152c90612124565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611643576115946109fb565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614806115ff57506115d06109fb565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b61163e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611635906120c4565b60405180910390fd5b61172c565b600660009054906101000a900460ff1680156116ac5750600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b1561172b57600754816116be84610911565b6116c89190612213565b111580156116eb5750600854816116de84610911565b6116e89190612213565b10155b61172a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161172190612044565b60405180910390fd5b5b5b505050565b505050565b6000611749611744846121cb565b61219a565b9050808382526020820190508285602086028201111561176857600080fd5b60005b85811015611798578161177e88826117a2565b84526020840193506020830192505060018101905061176b565b5050509392505050565b6000813590506117b18161243e565b92915050565b600082601f8301126117c857600080fd5b81356117d8848260208601611736565b91505092915050565b6000813590506117f081612455565b92915050565b6000813590506118058161246c565b92915050565b60006020828403121561181d57600080fd5b600061182b848285016117a2565b91505092915050565b6000806040838503121561184757600080fd5b6000611855858286016117a2565b9250506020611866858286016117a2565b9150509250929050565b60008060006060848603121561188557600080fd5b6000611893868287016117a2565b93505060206118a4868287016117a2565b92505060406118b5868287016117f6565b9150509250925092565b600080604083850312156118d257600080fd5b60006118e0858286016117a2565b92505060206118f1858286016117f6565b9150509250929050565b6000806040838503121561190e57600080fd5b600083013567ffffffffffffffff81111561192857600080fd5b611934858286016117b7565b9250506020611945858286016117e1565b9150509250929050565b6000806000806080858703121561196557600080fd5b6000611973878288016117e1565b9450506020611984878288016117a2565b9350506040611995878288016117f6565b92505060606119a6878288016117f6565b91505092959194509250565b6000602082840312156119c457600080fd5b60006119d2848285016117f6565b91505092915050565b6119e48161229d565b82525050565b6119f3816122af565b82525050565b6000611a04826121f7565b611a0e8185612202565b9350611a1e8185602086016122f2565b611a278161242d565b840191505092915050565b6000611a3f602383612202565b91507f45524332303a207472616e7366657220746f20746865207a65726f206164647260008301527f65737300000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611aa5602283612202565b91507f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008301527f63650000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611b0b602683612202565b91507f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008301527f64647265737300000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611b71602283612202565b91507f45524332303a20617070726f766520746f20746865207a65726f20616464726560008301527f73730000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611bd7602683612202565b91507f45524332303a207472616e7366657220616d6f756e742065786365656473206260008301527f616c616e636500000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611c3d600683612202565b91507f466f7262696400000000000000000000000000000000000000000000000000006000830152602082019050919050565b6000611c7d602883612202565b91507f45524332303a207472616e7366657220616d6f756e742065786365656473206160008301527f6c6c6f77616e63650000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611ce3602083612202565b91507f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726000830152602082019050919050565b6000611d23602183612202565b91507f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008301527f73000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611d89601683612202565b91507f74726164696e67206973206e6f742073746172746564000000000000000000006000830152602082019050919050565b6000611dc9602583612202565b91507f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008301527f64726573730000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611e2f602483612202565b91507f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008301527f72657373000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611e95601583612202565b91507f5072652d73616c65205374696c6c204c6f636b656400000000000000000000006000830152602082019050919050565b6000611ed5602583612202565b91507f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008301527f207a65726f0000000000000000000000000000000000000000000000000000006020830152604082019050919050565b611f37816122db565b82525050565b611f46816122e5565b82525050565b6000602082019050611f6160008301846119db565b92915050565b6000602082019050611f7c60008301846119ea565b92915050565b60006020820190508181036000830152611f9c81846119f9565b905092915050565b60006020820190508181036000830152611fbd81611a32565b9050919050565b60006020820190508181036000830152611fdd81611a98565b9050919050565b60006020820190508181036000830152611ffd81611afe565b9050919050565b6000602082019050818103600083015261201d81611b64565b9050919050565b6000602082019050818103600083015261203d81611bca565b9050919050565b6000602082019050818103600083015261205d81611c30565b9050919050565b6000602082019050818103600083015261207d81611c70565b9050919050565b6000602082019050818103600083015261209d81611cd6565b9050919050565b600060208201905081810360008301526120bd81611d16565b9050919050565b600060208201905081810360008301526120dd81611d7c565b9050919050565b600060208201905081810360008301526120fd81611dbc565b9050919050565b6000602082019050818103600083015261211d81611e22565b9050919050565b6000602082019050818103600083015261213d81611e88565b9050919050565b6000602082019050818103600083015261215d81611ec8565b9050919050565b60006020820190506121796000830184611f2e565b92915050565b60006020820190506121946000830184611f3d565b92915050565b6000604051905081810181811067ffffffffffffffff821117156121c1576121c06123fe565b5b8060405250919050565b600067ffffffffffffffff8211156121e6576121e56123fe565b5b602082029050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600061221e826122db565b9150612229836122db565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561225e5761225d6123a0565b5b828201905092915050565b6000612274826122db565b915061227f836122db565b925082821015612292576122916123a0565b5b828203905092915050565b60006122a8826122bb565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b838110156123105780820151818401526020810190506122f5565b8381111561231f576000848401525b50505050565b6000600282049050600182168061233d57607f821691505b60208210811415612351576123506123cf565b5b50919050565b6000612362826122db565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612395576123946123a0565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b6124478161229d565b811461245257600080fd5b50565b61245e816122af565b811461246957600080fd5b50565b612475816122db565b811461248057600080fd5b5056fea2646970667358221220cfc33cd49ba7592601caf3476199733d92a4ac3e834864dce846745ac4bdedef64736f6c634300080000330000000000000000000000000000000000000000def376571332906a88000000
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101425760003560e01c806370a08231116100b857806395d89b411161007c57806395d89b4114610355578063a457c2d714610373578063a9059cbb146103a3578063dd62ed3e146103d3578063e7e199a214610403578063f2fde38b1461043357610142565b806370a08231146102c1578063715018a6146102f1578063860a32ec146102fb57806389f9a1d3146103195780638da5cb5b1461033757610142565b8063313ce5671161010a578063313ce56714610201578063395093511461021f5780633aa633aa1461024f57806342966c681461026b57806349bd5a5e14610287578063519673b1146102a557610142565b806306fdde0314610147578063095ea7b31461016557806318160ddd146101955780631ab99e12146101b357806323b872dd146101d1575b600080fd5b61014f61044f565b60405161015c9190611f82565b60405180910390f35b61017f600480360381019061017a91906118bf565b6104e1565b60405161018c9190611f67565b60405180910390f35b61019d6104ff565b6040516101aa9190612164565b60405180910390f35b6101bb610509565b6040516101c89190612164565b60405180910390f35b6101eb60048036038101906101e69190611870565b61050f565b6040516101f89190611f67565b60405180910390f35b610209610607565b604051610216919061217f565b60405180910390f35b610239600480360381019061023491906118bf565b610610565b6040516102469190611f67565b60405180910390f35b6102696004803603810190610264919061194f565b6106bc565b005b610285600480360381019061028091906119b2565b6107a7565b005b61028f6107b4565b60405161029c9190611f4c565b60405180910390f35b6102bf60048036038101906102ba91906118fb565b6107da565b005b6102db60048036038101906102d6919061180b565b610911565b6040516102e89190612164565b60405180910390f35b6102f961095a565b005b6103036109e2565b6040516103109190611f67565b60405180910390f35b6103216109f5565b60405161032e9190612164565b60405180910390f35b61033f6109fb565b60405161034c9190611f4c565b60405180910390f35b61035d610a24565b60405161036a9190611f82565b60405180910390f35b61038d600480360381019061038891906118bf565b610ab6565b60405161039a9190611f67565b60405180910390f35b6103bd60048036038101906103b891906118bf565b610ba1565b6040516103ca9190611f67565b60405180910390f35b6103ed60048036038101906103e89190611834565b610bbf565b6040516103fa9190612164565b60405180910390f35b61041d6004803603810190610418919061180b565b610c46565b60405161042a9190611f67565b60405180910390f35b61044d6004803603810190610448919061180b565b610c66565b005b60606004805461045e90612325565b80601f016020809104026020016040519081016040528092919081815260200182805461048a90612325565b80156104d75780601f106104ac576101008083540402835291602001916104d7565b820191906000526020600020905b8154815290600101906020018083116104ba57829003601f168201915b5050505050905090565b60006104f56104ee610d5e565b8484610d66565b6001905092915050565b6000600354905090565b60085481565b600061051c848484610f31565b6000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610567610d5e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156105e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105de90612064565b60405180910390fd5b6105fb856105f3610d5e565b858403610d66565b60019150509392505050565b60006012905090565b60006106b261061d610d5e565b84846002600061062b610d5e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546106ad9190612213565b610d66565b6001905092915050565b6106c4610d5e565b73ffffffffffffffffffffffffffffffffffffffff166106e26109fb565b73ffffffffffffffffffffffffffffffffffffffff1614610738576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161072f90612084565b60405180910390fd5b83600660006101000a81548160ff02191690831515021790555082600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816007819055508060088190555050505050565b6107b133826111b5565b50565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6107e2610d5e565b73ffffffffffffffffffffffffffffffffffffffff166108006109fb565b73ffffffffffffffffffffffffffffffffffffffff1614610856576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161084d90612084565b60405180910390fd5b60005b825181101561090c5781600a60008584815181106108a0577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061090490612357565b915050610859565b505050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610962610d5e565b73ffffffffffffffffffffffffffffffffffffffff166109806109fb565b73ffffffffffffffffffffffffffffffffffffffff16146109d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109cd90612084565b60405180910390fd5b6109e0600061138e565b565b600660009054906101000a900460ff1681565b60075481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060058054610a3390612325565b80601f0160208091040260200160405190810160405280929190818152602001828054610a5f90612325565b8015610aac5780601f10610a8157610100808354040283529160200191610aac565b820191906000526020600020905b815481529060010190602001808311610a8f57829003601f168201915b5050505050905090565b60008060026000610ac5610d5e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610b82576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b7990612144565b60405180910390fd5b610b96610b8d610d5e565b85858403610d66565b600191505092915050565b6000610bb5610bae610d5e565b8484610f31565b6001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600a6020528060005260406000206000915054906101000a900460ff1681565b610c6e610d5e565b73ffffffffffffffffffffffffffffffffffffffff16610c8c6109fb565b73ffffffffffffffffffffffffffffffffffffffff1614610ce2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cd990612084565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610d52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4990611fe4565b60405180910390fd5b610d5b8161138e565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610dd6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dcd90612104565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610e46576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3d90612004565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610f249190612164565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610fa1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f98906120e4565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611011576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161100890611fa4565b60405180910390fd5b61101c838383611452565b6000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156110a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161109a90612024565b60405180910390fd5b818103600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546111389190612213565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161119c9190612164565b60405180910390a36111af848484611731565b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611225576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161121c906120a4565b60405180910390fd5b61123182600083611452565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156112b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112af90611fc4565b60405180910390fd5b818103600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600360008282546113109190612269565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516113759190612164565b60405180910390a361138983600084611731565b505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156114f65750600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b611535576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161152c90612124565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611643576115946109fb565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614806115ff57506115d06109fb565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b61163e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611635906120c4565b60405180910390fd5b61172c565b600660009054906101000a900460ff1680156116ac5750600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b1561172b57600754816116be84610911565b6116c89190612213565b111580156116eb5750600854816116de84610911565b6116e89190612213565b10155b61172a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161172190612044565b60405180910390fd5b5b5b505050565b505050565b6000611749611744846121cb565b61219a565b9050808382526020820190508285602086028201111561176857600080fd5b60005b85811015611798578161177e88826117a2565b84526020840193506020830192505060018101905061176b565b5050509392505050565b6000813590506117b18161243e565b92915050565b600082601f8301126117c857600080fd5b81356117d8848260208601611736565b91505092915050565b6000813590506117f081612455565b92915050565b6000813590506118058161246c565b92915050565b60006020828403121561181d57600080fd5b600061182b848285016117a2565b91505092915050565b6000806040838503121561184757600080fd5b6000611855858286016117a2565b9250506020611866858286016117a2565b9150509250929050565b60008060006060848603121561188557600080fd5b6000611893868287016117a2565b93505060206118a4868287016117a2565b92505060406118b5868287016117f6565b9150509250925092565b600080604083850312156118d257600080fd5b60006118e0858286016117a2565b92505060206118f1858286016117f6565b9150509250929050565b6000806040838503121561190e57600080fd5b600083013567ffffffffffffffff81111561192857600080fd5b611934858286016117b7565b9250506020611945858286016117e1565b9150509250929050565b6000806000806080858703121561196557600080fd5b6000611973878288016117e1565b9450506020611984878288016117a2565b9350506040611995878288016117f6565b92505060606119a6878288016117f6565b91505092959194509250565b6000602082840312156119c457600080fd5b60006119d2848285016117f6565b91505092915050565b6119e48161229d565b82525050565b6119f3816122af565b82525050565b6000611a04826121f7565b611a0e8185612202565b9350611a1e8185602086016122f2565b611a278161242d565b840191505092915050565b6000611a3f602383612202565b91507f45524332303a207472616e7366657220746f20746865207a65726f206164647260008301527f65737300000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611aa5602283612202565b91507f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008301527f63650000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611b0b602683612202565b91507f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008301527f64647265737300000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611b71602283612202565b91507f45524332303a20617070726f766520746f20746865207a65726f20616464726560008301527f73730000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611bd7602683612202565b91507f45524332303a207472616e7366657220616d6f756e742065786365656473206260008301527f616c616e636500000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611c3d600683612202565b91507f466f7262696400000000000000000000000000000000000000000000000000006000830152602082019050919050565b6000611c7d602883612202565b91507f45524332303a207472616e7366657220616d6f756e742065786365656473206160008301527f6c6c6f77616e63650000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611ce3602083612202565b91507f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726000830152602082019050919050565b6000611d23602183612202565b91507f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008301527f73000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611d89601683612202565b91507f74726164696e67206973206e6f742073746172746564000000000000000000006000830152602082019050919050565b6000611dc9602583612202565b91507f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008301527f64726573730000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611e2f602483612202565b91507f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008301527f72657373000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611e95601583612202565b91507f5072652d73616c65205374696c6c204c6f636b656400000000000000000000006000830152602082019050919050565b6000611ed5602583612202565b91507f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008301527f207a65726f0000000000000000000000000000000000000000000000000000006020830152604082019050919050565b611f37816122db565b82525050565b611f46816122e5565b82525050565b6000602082019050611f6160008301846119db565b92915050565b6000602082019050611f7c60008301846119ea565b92915050565b60006020820190508181036000830152611f9c81846119f9565b905092915050565b60006020820190508181036000830152611fbd81611a32565b9050919050565b60006020820190508181036000830152611fdd81611a98565b9050919050565b60006020820190508181036000830152611ffd81611afe565b9050919050565b6000602082019050818103600083015261201d81611b64565b9050919050565b6000602082019050818103600083015261203d81611bca565b9050919050565b6000602082019050818103600083015261205d81611c30565b9050919050565b6000602082019050818103600083015261207d81611c70565b9050919050565b6000602082019050818103600083015261209d81611cd6565b9050919050565b600060208201905081810360008301526120bd81611d16565b9050919050565b600060208201905081810360008301526120dd81611d7c565b9050919050565b600060208201905081810360008301526120fd81611dbc565b9050919050565b6000602082019050818103600083015261211d81611e22565b9050919050565b6000602082019050818103600083015261213d81611e88565b9050919050565b6000602082019050818103600083015261215d81611ec8565b9050919050565b60006020820190506121796000830184611f2e565b92915050565b60006020820190506121946000830184611f3d565b92915050565b6000604051905081810181811067ffffffffffffffff821117156121c1576121c06123fe565b5b8060405250919050565b600067ffffffffffffffff8211156121e6576121e56123fe565b5b602082029050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600061221e826122db565b9150612229836122db565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561225e5761225d6123a0565b5b828201905092915050565b6000612274826122db565b915061227f836122db565b925082821015612292576122916123a0565b5b828203905092915050565b60006122a8826122bb565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b838110156123105780820151818401526020810190506122f5565b8381111561231f576000848401525b50505050565b6000600282049050600182168061233d57607f821691505b60208210811415612351576123506123cf565b5b50919050565b6000612362826122db565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612395576123946123a0565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b6124478161229d565b811461245257600080fd5b50565b61245e816122af565b811461246957600080fd5b50565b612475816122db565b811461248057600080fd5b5056fea2646970667358221220cfc33cd49ba7592601caf3476199733d92a4ac3e834864dce846745ac4bdedef64736f6c63430008000033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000000000000000000000def376571332906a88000000
-----Decoded View---------------
Arg [0] : _totalSupply (uint256): 69000000000000000000000000000
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000def376571332906a88000000
Deployed Bytecode Sourcemap
28660:1631:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18635:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20802:169;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19755:108;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;28762:31;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;21453:492;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19597:93;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;22354:215;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;29309:301;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;30207:81;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;28800:28;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;29055:193;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;19926:127;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12036:103;;;:::i;:::-;;28698:19;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;28724:31;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11385:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18854:104;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;23072:413;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20266:175;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20504:151;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;28835:44;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12294:201;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;18635:100;18689:13;18722:5;18715:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18635:100;:::o;20802:169::-;20885:4;20902:39;20911:12;:10;:12::i;:::-;20925:7;20934:6;20902:8;:39::i;:::-;20959:4;20952:11;;20802:169;;;;:::o;19755:108::-;19816:7;19843:12;;19836:19;;19755:108;:::o;28762:31::-;;;;:::o;21453:492::-;21593:4;21610:36;21620:6;21628:9;21639:6;21610:9;:36::i;:::-;21659:24;21686:11;:19;21698:6;21686:19;;;;;;;;;;;;;;;:33;21706:12;:10;:12::i;:::-;21686:33;;;;;;;;;;;;;;;;21659:60;;21758:6;21738:16;:26;;21730:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;21845:57;21854:6;21862:12;:10;:12::i;:::-;21895:6;21876:16;:25;21845:8;:57::i;:::-;21933:4;21926:11;;;21453:492;;;;;:::o;19597:93::-;19655:5;19680:2;19673:9;;19597:93;:::o;22354:215::-;22442:4;22459:80;22468:12;:10;:12::i;:::-;22482:7;22528:10;22491:11;:25;22503:12;:10;:12::i;:::-;22491:25;;;;;;;;;;;;;;;:34;22517:7;22491:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;22459:8;:80::i;:::-;22557:4;22550:11;;22354:215;;;;:::o;29309:301::-;11616:12;:10;:12::i;:::-;11605:23;;:7;:5;:7::i;:::-;:23;;;11597:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;29459:8:::1;29449:7;;:18;;;;;;;;;;;;;;;;;;29494:14;29478:13;;:30;;;;;;;;;;;;;;;;;;29538:17;29519:16;:36;;;;29585:17;29566:16;:36;;;;29309:301:::0;;;;:::o;30207:81::-;30256:24;30262:10;30274:5;30256;:24::i;:::-;30207:81;:::o;28800:28::-;;;;;;;;;;;;;:::o;29055:193::-;11616:12;:10;:12::i;:::-;11605:23;;:7;:5;:7::i;:::-;:23;;;11597:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;29150:9:::1;29145:99;29169:10;:17;29165:1;:21;29145:99;;;29229:9;29199:12;:27;29212:10;29223:1;29212:13;;;;;;;;;;;;;;;;;;;;;;29199:27;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;29188:3;;;;;:::i;:::-;;;;29145:99;;;;29055:193:::0;;:::o;19926:127::-;20000:7;20027:9;:18;20037:7;20027:18;;;;;;;;;;;;;;;;20020:25;;19926:127;;;:::o;12036:103::-;11616:12;:10;:12::i;:::-;11605:23;;:7;:5;:7::i;:::-;:23;;;11597:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;12101:30:::1;12128:1;12101:18;:30::i;:::-;12036:103::o:0;28698:19::-;;;;;;;;;;;;;:::o;28724:31::-;;;;:::o;11385:87::-;11431:7;11458:6;;;;;;;;;;;11451:13;;11385:87;:::o;18854:104::-;18910:13;18943:7;18936:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18854:104;:::o;23072:413::-;23165:4;23182:24;23209:11;:25;23221:12;:10;:12::i;:::-;23209:25;;;;;;;;;;;;;;;:34;23235:7;23209:34;;;;;;;;;;;;;;;;23182:61;;23282:15;23262:16;:35;;23254:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;23375:67;23384:12;:10;:12::i;:::-;23398:7;23426:15;23407:16;:34;23375:8;:67::i;:::-;23473:4;23466:11;;;23072:413;;;;:::o;20266:175::-;20352:4;20369:42;20379:12;:10;:12::i;:::-;20393:9;20404:6;20369:9;:42::i;:::-;20429:4;20422:11;;20266:175;;;;:::o;20504:151::-;20593:7;20620:11;:18;20632:5;20620:18;;;;;;;;;;;;;;;:27;20639:7;20620:27;;;;;;;;;;;;;;;;20613:34;;20504:151;;;;:::o;28835:44::-;;;;;;;;;;;;;;;;;;;;;;:::o;12294:201::-;11616:12;:10;:12::i;:::-;11605:23;;:7;:5;:7::i;:::-;:23;;;11597:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;12403:1:::1;12383:22;;:8;:22;;;;12375:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;12459:28;12478:8;12459:18;:28::i;:::-;12294:201:::0;:::o;10103:98::-;10156:7;10183:10;10176:17;;10103:98;:::o;26756:380::-;26909:1;26892:19;;:5;:19;;;;26884:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;26990:1;26971:21;;:7;:21;;;;26963:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;27074:6;27044:11;:18;27056:5;27044:18;;;;;;;;;;;;;;;:27;27063:7;27044:27;;;;;;;;;;;;;;;:36;;;;27112:7;27096:32;;27105:5;27096:32;;;27121:6;27096:32;;;;;;:::i;:::-;;;;;;;;26756:380;;;:::o;23975:733::-;24133:1;24115:20;;:6;:20;;;;24107:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;24217:1;24196:23;;:9;:23;;;;24188:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;24272:47;24293:6;24301:9;24312:6;24272:20;:47::i;:::-;24332:21;24356:9;:17;24366:6;24356:17;;;;;;;;;;;;;;;;24332:41;;24409:6;24392:13;:23;;24384:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;24530:6;24514:13;:22;24494:9;:17;24504:6;24494:17;;;;;;;;;;;;;;;:42;;;;24582:6;24558:9;:20;24568:9;24558:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;24623:9;24606:35;;24615:6;24606:35;;;24634:6;24606:35;;;;;;:::i;:::-;;;;;;;;24654:46;24674:6;24682:9;24693:6;24654:19;:46::i;:::-;23975:733;;;;:::o;25727:591::-;25830:1;25811:21;;:7;:21;;;;25803:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;25883:49;25904:7;25921:1;25925:6;25883:20;:49::i;:::-;25945:22;25970:9;:18;25980:7;25970:18;;;;;;;;;;;;;;;;25945:43;;26025:6;26007:14;:24;;25999:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;26144:6;26127:14;:23;26106:9;:18;26116:7;26106:18;;;;;;;;;;;;;;;:44;;;;26188:6;26172:12;;:22;;;;;;;:::i;:::-;;;;;;;;26238:1;26212:37;;26221:7;26212:37;;;26242:6;26212:37;;;;;;:::i;:::-;;;;;;;;26262:48;26282:7;26299:1;26303:6;26262:19;:48::i;:::-;25727:591;;;:::o;12655:191::-;12729:16;12748:6;;;;;;;;;;;12729:25;;12774:8;12765:6;;:17;;;;;;;;;;;;;;;;;;12829:8;12798:40;;12819:8;12798:40;;;;;;;;;;;;12655:191;;:::o;29618:581::-;29770:12;:16;29783:2;29770:16;;;;;;;;;;;;;;;;;;;;;;;;;29769:17;:40;;;;;29791:12;:18;29804:4;29791:18;;;;;;;;;;;;;;;;;;;;;;;;;29790:19;29769:40;29761:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;29877:1;29852:27;;:13;;;;;;;;;;;:27;;;29848:148;;;29912:7;:5;:7::i;:::-;29904:15;;:4;:15;;;:32;;;;29929:7;:5;:7::i;:::-;29923:13;;:2;:13;;;29904:32;29896:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;29978:7;;29848:148;30012:7;;;;;;;;;;;:32;;;;;30031:13;;;;;;;;;;;30023:21;;:4;:21;;;30012:32;30008:184;;;30101:16;;30091:6;30069:19;30085:2;30069:15;:19::i;:::-;:28;;;;:::i;:::-;:48;;:100;;;;;30153:16;;30143:6;30121:19;30137:2;30121:15;:19::i;:::-;:28;;;;:::i;:::-;:48;;30069:100;30061:119;;;;;;;;;;;;:::i;:::-;;;;;;;;;30008:184;29618:581;;;;:::o;28465:124::-;;;;:::o;24:622:1:-;;145:80;160:64;217:6;160:64;:::i;:::-;145:80;:::i;:::-;136:89;;245:5;273:6;266:5;259:21;299:4;292:5;288:16;281:23;;324:6;374:3;366:4;358:6;354:17;349:3;345:27;342:36;339:2;;;391:1;388;381:12;339:2;419:1;404:236;429:6;426:1;423:13;404:236;;;496:3;524:37;557:3;545:10;524:37;:::i;:::-;519:3;512:50;591:4;586:3;582:14;575:21;;625:4;620:3;616:14;609:21;;464:176;451:1;448;444:9;439:14;;404:236;;;408:14;126:520;;;;;;;:::o;652:139::-;;736:6;723:20;714:29;;752:33;779:5;752:33;:::i;:::-;704:87;;;;:::o;814:303::-;;934:3;927:4;919:6;915:17;911:27;901:2;;952:1;949;942:12;901:2;992:6;979:20;1017:94;1107:3;1099:6;1092:4;1084:6;1080:17;1017:94;:::i;:::-;1008:103;;891:226;;;;;:::o;1123:133::-;;1204:6;1191:20;1182:29;;1220:30;1244:5;1220:30;:::i;:::-;1172:84;;;;:::o;1262:139::-;;1346:6;1333:20;1324:29;;1362:33;1389:5;1362:33;:::i;:::-;1314:87;;;;:::o;1407:262::-;;1515:2;1503:9;1494:7;1490:23;1486:32;1483:2;;;1531:1;1528;1521:12;1483:2;1574:1;1599:53;1644:7;1635:6;1624:9;1620:22;1599:53;:::i;:::-;1589:63;;1545:117;1473:196;;;;:::o;1675:407::-;;;1800:2;1788:9;1779:7;1775:23;1771:32;1768:2;;;1816:1;1813;1806:12;1768:2;1859:1;1884:53;1929:7;1920:6;1909:9;1905:22;1884:53;:::i;:::-;1874:63;;1830:117;1986:2;2012:53;2057:7;2048:6;2037:9;2033:22;2012:53;:::i;:::-;2002:63;;1957:118;1758:324;;;;;:::o;2088:552::-;;;;2230:2;2218:9;2209:7;2205:23;2201:32;2198:2;;;2246:1;2243;2236:12;2198:2;2289:1;2314:53;2359:7;2350:6;2339:9;2335:22;2314:53;:::i;:::-;2304:63;;2260:117;2416:2;2442:53;2487:7;2478:6;2467:9;2463:22;2442:53;:::i;:::-;2432:63;;2387:118;2544:2;2570:53;2615:7;2606:6;2595:9;2591:22;2570:53;:::i;:::-;2560:63;;2515:118;2188:452;;;;;:::o;2646:407::-;;;2771:2;2759:9;2750:7;2746:23;2742:32;2739:2;;;2787:1;2784;2777:12;2739:2;2830:1;2855:53;2900:7;2891:6;2880:9;2876:22;2855:53;:::i;:::-;2845:63;;2801:117;2957:2;2983:53;3028:7;3019:6;3008:9;3004:22;2983:53;:::i;:::-;2973:63;;2928:118;2729:324;;;;;:::o;3059:544::-;;;3206:2;3194:9;3185:7;3181:23;3177:32;3174:2;;;3222:1;3219;3212:12;3174:2;3293:1;3282:9;3278:17;3265:31;3323:18;3315:6;3312:30;3309:2;;;3355:1;3352;3345:12;3309:2;3383:78;3453:7;3444:6;3433:9;3429:22;3383:78;:::i;:::-;3373:88;;3236:235;3510:2;3536:50;3578:7;3569:6;3558:9;3554:22;3536:50;:::i;:::-;3526:60;;3481:115;3164:439;;;;;:::o;3609:692::-;;;;;3765:3;3753:9;3744:7;3740:23;3736:33;3733:2;;;3782:1;3779;3772:12;3733:2;3825:1;3850:50;3892:7;3883:6;3872:9;3868:22;3850:50;:::i;:::-;3840:60;;3796:114;3949:2;3975:53;4020:7;4011:6;4000:9;3996:22;3975:53;:::i;:::-;3965:63;;3920:118;4077:2;4103:53;4148:7;4139:6;4128:9;4124:22;4103:53;:::i;:::-;4093:63;;4048:118;4205:2;4231:53;4276:7;4267:6;4256:9;4252:22;4231:53;:::i;:::-;4221:63;;4176:118;3723:578;;;;;;;:::o;4307:262::-;;4415:2;4403:9;4394:7;4390:23;4386:32;4383:2;;;4431:1;4428;4421:12;4383:2;4474:1;4499:53;4544:7;4535:6;4524:9;4520:22;4499:53;:::i;:::-;4489:63;;4445:117;4373:196;;;;:::o;4575:118::-;4662:24;4680:5;4662:24;:::i;:::-;4657:3;4650:37;4640:53;;:::o;4699:109::-;4780:21;4795:5;4780:21;:::i;:::-;4775:3;4768:34;4758:50;;:::o;4814:364::-;;4930:39;4963:5;4930:39;:::i;:::-;4985:71;5049:6;5044:3;4985:71;:::i;:::-;4978:78;;5065:52;5110:6;5105:3;5098:4;5091:5;5087:16;5065:52;:::i;:::-;5142:29;5164:6;5142:29;:::i;:::-;5137:3;5133:39;5126:46;;4906:272;;;;;:::o;5184:367::-;;5347:67;5411:2;5406:3;5347:67;:::i;:::-;5340:74;;5444:34;5440:1;5435:3;5431:11;5424:55;5510:5;5505:2;5500:3;5496:12;5489:27;5542:2;5537:3;5533:12;5526:19;;5330:221;;;:::o;5557:366::-;;5720:67;5784:2;5779:3;5720:67;:::i;:::-;5713:74;;5817:34;5813:1;5808:3;5804:11;5797:55;5883:4;5878:2;5873:3;5869:12;5862:26;5914:2;5909:3;5905:12;5898:19;;5703:220;;;:::o;5929:370::-;;6092:67;6156:2;6151:3;6092:67;:::i;:::-;6085:74;;6189:34;6185:1;6180:3;6176:11;6169:55;6255:8;6250:2;6245:3;6241:12;6234:30;6290:2;6285:3;6281:12;6274:19;;6075:224;;;:::o;6305:366::-;;6468:67;6532:2;6527:3;6468:67;:::i;:::-;6461:74;;6565:34;6561:1;6556:3;6552:11;6545:55;6631:4;6626:2;6621:3;6617:12;6610:26;6662:2;6657:3;6653:12;6646:19;;6451:220;;;:::o;6677:370::-;;6840:67;6904:2;6899:3;6840:67;:::i;:::-;6833:74;;6937:34;6933:1;6928:3;6924:11;6917:55;7003:8;6998:2;6993:3;6989:12;6982:30;7038:2;7033:3;7029:12;7022:19;;6823:224;;;:::o;7053:303::-;;7216:66;7280:1;7275:3;7216:66;:::i;:::-;7209:73;;7312:8;7308:1;7303:3;7299:11;7292:29;7347:2;7342:3;7338:12;7331:19;;7199:157;;;:::o;7362:372::-;;7525:67;7589:2;7584:3;7525:67;:::i;:::-;7518:74;;7622:34;7618:1;7613:3;7609:11;7602:55;7688:10;7683:2;7678:3;7674:12;7667:32;7725:2;7720:3;7716:12;7709:19;;7508:226;;;:::o;7740:330::-;;7903:67;7967:2;7962:3;7903:67;:::i;:::-;7896:74;;8000:34;7996:1;7991:3;7987:11;7980:55;8061:2;8056:3;8052:12;8045:19;;7886:184;;;:::o;8076:365::-;;8239:67;8303:2;8298:3;8239:67;:::i;:::-;8232:74;;8336:34;8332:1;8327:3;8323:11;8316:55;8402:3;8397:2;8392:3;8388:12;8381:25;8432:2;8427:3;8423:12;8416:19;;8222:219;;;:::o;8447:320::-;;8610:67;8674:2;8669:3;8610:67;:::i;:::-;8603:74;;8707:24;8703:1;8698:3;8694:11;8687:45;8758:2;8753:3;8749:12;8742:19;;8593:174;;;:::o;8773:369::-;;8936:67;9000:2;8995:3;8936:67;:::i;:::-;8929:74;;9033:34;9029:1;9024:3;9020:11;9013:55;9099:7;9094:2;9089:3;9085:12;9078:29;9133:2;9128:3;9124:12;9117:19;;8919:223;;;:::o;9148:368::-;;9311:67;9375:2;9370:3;9311:67;:::i;:::-;9304:74;;9408:34;9404:1;9399:3;9395:11;9388:55;9474:6;9469:2;9464:3;9460:12;9453:28;9507:2;9502:3;9498:12;9491:19;;9294:222;;;:::o;9522:319::-;;9685:67;9749:2;9744:3;9685:67;:::i;:::-;9678:74;;9782:23;9778:1;9773:3;9769:11;9762:44;9832:2;9827:3;9823:12;9816:19;;9668:173;;;:::o;9847:369::-;;10010:67;10074:2;10069:3;10010:67;:::i;:::-;10003:74;;10107:34;10103:1;10098:3;10094:11;10087:55;10173:7;10168:2;10163:3;10159:12;10152:29;10207:2;10202:3;10198:12;10191:19;;9993:223;;;:::o;10222:118::-;10309:24;10327:5;10309:24;:::i;:::-;10304:3;10297:37;10287:53;;:::o;10346:112::-;10429:22;10445:5;10429:22;:::i;:::-;10424:3;10417:35;10407:51;;:::o;10464:222::-;;10595:2;10584:9;10580:18;10572:26;;10608:71;10676:1;10665:9;10661:17;10652:6;10608:71;:::i;:::-;10562:124;;;;:::o;10692:210::-;;10817:2;10806:9;10802:18;10794:26;;10830:65;10892:1;10881:9;10877:17;10868:6;10830:65;:::i;:::-;10784:118;;;;:::o;10908:313::-;;11059:2;11048:9;11044:18;11036:26;;11108:9;11102:4;11098:20;11094:1;11083:9;11079:17;11072:47;11136:78;11209:4;11200:6;11136:78;:::i;:::-;11128:86;;11026:195;;;;:::o;11227:419::-;;11431:2;11420:9;11416:18;11408:26;;11480:9;11474:4;11470:20;11466:1;11455:9;11451:17;11444:47;11508:131;11634:4;11508:131;:::i;:::-;11500:139;;11398:248;;;:::o;11652:419::-;;11856:2;11845:9;11841:18;11833:26;;11905:9;11899:4;11895:20;11891:1;11880:9;11876:17;11869:47;11933:131;12059:4;11933:131;:::i;:::-;11925:139;;11823:248;;;:::o;12077:419::-;;12281:2;12270:9;12266:18;12258:26;;12330:9;12324:4;12320:20;12316:1;12305:9;12301:17;12294:47;12358:131;12484:4;12358:131;:::i;:::-;12350:139;;12248:248;;;:::o;12502:419::-;;12706:2;12695:9;12691:18;12683:26;;12755:9;12749:4;12745:20;12741:1;12730:9;12726:17;12719:47;12783:131;12909:4;12783:131;:::i;:::-;12775:139;;12673:248;;;:::o;12927:419::-;;13131:2;13120:9;13116:18;13108:26;;13180:9;13174:4;13170:20;13166:1;13155:9;13151:17;13144:47;13208:131;13334:4;13208:131;:::i;:::-;13200:139;;13098:248;;;:::o;13352:419::-;;13556:2;13545:9;13541:18;13533:26;;13605:9;13599:4;13595:20;13591:1;13580:9;13576:17;13569:47;13633:131;13759:4;13633:131;:::i;:::-;13625:139;;13523:248;;;:::o;13777:419::-;;13981:2;13970:9;13966:18;13958:26;;14030:9;14024:4;14020:20;14016:1;14005:9;14001:17;13994:47;14058:131;14184:4;14058:131;:::i;:::-;14050:139;;13948:248;;;:::o;14202:419::-;;14406:2;14395:9;14391:18;14383:26;;14455:9;14449:4;14445:20;14441:1;14430:9;14426:17;14419:47;14483:131;14609:4;14483:131;:::i;:::-;14475:139;;14373:248;;;:::o;14627:419::-;;14831:2;14820:9;14816:18;14808:26;;14880:9;14874:4;14870:20;14866:1;14855:9;14851:17;14844:47;14908:131;15034:4;14908:131;:::i;:::-;14900:139;;14798:248;;;:::o;15052:419::-;;15256:2;15245:9;15241:18;15233:26;;15305:9;15299:4;15295:20;15291:1;15280:9;15276:17;15269:47;15333:131;15459:4;15333:131;:::i;:::-;15325:139;;15223:248;;;:::o;15477:419::-;;15681:2;15670:9;15666:18;15658:26;;15730:9;15724:4;15720:20;15716:1;15705:9;15701:17;15694:47;15758:131;15884:4;15758:131;:::i;:::-;15750:139;;15648:248;;;:::o;15902:419::-;;16106:2;16095:9;16091:18;16083:26;;16155:9;16149:4;16145:20;16141:1;16130:9;16126:17;16119:47;16183:131;16309:4;16183:131;:::i;:::-;16175:139;;16073:248;;;:::o;16327:419::-;;16531:2;16520:9;16516:18;16508:26;;16580:9;16574:4;16570:20;16566:1;16555:9;16551:17;16544:47;16608:131;16734:4;16608:131;:::i;:::-;16600:139;;16498:248;;;:::o;16752:419::-;;16956:2;16945:9;16941:18;16933:26;;17005:9;16999:4;16995:20;16991:1;16980:9;16976:17;16969:47;17033:131;17159:4;17033:131;:::i;:::-;17025:139;;16923:248;;;:::o;17177:222::-;;17308:2;17297:9;17293:18;17285:26;;17321:71;17389:1;17378:9;17374:17;17365:6;17321:71;:::i;:::-;17275:124;;;;:::o;17405:214::-;;17532:2;17521:9;17517:18;17509:26;;17545:67;17609:1;17598:9;17594:17;17585:6;17545:67;:::i;:::-;17499:120;;;;:::o;17625:283::-;;17691:2;17685:9;17675:19;;17733:4;17725:6;17721:17;17840:6;17828:10;17825:22;17804:18;17792:10;17789:34;17786:62;17783:2;;;17851:18;;:::i;:::-;17783:2;17891:10;17887:2;17880:22;17665:243;;;;:::o;17914:311::-;;18081:18;18073:6;18070:30;18067:2;;;18103:18;;:::i;:::-;18067:2;18153:4;18145:6;18141:17;18133:25;;18213:4;18207;18203:15;18195:23;;17996:229;;;:::o;18231:99::-;;18317:5;18311:12;18301:22;;18290:40;;;:::o;18336:169::-;;18454:6;18449:3;18442:19;18494:4;18489:3;18485:14;18470:29;;18432:73;;;;:::o;18511:305::-;;18570:20;18588:1;18570:20;:::i;:::-;18565:25;;18604:20;18622:1;18604:20;:::i;:::-;18599:25;;18758:1;18690:66;18686:74;18683:1;18680:81;18677:2;;;18764:18;;:::i;:::-;18677:2;18808:1;18805;18801:9;18794:16;;18555:261;;;;:::o;18822:191::-;;18882:20;18900:1;18882:20;:::i;:::-;18877:25;;18916:20;18934:1;18916:20;:::i;:::-;18911:25;;18955:1;18952;18949:8;18946:2;;;18960:18;;:::i;:::-;18946:2;19005:1;19002;18998:9;18990:17;;18867:146;;;;:::o;19019:96::-;;19085:24;19103:5;19085:24;:::i;:::-;19074:35;;19064:51;;;:::o;19121:90::-;;19198:5;19191:13;19184:21;19173:32;;19163:48;;;:::o;19217:126::-;;19294:42;19287:5;19283:54;19272:65;;19262:81;;;:::o;19349:77::-;;19415:5;19404:16;;19394:32;;;:::o;19432:86::-;;19507:4;19500:5;19496:16;19485:27;;19475:43;;;:::o;19524:307::-;19592:1;19602:113;19616:6;19613:1;19610:13;19602:113;;;19701:1;19696:3;19692:11;19686:18;19682:1;19677:3;19673:11;19666:39;19638:2;19635:1;19631:10;19626:15;;19602:113;;;19733:6;19730:1;19727:13;19724:2;;;19813:1;19804:6;19799:3;19795:16;19788:27;19724:2;19573:258;;;;:::o;19837:320::-;;19918:1;19912:4;19908:12;19898:22;;19965:1;19959:4;19955:12;19986:18;19976:2;;20042:4;20034:6;20030:17;20020:27;;19976:2;20104;20096:6;20093:14;20073:18;20070:38;20067:2;;;20123:18;;:::i;:::-;20067:2;19888:269;;;;:::o;20163:233::-;;20225:24;20243:5;20225:24;:::i;:::-;20216:33;;20271:66;20264:5;20261:77;20258:2;;;20341:18;;:::i;:::-;20258:2;20388:1;20381:5;20377:13;20370:20;;20206:190;;;:::o;20402:180::-;20450:77;20447:1;20440:88;20547:4;20544:1;20537:15;20571:4;20568:1;20561:15;20588:180;20636:77;20633:1;20626:88;20733:4;20730:1;20723:15;20757:4;20754:1;20747:15;20774:180;20822:77;20819:1;20812:88;20919:4;20916:1;20909:15;20943:4;20940:1;20933:15;20960:102;;21052:2;21048:7;21043:2;21036:5;21032:14;21028:28;21018:38;;21008:54;;;:::o;21068:122::-;21141:24;21159:5;21141:24;:::i;:::-;21134:5;21131:35;21121:2;;21180:1;21177;21170:12;21121:2;21111:79;:::o;21196:116::-;21266:21;21281:5;21266:21;:::i;:::-;21259:5;21256:32;21246:2;;21302:1;21299;21292:12;21246:2;21236:76;:::o;21318:122::-;21391:24;21409:5;21391:24;:::i;:::-;21384:5;21381:35;21371:2;;21430:1;21427;21420:12;21371:2;21361:79;:::o
Swarm Source
ipfs://cfc33cd49ba7592601caf3476199733d92a4ac3e834864dce846745ac4bdedef
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.