ERC-20
Overview
Max Total Supply
1,000,000,000,000 Wukong
Holders
133
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
167,771.639389503663423144 WukongValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
wukong
Compiler Version
v0.8.26+commit.8a97fa7a
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-08-20 */ // SPDX-License-Identifier: MIT pragma solidity ^0.8.0; // OpenZeppelin Contracts v4.4.1 (utils/Context.sol) abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } } // OpenZeppelin Contracts (last updated v4.9.0) (token/ERC20/IERC20.sol) interface IERC20 { event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address to, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address from, address to, uint256 amount) external returns (bool); } // OpenZeppelin Contracts (last updated v4.9.0) (token/ERC20/extensions/IERC20Metadata.sol) interface IERC20Metadata is IERC20 { function name() external view returns (string memory); function symbol() external view returns (string memory); function decimals() external view returns (uint8); } // OpenZeppelin Contracts (last updated v4.9.0) (token/ERC20/ERC20.sol) 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; constructor(string memory name_, string memory symbol_) { _name = name_; _symbol = symbol_; } function name() public view virtual override returns (string memory) { return _name; } function symbol() public view virtual override returns (string memory) { return _symbol; } function decimals() public view virtual override returns (uint8) { return 18; } function totalSupply() public view virtual override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view virtual override returns (uint256) { return _balances[account]; } function transfer(address to, uint256 amount) public virtual override returns (bool) { address owner = _msgSender(); _transfer(owner, to, amount); return true; } function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public virtual override returns (bool) { address owner = _msgSender(); _approve(owner, spender, amount); return true; } 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; } function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { address owner = _msgSender(); _approve(owner, spender, allowance(owner, spender) + addedValue); return true; } 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; } 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; _balances[to] += amount; } emit Transfer(from, to, amount); _afterTokenTransfer(from, to, amount); } function _mint(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: mint to the zero address"); _beforeTokenTransfer(address(0), account, amount); _totalSupply += amount; unchecked { _balances[account] += amount; } emit Transfer(address(0), account, amount); _afterTokenTransfer(address(0), account, amount); } function _burn(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: burn from the zero address"); _beforeTokenTransfer(account, address(0), amount); 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); } function _approve(address owner, address spender, uint256 amount) internal virtual { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _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); } } } function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual {} function _afterTokenTransfer(address from, address to, uint256 amount) internal virtual {} } // OpenZeppelin Contracts (last updated v4.9.0) (access/Ownable.sol) abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor(address initialOwner) { _transferOwnership(initialOwner); } modifier onlyOwner() { _checkOwner(); _; } function owner() public view virtual returns (address) { return _owner; } function _checkOwner() internal view virtual { require(owner() == _msgSender(), "Ownable: caller is not the owner"); } function renounceOwnership() public virtual onlyOwner { _transferOwnership(address(0)); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _transferOwnership(newOwner); } function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } } // OpenZeppelin Contracts (last updated v4.9.0) (security/ReentrancyGuard.sol) abstract contract ReentrancyGuard { uint256 private constant _NOT_ENTERED = 1; uint256 private constant _ENTERED = 2; uint256 private _status; constructor() { _status = _NOT_ENTERED; } modifier nonReentrant() { _nonReentrantBefore(); _; _nonReentrantAfter(); } function _nonReentrantBefore() private { require(_status != _ENTERED, "ReentrancyGuard: reentrant call"); _status = _ENTERED; } function _nonReentrantAfter() private { _status = _NOT_ENTERED; } } // OpenZeppelin Contracts (last updated v4.9.0) (token/ERC20/utils/SafeERC20.sol) library SafeERC20 { using Address for address; function safeTransfer(IERC20 token, address to, uint256 value) internal { _callOptionalReturn(token, abi.encodeWithSelector(token.transfer.selector, to, value)); } function safeTransferFrom(IERC20 token, address from, address to, uint256 value) internal { _callOptionalReturn(token, abi.encodeWithSelector(token.transferFrom.selector, from, to, value)); } function safeApprove(IERC20 token, address spender, uint256 value) internal { require((value == 0) || (token.allowance(address(this), spender) == 0), "SafeERC20: approve from non-zero to non-zero allowance" ); _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, value)); } function safeIncreaseAllowance(IERC20 token, address spender, uint256 value) internal { uint256 newAllowance = token.allowance(address(this), spender) + value; _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance)); } function safeDecreaseAllowance(IERC20 token, address spender, uint256 value) internal { unchecked { uint256 oldAllowance = token.allowance(address(this), spender); require(oldAllowance >= value, "SafeERC20: decreased allowance below zero"); uint256 newAllowance = oldAllowance - value; _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance)); } } function _callOptionalReturn(IERC20 token, bytes memory data) private { bytes memory returndata = address(token).functionCall(data, "SafeERC20: low-level call failed"); if (returndata.length > 0) { require(abi.decode(returndata, (bool)), "SafeERC20: ERC20 operation did not succeed"); } } } // OpenZeppelin Contracts (last updated v4.9.0) (utils/Address.sol) library Address { function isContract(address account) internal view returns (bool) { return account.code.length > 0; } function sendValue(address payable recipient, uint256 amount) internal { require(address(this).balance >= amount, "Address: insufficient balance"); (bool success, ) = recipient.call{value: amount}(""); require(success, "Address: unable to send value, recipient may have reverted"); } function functionCall(address target, bytes memory data) internal returns (bytes memory) { return functionCallWithValue(target, data, 0, "Address: low-level call failed"); } function functionCall( address target, bytes memory data, string memory errorMessage ) internal returns (bytes memory) { return functionCallWithValue(target, data, 0, errorMessage); } function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) { return functionCallWithValue(target, data, value, "Address: low-level call with value failed"); } function functionCallWithValue( address target, bytes memory data, uint256 value, string memory errorMessage ) internal returns (bytes memory) { require(address(this).balance >= value, "Address: insufficient balance for call"); (bool success, bytes memory returndata) = target.call{value: value}(data); return verifyCallResultFromTarget(target, success, returndata, errorMessage); } function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) { return functionStaticCall(target, data, "Address: low-level static call failed"); } function functionStaticCall( address target, bytes memory data, string memory errorMessage ) internal view returns (bytes memory) { (bool success, bytes memory returndata) = target.staticcall(data); return verifyCallResultFromTarget(target, success, returndata, errorMessage); } function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) { return functionDelegateCall(target, data, "Address: low-level delegate call failed"); } function functionDelegateCall( address target, bytes memory data, string memory errorMessage ) internal returns (bytes memory) { (bool success, bytes memory returndata) = target.delegatecall(data); return verifyCallResultFromTarget(target, success, returndata, errorMessage); } function verifyCallResultFromTarget( address target, bool success, bytes memory returndata, string memory errorMessage ) internal view returns (bytes memory) { if (success) { if (returndata.length == 0) { require(isContract(target), "Address: call to non-contract"); } return returndata; } else { _revert(returndata, errorMessage); } } function verifyCallResult( bool success, bytes memory returndata, string memory errorMessage ) internal pure returns (bytes memory) { if (success) { return returndata; } else { _revert(returndata, errorMessage); } } function _revert(bytes memory returndata, string memory errorMessage) private pure { if (returndata.length > 0) { assembly { let returndata_size := mload(returndata) revert(add(32, returndata), returndata_size) } } else { revert(errorMessage); } } } interface IUniswapV2Router02 { function factory() external pure returns (address); function WETH() external pure returns (address); function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } contract wukong is ERC20, Ownable, ReentrancyGuard { using SafeERC20 for IERC20; IUniswapV2Router02 public uniswapV2Router; address public uniswapV2Pair; bool public tradingEnabled = false; uint256 public sellFeePercentage = 0; uint256 public swapPortion = 0; uint256 public VitalikPortion = 0; mapping(address => bool) public isExcludedFromFees; mapping(address => bool) public isFeeApplicable; address public constant deadAddress = 0x000000000000000000000000000000000000dEaD; address public immutable WETH; address public constant vitalikAddress = 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045; uint256 public accumulatedFees; uint256 public constant MINIMUM_SWAP_AMOUNT = 0.1 ether; bool private swapping; event ExcludeFromFees(address indexed account, bool isExcluded); event SetFeeApplicable(address indexed account, bool isFeeApplicable); event SetSellFeePercentage(uint256 sellFeePercentage); event SetSwapPortion(uint256 swapPortion); event EnableTrading(); event SwapAndLiquify(uint256 tokensSwapped, uint256 ethReceived); event TokensSentToVitalik(uint256 amount); constructor(string memory name, string memory symbol, uint256 initialSupply) ERC20(name, symbol) Ownable(msg.sender) { _mint(msg.sender, initialSupply * 10 ** decimals()); IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); WETH = _uniswapV2Router.WETH(); uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), WETH); uniswapV2Router = _uniswapV2Router; isExcludedFromFees[owner()] = true; isExcludedFromFees[address(this)] = true; isExcludedFromFees[deadAddress] = true; } function transfer(address recipient, uint256 amount) public virtual override returns (bool) { _customTransfer(_msgSender(), recipient, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) { _customTransfer(sender, recipient, amount); uint256 currentAllowance = allowance(sender, _msgSender()); require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance"); unchecked { _approve(sender, _msgSender(), currentAllowance - amount); } return true; } function _customTransfer( address sender, address recipient, uint256 amount ) internal { require(tradingEnabled || isExcludedFromFees[sender] || isExcludedFromFees[recipient], "Trading is not enabled yet"); require(!swapping, "Transfer failed due to internal swap in progress"); if (isExcludedFromFees[sender] || isExcludedFromFees[recipient] || !isFeeApplicable[sender]) { _transfer(sender, recipient, amount); } else { uint256 feeAmount = (amount * sellFeePercentage) / 100; uint256 transferAmount = amount - feeAmount; uint256 swapAmount = (feeAmount * swapPortion * 100 ) / (swapPortion + VitalikPortion) / 100; uint256 vitalikAmount = (feeAmount * VitalikPortion * 100 ) / (swapPortion + VitalikPortion) / 100; _transfer(sender, address(this), swapAmount); _transfer(sender, vitalikAddress, vitalikAmount); _transfer(sender, recipient, transferAmount); accumulatedFees += swapAmount; if (accumulatedFees >= MINIMUM_SWAP_AMOUNT) { swapping = true; _swapTokensForEth(); swapping = false; } emit TokensSentToVitalik(vitalikAmount); } } function _swapTokensForEth() private nonReentrant { uint256 tokenAmount = accumulatedFees; accumulatedFees = 0; address[] memory path = new address[](2); path[0] = address(this); path[1] = WETH; _approve(address(this), address(uniswapV2Router), tokenAmount); uint256 initialETHBalance = address(this).balance; uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); uint256 ethReceived = address(this).balance - initialETHBalance; emit SwapAndLiquify(tokenAmount, ethReceived); } function setBulkExcludeFromFees(address[] memory accounts, bool excluded) public onlyOwner { for (uint256 i = 0; i < accounts.length; i++) { isExcludedFromFees[accounts[i]] = excluded; emit ExcludeFromFees(accounts[i], excluded); } } function setBulkFeeApplicable(address[] memory accounts, bool applicable) public onlyOwner { for (uint256 i = 0; i < accounts.length; i++) { if(accounts[i] == uniswapV2Pair) continue; isFeeApplicable[accounts[i]] = applicable; emit SetFeeApplicable(accounts[i], applicable); } } function setSellFeePercentage(uint256 _sellFeePercentage) public onlyOwner { require(_sellFeePercentage <= 100, "Fee percentage cannot exceed 100"); sellFeePercentage = _sellFeePercentage; emit SetSellFeePercentage(_sellFeePercentage); } function setSwapPortion(uint256 _swapPortion) public onlyOwner { require(_swapPortion <= 100, "Swap portion cannot exceed 100"); swapPortion = _swapPortion; emit SetSwapPortion(_swapPortion); } function setVitalikPortion(uint256 _swapPortion) public onlyOwner { require(_swapPortion <= 100, "Swap portion cannot exceed 100"); VitalikPortion = _swapPortion; } function enableTrading() public onlyOwner { tradingEnabled = true; emit EnableTrading(); } receive() external payable {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"symbol","type":"string"},{"internalType":"uint256","name":"initialSupply","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":[],"name":"EnableTrading","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"isExcluded","type":"bool"}],"name":"ExcludeFromFees","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":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"isFeeApplicable","type":"bool"}],"name":"SetFeeApplicable","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"sellFeePercentage","type":"uint256"}],"name":"SetSellFeePercentage","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"swapPortion","type":"uint256"}],"name":"SetSwapPortion","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TokensSentToVitalik","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":"MINIMUM_SWAP_AMOUNT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"VitalikPortion","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"WETH","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"accumulatedFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"deadAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isExcludedFromFees","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isFeeApplicable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":[],"name":"sellFeePercentage","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"setBulkExcludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"applicable","type":"bool"}],"name":"setBulkFeeApplicable","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_sellFeePercentage","type":"uint256"}],"name":"setSellFeePercentage","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_swapPortion","type":"uint256"}],"name":"setSwapPortion","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_swapPortion","type":"uint256"}],"name":"setVitalikPortion","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapPortion","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":[],"name":"tradingEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"vitalikAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60a06040525f600860146101000a81548160ff0219169083151502179055505f6009555f600a555f600b55348015610035575f80fd5b50604051613b6d380380613b6d833981810160405281019061005791906107d6565b33838381600390816100699190610a62565b5080600490816100799190610a62565b50505061008b816103ff60201b60201c565b5060016006819055506100c8336100a66104c260201b60201c565b600a6100b29190610c99565b836100bd9190610ce3565b6104ca60201b60201c565b5f737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610129573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061014d9190610d7e565b73ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101c9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101ed9190610d7e565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396306080516040518363ffffffff1660e01b8152600401610229929190610db8565b6020604051808303815f875af1158015610245573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102699190610d7e565b60085f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060075f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600c5f6102fb61062460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600c5f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600c5f61dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050505050610eb2565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f6012905090565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610538576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161052f90610e39565b60405180910390fd5b6105495f838361064c60201b60201c565b8060025f82825461055a9190610e57565b92505081905550805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516106079190610e99565b60405180910390a36106205f838361065160201b60201c565b5050565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b505050565b505050565b5f604051905090565b5f80fd5b5f80fd5b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6106b58261066f565b810181811067ffffffffffffffff821117156106d4576106d361067f565b5b80604052505050565b5f6106e6610656565b90506106f282826106ac565b919050565b5f67ffffffffffffffff8211156107115761071061067f565b5b61071a8261066f565b9050602081019050919050565b8281835e5f83830152505050565b5f610747610742846106f7565b6106dd565b9050828152602081018484840111156107635761076261066b565b5b61076e848285610727565b509392505050565b5f82601f83011261078a57610789610667565b5b815161079a848260208601610735565b91505092915050565b5f819050919050565b6107b5816107a3565b81146107bf575f80fd5b50565b5f815190506107d0816107ac565b92915050565b5f805f606084860312156107ed576107ec61065f565b5b5f84015167ffffffffffffffff81111561080a57610809610663565b5b61081686828701610776565b935050602084015167ffffffffffffffff81111561083757610836610663565b5b61084386828701610776565b9250506040610854868287016107c2565b9150509250925092565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806108ac57607f821691505b6020821081036108bf576108be610868565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026109217fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826108e6565b61092b86836108e6565b95508019841693508086168417925050509392505050565b5f819050919050565b5f61096661096161095c846107a3565b610943565b6107a3565b9050919050565b5f819050919050565b61097f8361094c565b61099361098b8261096d565b8484546108f2565b825550505050565b5f90565b6109a761099b565b6109b2818484610976565b505050565b5b818110156109d5576109ca5f8261099f565b6001810190506109b8565b5050565b601f821115610a1a576109eb816108c5565b6109f4846108d7565b81016020851015610a03578190505b610a17610a0f856108d7565b8301826109b7565b50505b505050565b5f82821c905092915050565b5f610a3a5f1984600802610a1f565b1980831691505092915050565b5f610a528383610a2b565b9150826002028217905092915050565b610a6b8261085e565b67ffffffffffffffff811115610a8457610a8361067f565b5b610a8e8254610895565b610a998282856109d9565b5f60209050601f831160018114610aca575f8415610ab8578287015190505b610ac28582610a47565b865550610b29565b601f198416610ad8866108c5565b5f5b82811015610aff57848901518255600182019150602085019450602081019050610ada565b86831015610b1c5784890151610b18601f891682610a2b565b8355505b6001600288020188555050505b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115610bb357808604811115610b8f57610b8e610b31565b5b6001851615610b9e5780820291505b8081029050610bac85610b5e565b9450610b73565b94509492505050565b5f82610bcb5760019050610c86565b81610bd8575f9050610c86565b8160018114610bee5760028114610bf857610c27565b6001915050610c86565b60ff841115610c0a57610c09610b31565b5b8360020a915084821115610c2157610c20610b31565b5b50610c86565b5060208310610133831016604e8410600b8410161715610c5c5782820a905083811115610c5757610c56610b31565b5b610c86565b610c698484846001610b6a565b92509050818404811115610c8057610c7f610b31565b5b81810290505b9392505050565b5f60ff82169050919050565b5f610ca3826107a3565b9150610cae83610c8d565b9250610cdb7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484610bbc565b905092915050565b5f610ced826107a3565b9150610cf8836107a3565b9250828202610d06816107a3565b91508282048414831517610d1d57610d1c610b31565b5b5092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610d4d82610d24565b9050919050565b610d5d81610d43565b8114610d67575f80fd5b50565b5f81519050610d7881610d54565b92915050565b5f60208284031215610d9357610d9261065f565b5b5f610da084828501610d6a565b91505092915050565b610db281610d43565b82525050565b5f604082019050610dcb5f830185610da9565b610dd86020830184610da9565b9392505050565b5f82825260208201905092915050565b7f45524332303a206d696e7420746f20746865207a65726f2061646472657373005f82015250565b5f610e23601f83610ddf565b9150610e2e82610def565b602082019050919050565b5f6020820190508181035f830152610e5081610e17565b9050919050565b5f610e61826107a3565b9150610e6c836107a3565b9250828201905080821115610e8457610e83610b31565b5b92915050565b610e93816107a3565b82525050565b5f602082019050610eac5f830184610e8a565b92915050565b608051612c9c610ed15f395f8181610ef30152611b120152612c9c5ff3fe6080604052600436106101f1575f3560e01c8063587f5ed71161010c578063a457c2d71161009f578063d16f8de91161006e578063d16f8de9146106f4578063dd62ed3e1461071e578063e208a9391461075a578063f2fde38b14610784578063f63f98a6146107ac576101f8565b8063a457c2d71461062a578063a9059cbb14610666578063ad5c4648146106a2578063c2be2c92146106cc576101f8565b80638a8c523c116100db5780638a8c523c146105985780638da5cb5b146105ae57806395245b56146105d857806395d89b4114610600576101f8565b8063587f5ed7146104f257806370a082311461051c578063715018a6146105585780637a65a3b81461056e576101f8565b806327c8f8351161018457806346e110611161015357806346e110611461043a57806349bd5a5e146104625780634ada218b1461048c5780634fbee193146104b6576101f8565b806327c8f83514610382578063313ce567146103ac57806339509351146103d65780633aa646fe14610412576101f8565b806318160ddd116101c057806318160ddd146102b6578063186dbffb146102e05780631aae9b4f1461030a57806323b872dd14610346576101f8565b806306fdde03146101fc578063095ea7b31461022657806312ae15c6146102625780631694505e1461028c576101f8565b366101f857005b5f80fd5b348015610207575f80fd5b506102106107d4565b60405161021d9190611d67565b60405180910390f35b348015610231575f80fd5b5061024c60048036038101906102479190611e25565b610864565b6040516102599190611e7d565b60405180910390f35b34801561026d575f80fd5b50610276610886565b6040516102839190611ea5565b60405180910390f35b348015610297575f80fd5b506102a0610892565b6040516102ad9190611f19565b60405180910390f35b3480156102c1575f80fd5b506102ca6108b7565b6040516102d79190611ea5565b60405180910390f35b3480156102eb575f80fd5b506102f46108c0565b6040516103019190611ea5565b60405180910390f35b348015610315575f80fd5b50610330600480360381019061032b9190611f32565b6108c6565b60405161033d9190611e7d565b60405180910390f35b348015610351575f80fd5b5061036c60048036038101906103679190611f5d565b6108e3565b6040516103799190611e7d565b60405180910390f35b34801561038d575f80fd5b50610396610966565b6040516103a39190611fbc565b60405180910390f35b3480156103b7575f80fd5b506103c061096c565b6040516103cd9190611ff0565b60405180910390f35b3480156103e1575f80fd5b506103fc60048036038101906103f79190611e25565b610974565b6040516104099190611e7d565b60405180910390f35b34801561041d575f80fd5b5061043860048036038101906104339190612009565b6109aa565b005b348015610445575f80fd5b50610460600480360381019061045b919061219e565b610a37565b005b34801561046d575f80fd5b50610476610ba2565b6040516104839190611fbc565b60405180910390f35b348015610497575f80fd5b506104a0610bc7565b6040516104ad9190611e7d565b60405180910390f35b3480156104c1575f80fd5b506104dc60048036038101906104d79190611f32565b610bda565b6040516104e99190611e7d565b60405180910390f35b3480156104fd575f80fd5b50610506610bf7565b6040516105139190611ea5565b60405180910390f35b348015610527575f80fd5b50610542600480360381019061053d9190611f32565b610bfd565b60405161054f9190611ea5565b60405180910390f35b348015610563575f80fd5b5061056c610c42565b005b348015610579575f80fd5b50610582610c55565b60405161058f9190611ea5565b60405180910390f35b3480156105a3575f80fd5b506105ac610c5b565b005b3480156105b9575f80fd5b506105c2610cac565b6040516105cf9190611fbc565b60405180910390f35b3480156105e3575f80fd5b506105fe60048036038101906105f9919061219e565b610cd4565b005b34801561060b575f80fd5b50610614610dcf565b6040516106219190611d67565b60405180910390f35b348015610635575f80fd5b50610650600480360381019061064b9190611e25565b610e5f565b60405161065d9190611e7d565b60405180910390f35b348015610671575f80fd5b5061068c60048036038101906106879190611e25565b610ed4565b6040516106999190611e7d565b60405180910390f35b3480156106ad575f80fd5b506106b6610ef1565b6040516106c39190611fbc565b60405180910390f35b3480156106d7575f80fd5b506106f260048036038101906106ed9190612009565b610f15565b005b3480156106ff575f80fd5b50610708610f6b565b6040516107159190611fbc565b60405180910390f35b348015610729575f80fd5b50610744600480360381019061073f91906121f8565b610f83565b6040516107519190611ea5565b60405180910390f35b348015610765575f80fd5b5061076e611005565b60405161077b9190611ea5565b60405180910390f35b34801561078f575f80fd5b506107aa60048036038101906107a59190611f32565b61100b565b005b3480156107b7575f80fd5b506107d260048036038101906107cd9190612009565b61108d565b005b6060600380546107e390612263565b80601f016020809104026020016040519081016040528092919081815260200182805461080f90612263565b801561085a5780601f106108315761010080835404028352916020019161085a565b820191905f5260205f20905b81548152906001019060200180831161083d57829003601f168201915b5050505050905090565b5f8061086e61111a565b905061087b818585611121565b600191505092915050565b67016345785d8a000081565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f600254905090565b600b5481565b600d602052805f5260405f205f915054906101000a900460ff1681565b5f6108ef8484846112e4565b5f610901856108fc61111a565b610f83565b905082811015610946576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161093d90612303565b60405180910390fd5b61095a8561095261111a565b858403611121565b60019150509392505050565b61dead81565b5f6012905090565b5f8061097e61111a565b905061099f8185856109908589610f83565b61099a919061234e565b611121565b600191505092915050565b6109b26116b3565b60648111156109f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109ed906123cb565b60405180910390fd5b80600a819055507feabd3b3b7a8ca5058b4778ca7daf516ebc6d5da7b6259714b32fc49ecdb110b181604051610a2c9190611ea5565b60405180910390a150565b610a3f6116b3565b5f5b8251811015610b9d5760085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16838281518110610a9557610a946123e9565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff160315610b905781600d5f858481518110610ad057610acf6123e9565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550828181518110610b3a57610b396123e9565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff167fd31c700151312b600f1f92a612fd99493ee4bfede71bb43f9eef36556c56cf9783604051610b879190611e7d565b60405180910390a25b8080600101915050610a41565b505050565b60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600860149054906101000a900460ff1681565b600c602052805f5260405f205f915054906101000a900460ff1681565b600e5481565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610c4a6116b3565b610c535f611731565b565b600a5481565b610c636116b3565b6001600860146101000a81548160ff0219169083151502179055507f1d97b7cdf6b6f3405cbe398b69512e5419a0ce78232b6e9c6ffbf1466774bd8d60405160405180910390a1565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610cdc6116b3565b5f5b8251811015610dca5781600c5f858481518110610cfe57610cfd6123e9565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550828181518110610d6857610d676123e9565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df783604051610db59190611e7d565b60405180910390a28080600101915050610cde565b505050565b606060048054610dde90612263565b80601f0160208091040260200160405190810160405280929190818152602001828054610e0a90612263565b8015610e555780601f10610e2c57610100808354040283529160200191610e55565b820191905f5260205f20905b815481529060010190602001808311610e3857829003601f168201915b5050505050905090565b5f80610e6961111a565b90505f610e768286610f83565b905083811015610ebb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eb290612486565b60405180910390fd5b610ec88286868403611121565b60019250505092915050565b5f610ee7610ee061111a565b84846112e4565b6001905092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b610f1d6116b3565b6064811115610f61576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f58906123cb565b60405180910390fd5b80600b8190555050565b73d8da6bf26964af9d7eed9e03e53415d37aa9604581565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b60095481565b6110136116b3565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611081576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161107890612514565b60405180910390fd5b61108a81611731565b50565b6110956116b3565b60648111156110d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110d09061257c565b60405180910390fd5b806009819055507fe3df874847a4f34097ac2b88ee1b562bbe64c71fe1168476095c1ec53110aab78160405161110f9190611ea5565b60405180910390a150565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361118f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111869061260a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036111fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111f490612698565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112d79190611ea5565b60405180910390a3505050565b600860149054906101000a900460ff16806113455750600c5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b806113965750600c5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b6113d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113cc90612700565b60405180910390fd5b600f5f9054906101000a900460ff1615611424576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141b9061278e565b60405180910390fd5b600c5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16806114bf5750600c5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b806115115750600d5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15611526576115218383836117f4565b6116ae565b5f60646009548361153791906127ac565b611541919061281a565b90505f8183611550919061284a565b90505f6064600b54600a54611565919061234e565b6064600a548661157591906127ac565b61157f91906127ac565b611589919061281a565b611593919061281a565b90505f6064600b54600a546115a8919061234e565b6064600b54876115b891906127ac565b6115c291906127ac565b6115cc919061281a565b6115d6919061281a565b90506115e38730846117f4565b6116028773d8da6bf26964af9d7eed9e03e53415d37aa96045836117f4565b61160d8787856117f4565b81600e5f82825461161e919061234e565b9250508190555067016345785d8a0000600e5410611672576001600f5f6101000a81548160ff021916908315150217905550611658611a60565b5f600f5f6101000a81548160ff0219169083151502179055505b7f3a8252748ffa3c9535c6438799ce1f576f36a016ab530f354e1432db42713c79816040516116a19190611ea5565b60405180910390a1505050505b505050565b6116bb61111a565b73ffffffffffffffffffffffffffffffffffffffff166116d9610cac565b73ffffffffffffffffffffffffffffffffffffffff161461172f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611726906128c7565b60405180910390fd5b565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611862576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161185990612955565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036118d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118c7906129e3565b60405180910390fd5b6118db838383611c94565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508181101561195e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161195590612a71565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550815f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611a479190611ea5565b60405180910390a3611a5a848484611c99565b50505050565b611a68611c9e565b5f600e5490505f600e819055505f600267ffffffffffffffff811115611a9157611a90612038565b5b604051908082528060200260200182016040528015611abf5781602001602082028036833780820191505090505b50905030815f81518110611ad657611ad56123e9565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110611b4557611b446123e9565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611bab3060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611121565b5f47905060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947845f8530426040518663ffffffff1660e01b8152600401611c11959493929190612b7f565b5f604051808303815f87803b158015611c28575f80fd5b505af1158015611c3a573d5f803e3d5ffd5b505050505f8147611c4b919061284a565b90507f28fc98272ce761178794ad6768050fea1648e07f1e2ffe15afd3a290f83814868482604051611c7e929190612bd7565b60405180910390a150505050611c92611ced565b565b505050565b505050565b600260065403611ce3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cda90612c48565b60405180910390fd5b6002600681905550565b6001600681905550565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611d3982611cf7565b611d438185611d01565b9350611d53818560208601611d11565b611d5c81611d1f565b840191505092915050565b5f6020820190508181035f830152611d7f8184611d2f565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611dc182611d98565b9050919050565b611dd181611db7565b8114611ddb575f80fd5b50565b5f81359050611dec81611dc8565b92915050565b5f819050919050565b611e0481611df2565b8114611e0e575f80fd5b50565b5f81359050611e1f81611dfb565b92915050565b5f8060408385031215611e3b57611e3a611d90565b5b5f611e4885828601611dde565b9250506020611e5985828601611e11565b9150509250929050565b5f8115159050919050565b611e7781611e63565b82525050565b5f602082019050611e905f830184611e6e565b92915050565b611e9f81611df2565b82525050565b5f602082019050611eb85f830184611e96565b92915050565b5f819050919050565b5f611ee1611edc611ed784611d98565b611ebe565b611d98565b9050919050565b5f611ef282611ec7565b9050919050565b5f611f0382611ee8565b9050919050565b611f1381611ef9565b82525050565b5f602082019050611f2c5f830184611f0a565b92915050565b5f60208284031215611f4757611f46611d90565b5b5f611f5484828501611dde565b91505092915050565b5f805f60608486031215611f7457611f73611d90565b5b5f611f8186828701611dde565b9350506020611f9286828701611dde565b9250506040611fa386828701611e11565b9150509250925092565b611fb681611db7565b82525050565b5f602082019050611fcf5f830184611fad565b92915050565b5f60ff82169050919050565b611fea81611fd5565b82525050565b5f6020820190506120035f830184611fe1565b92915050565b5f6020828403121561201e5761201d611d90565b5b5f61202b84828501611e11565b91505092915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61206e82611d1f565b810181811067ffffffffffffffff8211171561208d5761208c612038565b5b80604052505050565b5f61209f611d87565b90506120ab8282612065565b919050565b5f67ffffffffffffffff8211156120ca576120c9612038565b5b602082029050602081019050919050565b5f80fd5b5f6120f16120ec846120b0565b612096565b90508083825260208201905060208402830185811115612114576121136120db565b5b835b8181101561213d57806121298882611dde565b845260208401935050602081019050612116565b5050509392505050565b5f82601f83011261215b5761215a612034565b5b813561216b8482602086016120df565b91505092915050565b61217d81611e63565b8114612187575f80fd5b50565b5f8135905061219881612174565b92915050565b5f80604083850312156121b4576121b3611d90565b5b5f83013567ffffffffffffffff8111156121d1576121d0611d94565b5b6121dd85828601612147565b92505060206121ee8582860161218a565b9150509250929050565b5f806040838503121561220e5761220d611d90565b5b5f61221b85828601611dde565b925050602061222c85828601611dde565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061227a57607f821691505b60208210810361228d5761228c612236565b5b50919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320615f8201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b5f6122ed602883611d01565b91506122f882612293565b604082019050919050565b5f6020820190508181035f83015261231a816122e1565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61235882611df2565b915061236383611df2565b925082820190508082111561237b5761237a612321565b5b92915050565b7f5377617020706f7274696f6e2063616e6e6f74206578636565642031303000005f82015250565b5f6123b5601e83611d01565b91506123c082612381565b602082019050919050565b5f6020820190508181035f8301526123e2816123a9565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f612470602583611d01565b915061247b82612416565b604082019050919050565b5f6020820190508181035f83015261249d81612464565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f6124fe602683611d01565b9150612509826124a4565b604082019050919050565b5f6020820190508181035f83015261252b816124f2565b9050919050565b7f4665652070657263656e746167652063616e6e6f7420657863656564203130305f82015250565b5f612566602083611d01565b915061257182612532565b602082019050919050565b5f6020820190508181035f8301526125938161255a565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6125f4602483611d01565b91506125ff8261259a565b604082019050919050565b5f6020820190508181035f830152612621816125e8565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612682602283611d01565b915061268d82612628565b604082019050919050565b5f6020820190508181035f8301526126af81612676565b9050919050565b7f54726164696e67206973206e6f7420656e61626c6564207965740000000000005f82015250565b5f6126ea601a83611d01565b91506126f5826126b6565b602082019050919050565b5f6020820190508181035f830152612717816126de565b9050919050565b7f5472616e73666572206661696c65642064756520746f20696e7465726e616c205f8201527f7377617020696e2070726f677265737300000000000000000000000000000000602082015250565b5f612778603083611d01565b91506127838261271e565b604082019050919050565b5f6020820190508181035f8301526127a58161276c565b9050919050565b5f6127b682611df2565b91506127c183611df2565b92508282026127cf81611df2565b915082820484148315176127e6576127e5612321565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61282482611df2565b915061282f83611df2565b92508261283f5761283e6127ed565b5b828204905092915050565b5f61285482611df2565b915061285f83611df2565b925082820390508181111561287757612876612321565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6128b1602083611d01565b91506128bc8261287d565b602082019050919050565b5f6020820190508181035f8301526128de816128a5565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f61293f602583611d01565b915061294a826128e5565b604082019050919050565b5f6020820190508181035f83015261296c81612933565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f6129cd602383611d01565b91506129d882612973565b604082019050919050565b5f6020820190508181035f8301526129fa816129c1565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f612a5b602683611d01565b9150612a6682612a01565b604082019050919050565b5f6020820190508181035f830152612a8881612a4f565b9050919050565b5f819050919050565b5f612ab2612aad612aa884612a8f565b611ebe565b611df2565b9050919050565b612ac281612a98565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612afa81611db7565b82525050565b5f612b0b8383612af1565b60208301905092915050565b5f602082019050919050565b5f612b2d82612ac8565b612b378185612ad2565b9350612b4283612ae2565b805f5b83811015612b72578151612b598882612b00565b9750612b6483612b17565b925050600181019050612b45565b5085935050505092915050565b5f60a082019050612b925f830188611e96565b612b9f6020830187612ab9565b8181036040830152612bb18186612b23565b9050612bc06060830185611fad565b612bcd6080830184611e96565b9695505050505050565b5f604082019050612bea5f830185611e96565b612bf76020830184611e96565b9392505050565b7f5265656e7472616e637947756172643a207265656e7472616e742063616c6c005f82015250565b5f612c32601f83611d01565b9150612c3d82612bfe565b602082019050919050565b5f6020820190508181035f830152612c5f81612c26565b905091905056fea2646970667358221220b898eb37b0607490aa1dd81f46e715d0141a9a3199b649cc95013c79887638ec64736f6c634300081a0033000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000e8d4a51000000000000000000000000000000000000000000000000000000000000000000f426c61636b4d79746857756b6f6e670000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000657756b6f6e670000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x6080604052600436106101f1575f3560e01c8063587f5ed71161010c578063a457c2d71161009f578063d16f8de91161006e578063d16f8de9146106f4578063dd62ed3e1461071e578063e208a9391461075a578063f2fde38b14610784578063f63f98a6146107ac576101f8565b8063a457c2d71461062a578063a9059cbb14610666578063ad5c4648146106a2578063c2be2c92146106cc576101f8565b80638a8c523c116100db5780638a8c523c146105985780638da5cb5b146105ae57806395245b56146105d857806395d89b4114610600576101f8565b8063587f5ed7146104f257806370a082311461051c578063715018a6146105585780637a65a3b81461056e576101f8565b806327c8f8351161018457806346e110611161015357806346e110611461043a57806349bd5a5e146104625780634ada218b1461048c5780634fbee193146104b6576101f8565b806327c8f83514610382578063313ce567146103ac57806339509351146103d65780633aa646fe14610412576101f8565b806318160ddd116101c057806318160ddd146102b6578063186dbffb146102e05780631aae9b4f1461030a57806323b872dd14610346576101f8565b806306fdde03146101fc578063095ea7b31461022657806312ae15c6146102625780631694505e1461028c576101f8565b366101f857005b5f80fd5b348015610207575f80fd5b506102106107d4565b60405161021d9190611d67565b60405180910390f35b348015610231575f80fd5b5061024c60048036038101906102479190611e25565b610864565b6040516102599190611e7d565b60405180910390f35b34801561026d575f80fd5b50610276610886565b6040516102839190611ea5565b60405180910390f35b348015610297575f80fd5b506102a0610892565b6040516102ad9190611f19565b60405180910390f35b3480156102c1575f80fd5b506102ca6108b7565b6040516102d79190611ea5565b60405180910390f35b3480156102eb575f80fd5b506102f46108c0565b6040516103019190611ea5565b60405180910390f35b348015610315575f80fd5b50610330600480360381019061032b9190611f32565b6108c6565b60405161033d9190611e7d565b60405180910390f35b348015610351575f80fd5b5061036c60048036038101906103679190611f5d565b6108e3565b6040516103799190611e7d565b60405180910390f35b34801561038d575f80fd5b50610396610966565b6040516103a39190611fbc565b60405180910390f35b3480156103b7575f80fd5b506103c061096c565b6040516103cd9190611ff0565b60405180910390f35b3480156103e1575f80fd5b506103fc60048036038101906103f79190611e25565b610974565b6040516104099190611e7d565b60405180910390f35b34801561041d575f80fd5b5061043860048036038101906104339190612009565b6109aa565b005b348015610445575f80fd5b50610460600480360381019061045b919061219e565b610a37565b005b34801561046d575f80fd5b50610476610ba2565b6040516104839190611fbc565b60405180910390f35b348015610497575f80fd5b506104a0610bc7565b6040516104ad9190611e7d565b60405180910390f35b3480156104c1575f80fd5b506104dc60048036038101906104d79190611f32565b610bda565b6040516104e99190611e7d565b60405180910390f35b3480156104fd575f80fd5b50610506610bf7565b6040516105139190611ea5565b60405180910390f35b348015610527575f80fd5b50610542600480360381019061053d9190611f32565b610bfd565b60405161054f9190611ea5565b60405180910390f35b348015610563575f80fd5b5061056c610c42565b005b348015610579575f80fd5b50610582610c55565b60405161058f9190611ea5565b60405180910390f35b3480156105a3575f80fd5b506105ac610c5b565b005b3480156105b9575f80fd5b506105c2610cac565b6040516105cf9190611fbc565b60405180910390f35b3480156105e3575f80fd5b506105fe60048036038101906105f9919061219e565b610cd4565b005b34801561060b575f80fd5b50610614610dcf565b6040516106219190611d67565b60405180910390f35b348015610635575f80fd5b50610650600480360381019061064b9190611e25565b610e5f565b60405161065d9190611e7d565b60405180910390f35b348015610671575f80fd5b5061068c60048036038101906106879190611e25565b610ed4565b6040516106999190611e7d565b60405180910390f35b3480156106ad575f80fd5b506106b6610ef1565b6040516106c39190611fbc565b60405180910390f35b3480156106d7575f80fd5b506106f260048036038101906106ed9190612009565b610f15565b005b3480156106ff575f80fd5b50610708610f6b565b6040516107159190611fbc565b60405180910390f35b348015610729575f80fd5b50610744600480360381019061073f91906121f8565b610f83565b6040516107519190611ea5565b60405180910390f35b348015610765575f80fd5b5061076e611005565b60405161077b9190611ea5565b60405180910390f35b34801561078f575f80fd5b506107aa60048036038101906107a59190611f32565b61100b565b005b3480156107b7575f80fd5b506107d260048036038101906107cd9190612009565b61108d565b005b6060600380546107e390612263565b80601f016020809104026020016040519081016040528092919081815260200182805461080f90612263565b801561085a5780601f106108315761010080835404028352916020019161085a565b820191905f5260205f20905b81548152906001019060200180831161083d57829003601f168201915b5050505050905090565b5f8061086e61111a565b905061087b818585611121565b600191505092915050565b67016345785d8a000081565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f600254905090565b600b5481565b600d602052805f5260405f205f915054906101000a900460ff1681565b5f6108ef8484846112e4565b5f610901856108fc61111a565b610f83565b905082811015610946576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161093d90612303565b60405180910390fd5b61095a8561095261111a565b858403611121565b60019150509392505050565b61dead81565b5f6012905090565b5f8061097e61111a565b905061099f8185856109908589610f83565b61099a919061234e565b611121565b600191505092915050565b6109b26116b3565b60648111156109f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109ed906123cb565b60405180910390fd5b80600a819055507feabd3b3b7a8ca5058b4778ca7daf516ebc6d5da7b6259714b32fc49ecdb110b181604051610a2c9190611ea5565b60405180910390a150565b610a3f6116b3565b5f5b8251811015610b9d5760085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16838281518110610a9557610a946123e9565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff160315610b905781600d5f858481518110610ad057610acf6123e9565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550828181518110610b3a57610b396123e9565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff167fd31c700151312b600f1f92a612fd99493ee4bfede71bb43f9eef36556c56cf9783604051610b879190611e7d565b60405180910390a25b8080600101915050610a41565b505050565b60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600860149054906101000a900460ff1681565b600c602052805f5260405f205f915054906101000a900460ff1681565b600e5481565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610c4a6116b3565b610c535f611731565b565b600a5481565b610c636116b3565b6001600860146101000a81548160ff0219169083151502179055507f1d97b7cdf6b6f3405cbe398b69512e5419a0ce78232b6e9c6ffbf1466774bd8d60405160405180910390a1565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610cdc6116b3565b5f5b8251811015610dca5781600c5f858481518110610cfe57610cfd6123e9565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550828181518110610d6857610d676123e9565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df783604051610db59190611e7d565b60405180910390a28080600101915050610cde565b505050565b606060048054610dde90612263565b80601f0160208091040260200160405190810160405280929190818152602001828054610e0a90612263565b8015610e555780601f10610e2c57610100808354040283529160200191610e55565b820191905f5260205f20905b815481529060010190602001808311610e3857829003601f168201915b5050505050905090565b5f80610e6961111a565b90505f610e768286610f83565b905083811015610ebb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eb290612486565b60405180910390fd5b610ec88286868403611121565b60019250505092915050565b5f610ee7610ee061111a565b84846112e4565b6001905092915050565b7f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281565b610f1d6116b3565b6064811115610f61576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f58906123cb565b60405180910390fd5b80600b8190555050565b73d8da6bf26964af9d7eed9e03e53415d37aa9604581565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b60095481565b6110136116b3565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611081576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161107890612514565b60405180910390fd5b61108a81611731565b50565b6110956116b3565b60648111156110d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110d09061257c565b60405180910390fd5b806009819055507fe3df874847a4f34097ac2b88ee1b562bbe64c71fe1168476095c1ec53110aab78160405161110f9190611ea5565b60405180910390a150565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361118f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111869061260a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036111fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111f490612698565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112d79190611ea5565b60405180910390a3505050565b600860149054906101000a900460ff16806113455750600c5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b806113965750600c5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b6113d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113cc90612700565b60405180910390fd5b600f5f9054906101000a900460ff1615611424576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141b9061278e565b60405180910390fd5b600c5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16806114bf5750600c5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b806115115750600d5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15611526576115218383836117f4565b6116ae565b5f60646009548361153791906127ac565b611541919061281a565b90505f8183611550919061284a565b90505f6064600b54600a54611565919061234e565b6064600a548661157591906127ac565b61157f91906127ac565b611589919061281a565b611593919061281a565b90505f6064600b54600a546115a8919061234e565b6064600b54876115b891906127ac565b6115c291906127ac565b6115cc919061281a565b6115d6919061281a565b90506115e38730846117f4565b6116028773d8da6bf26964af9d7eed9e03e53415d37aa96045836117f4565b61160d8787856117f4565b81600e5f82825461161e919061234e565b9250508190555067016345785d8a0000600e5410611672576001600f5f6101000a81548160ff021916908315150217905550611658611a60565b5f600f5f6101000a81548160ff0219169083151502179055505b7f3a8252748ffa3c9535c6438799ce1f576f36a016ab530f354e1432db42713c79816040516116a19190611ea5565b60405180910390a1505050505b505050565b6116bb61111a565b73ffffffffffffffffffffffffffffffffffffffff166116d9610cac565b73ffffffffffffffffffffffffffffffffffffffff161461172f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611726906128c7565b60405180910390fd5b565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611862576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161185990612955565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036118d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118c7906129e3565b60405180910390fd5b6118db838383611c94565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508181101561195e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161195590612a71565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550815f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611a479190611ea5565b60405180910390a3611a5a848484611c99565b50505050565b611a68611c9e565b5f600e5490505f600e819055505f600267ffffffffffffffff811115611a9157611a90612038565b5b604051908082528060200260200182016040528015611abf5781602001602082028036833780820191505090505b50905030815f81518110611ad657611ad56123e9565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281600181518110611b4557611b446123e9565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611bab3060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611121565b5f47905060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947845f8530426040518663ffffffff1660e01b8152600401611c11959493929190612b7f565b5f604051808303815f87803b158015611c28575f80fd5b505af1158015611c3a573d5f803e3d5ffd5b505050505f8147611c4b919061284a565b90507f28fc98272ce761178794ad6768050fea1648e07f1e2ffe15afd3a290f83814868482604051611c7e929190612bd7565b60405180910390a150505050611c92611ced565b565b505050565b505050565b600260065403611ce3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cda90612c48565b60405180910390fd5b6002600681905550565b6001600681905550565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611d3982611cf7565b611d438185611d01565b9350611d53818560208601611d11565b611d5c81611d1f565b840191505092915050565b5f6020820190508181035f830152611d7f8184611d2f565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611dc182611d98565b9050919050565b611dd181611db7565b8114611ddb575f80fd5b50565b5f81359050611dec81611dc8565b92915050565b5f819050919050565b611e0481611df2565b8114611e0e575f80fd5b50565b5f81359050611e1f81611dfb565b92915050565b5f8060408385031215611e3b57611e3a611d90565b5b5f611e4885828601611dde565b9250506020611e5985828601611e11565b9150509250929050565b5f8115159050919050565b611e7781611e63565b82525050565b5f602082019050611e905f830184611e6e565b92915050565b611e9f81611df2565b82525050565b5f602082019050611eb85f830184611e96565b92915050565b5f819050919050565b5f611ee1611edc611ed784611d98565b611ebe565b611d98565b9050919050565b5f611ef282611ec7565b9050919050565b5f611f0382611ee8565b9050919050565b611f1381611ef9565b82525050565b5f602082019050611f2c5f830184611f0a565b92915050565b5f60208284031215611f4757611f46611d90565b5b5f611f5484828501611dde565b91505092915050565b5f805f60608486031215611f7457611f73611d90565b5b5f611f8186828701611dde565b9350506020611f9286828701611dde565b9250506040611fa386828701611e11565b9150509250925092565b611fb681611db7565b82525050565b5f602082019050611fcf5f830184611fad565b92915050565b5f60ff82169050919050565b611fea81611fd5565b82525050565b5f6020820190506120035f830184611fe1565b92915050565b5f6020828403121561201e5761201d611d90565b5b5f61202b84828501611e11565b91505092915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61206e82611d1f565b810181811067ffffffffffffffff8211171561208d5761208c612038565b5b80604052505050565b5f61209f611d87565b90506120ab8282612065565b919050565b5f67ffffffffffffffff8211156120ca576120c9612038565b5b602082029050602081019050919050565b5f80fd5b5f6120f16120ec846120b0565b612096565b90508083825260208201905060208402830185811115612114576121136120db565b5b835b8181101561213d57806121298882611dde565b845260208401935050602081019050612116565b5050509392505050565b5f82601f83011261215b5761215a612034565b5b813561216b8482602086016120df565b91505092915050565b61217d81611e63565b8114612187575f80fd5b50565b5f8135905061219881612174565b92915050565b5f80604083850312156121b4576121b3611d90565b5b5f83013567ffffffffffffffff8111156121d1576121d0611d94565b5b6121dd85828601612147565b92505060206121ee8582860161218a565b9150509250929050565b5f806040838503121561220e5761220d611d90565b5b5f61221b85828601611dde565b925050602061222c85828601611dde565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061227a57607f821691505b60208210810361228d5761228c612236565b5b50919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320615f8201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b5f6122ed602883611d01565b91506122f882612293565b604082019050919050565b5f6020820190508181035f83015261231a816122e1565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61235882611df2565b915061236383611df2565b925082820190508082111561237b5761237a612321565b5b92915050565b7f5377617020706f7274696f6e2063616e6e6f74206578636565642031303000005f82015250565b5f6123b5601e83611d01565b91506123c082612381565b602082019050919050565b5f6020820190508181035f8301526123e2816123a9565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f612470602583611d01565b915061247b82612416565b604082019050919050565b5f6020820190508181035f83015261249d81612464565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f6124fe602683611d01565b9150612509826124a4565b604082019050919050565b5f6020820190508181035f83015261252b816124f2565b9050919050565b7f4665652070657263656e746167652063616e6e6f7420657863656564203130305f82015250565b5f612566602083611d01565b915061257182612532565b602082019050919050565b5f6020820190508181035f8301526125938161255a565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6125f4602483611d01565b91506125ff8261259a565b604082019050919050565b5f6020820190508181035f830152612621816125e8565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612682602283611d01565b915061268d82612628565b604082019050919050565b5f6020820190508181035f8301526126af81612676565b9050919050565b7f54726164696e67206973206e6f7420656e61626c6564207965740000000000005f82015250565b5f6126ea601a83611d01565b91506126f5826126b6565b602082019050919050565b5f6020820190508181035f830152612717816126de565b9050919050565b7f5472616e73666572206661696c65642064756520746f20696e7465726e616c205f8201527f7377617020696e2070726f677265737300000000000000000000000000000000602082015250565b5f612778603083611d01565b91506127838261271e565b604082019050919050565b5f6020820190508181035f8301526127a58161276c565b9050919050565b5f6127b682611df2565b91506127c183611df2565b92508282026127cf81611df2565b915082820484148315176127e6576127e5612321565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61282482611df2565b915061282f83611df2565b92508261283f5761283e6127ed565b5b828204905092915050565b5f61285482611df2565b915061285f83611df2565b925082820390508181111561287757612876612321565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6128b1602083611d01565b91506128bc8261287d565b602082019050919050565b5f6020820190508181035f8301526128de816128a5565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f61293f602583611d01565b915061294a826128e5565b604082019050919050565b5f6020820190508181035f83015261296c81612933565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f6129cd602383611d01565b91506129d882612973565b604082019050919050565b5f6020820190508181035f8301526129fa816129c1565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f612a5b602683611d01565b9150612a6682612a01565b604082019050919050565b5f6020820190508181035f830152612a8881612a4f565b9050919050565b5f819050919050565b5f612ab2612aad612aa884612a8f565b611ebe565b611df2565b9050919050565b612ac281612a98565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612afa81611db7565b82525050565b5f612b0b8383612af1565b60208301905092915050565b5f602082019050919050565b5f612b2d82612ac8565b612b378185612ad2565b9350612b4283612ae2565b805f5b83811015612b72578151612b598882612b00565b9750612b6483612b17565b925050600181019050612b45565b5085935050505092915050565b5f60a082019050612b925f830188611e96565b612b9f6020830187612ab9565b8181036040830152612bb18186612b23565b9050612bc06060830185611fad565b612bcd6080830184611e96565b9695505050505050565b5f604082019050612bea5f830185611e96565b612bf76020830184611e96565b9392505050565b7f5265656e7472616e637947756172643a207265656e7472616e742063616c6c005f82015250565b5f612c32601f83611d01565b9150612c3d82612bfe565b602082019050919050565b5f6020820190508181035f830152612c5f81612c26565b905091905056fea2646970667358221220b898eb37b0607490aa1dd81f46e715d0141a9a3199b649cc95013c79887638ec64736f6c634300081a0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000e8d4a51000000000000000000000000000000000000000000000000000000000000000000f426c61636b4d79746857756b6f6e670000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000657756b6f6e670000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : name (string): BlackMythWukong
Arg [1] : symbol (string): Wukong
Arg [2] : initialSupply (uint256): 1000000000000
-----Encoded View---------------
7 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000060
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [2] : 000000000000000000000000000000000000000000000000000000e8d4a51000
Arg [3] : 000000000000000000000000000000000000000000000000000000000000000f
Arg [4] : 426c61636b4d79746857756b6f6e670000000000000000000000000000000000
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [6] : 57756b6f6e670000000000000000000000000000000000000000000000000000
Deployed Bytecode Sourcemap
14855:6106:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1883:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2815:201;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15563:55;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14948:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2204:108;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15154:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15251:47;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16919:458;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15311:80;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2103:93;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3293:238;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20380:225;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;19755:340;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14996:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15033:34;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15194:50;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15526:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2320:127;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7265:103;;;;;;;;;;;;;:::i;:::-;;15117:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20808:113;;;;;;;;;;;;;:::i;:::-;;7030:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19465:282;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1991:104;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3539:434;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16730:181;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15398:29;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20613:187;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15434:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2656:151;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15074:36;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7376:201;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;20103:269;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1883:100;1937:13;1970:5;1963:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1883:100;:::o;2815:201::-;2898:4;2915:13;2931:12;:10;:12::i;:::-;2915:28;;2954:32;2963:5;2970:7;2979:6;2954:8;:32::i;:::-;3004:4;2997:11;;;2815:201;;;;:::o;15563:55::-;15609:9;15563:55;:::o;14948:41::-;;;;;;;;;;;;;:::o;2204:108::-;2265:7;2292:12;;2285:19;;2204:108;:::o;15154:33::-;;;;:::o;15251:47::-;;;;;;;;;;;;;;;;;;;;;;:::o;16919:458::-;17025:4;17042:42;17058:6;17066:9;17077:6;17042:15;:42::i;:::-;17095:24;17122:31;17132:6;17140:12;:10;:12::i;:::-;17122:9;:31::i;:::-;17095:58;;17192:6;17172:16;:26;;17164:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;17279:57;17288:6;17296:12;:10;:12::i;:::-;17329:6;17310:16;:25;17279:8;:57::i;:::-;17365:4;17358:11;;;16919:458;;;;;:::o;15311:80::-;15349:42;15311:80;:::o;2103:93::-;2161:5;2186:2;2179:9;;2103:93;:::o;3293:238::-;3381:4;3398:13;3414:12;:10;:12::i;:::-;3398:28;;3437:64;3446:5;3453:7;3490:10;3462:25;3472:5;3479:7;3462:9;:25::i;:::-;:38;;;;:::i;:::-;3437:8;:64::i;:::-;3519:4;3512:11;;;3293:238;;;;:::o;20380:225::-;6989:13;:11;:13::i;:::-;20478:3:::1;20462:12;:19;;20454:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;20541:12;20527:11;:26;;;;20569:28;20584:12;20569:28;;;;;;:::i;:::-;;;;;;;;20380:225:::0;:::o;19755:340::-;6989:13;:11;:13::i;:::-;19862:9:::1;19857:231;19881:8;:15;19877:1;:19;19857:231;;;19936:13;;;;;;;;;;;19921:28;;:8;19930:1;19921:11;;;;;;;;:::i;:::-;;;;;;;;:28;;::::0;19918:41;19951:8:::1;19918:41;20005:10;19974:15;:28;19990:8;19999:1;19990:11;;;;;;;;:::i;:::-;;;;;;;;19974:28;;;;;;;;;;;;;;;;:41;;;;;;;;;;;;;;;;;;20052:8;20061:1;20052:11;;;;;;;;:::i;:::-;;;;;;;;20035:41;;;20065:10;20035:41;;;;;;:::i;:::-;;;;;;;;19857:231;19898:3;;;;;;;19857:231;;;;19755:340:::0;;:::o;14996:28::-;;;;;;;;;;;;;:::o;15033:34::-;;;;;;;;;;;;;:::o;15194:50::-;;;;;;;;;;;;;;;;;;;;;;:::o;15526:30::-;;;;:::o;2320:127::-;2394:7;2421:9;:18;2431:7;2421:18;;;;;;;;;;;;;;;;2414:25;;2320:127;;;:::o;7265:103::-;6989:13;:11;:13::i;:::-;7330:30:::1;7357:1;7330:18;:30::i;:::-;7265:103::o:0;15117:30::-;;;;:::o;20808:113::-;6989:13;:11;:13::i;:::-;20878:4:::1;20861:14;;:21;;;;;;;;;;;;;;;;;;20898:15;;;;;;;;;;20808:113::o:0;7030:87::-;7076:7;7103:6;;;;;;;;;;;7096:13;;7030:87;:::o;19465:282::-;6989:13;:11;:13::i;:::-;19572:9:::1;19567:173;19591:8;:15;19587:1;:19;19567:173;;;19662:8;19628:18;:31;19647:8;19656:1;19647:11;;;;;;;;:::i;:::-;;;;;;;;19628:31;;;;;;;;;;;;;;;;:42;;;;;;;;;;;;;;;;;;19706:8;19715:1;19706:11;;;;;;;;:::i;:::-;;;;;;;;19690:38;;;19719:8;19690:38;;;;;;:::i;:::-;;;;;;;;19608:3;;;;;;;19567:173;;;;19465:282:::0;;:::o;1991:104::-;2047:13;2080:7;2073:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1991:104;:::o;3539:434::-;3632:4;3649:13;3665:12;:10;:12::i;:::-;3649:28;;3688:24;3715:25;3725:5;3732:7;3715:9;:25::i;:::-;3688:52;;3779:15;3759:16;:35;;3751:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;3872:60;3881:5;3888:7;3916:15;3897:16;:34;3872:8;:60::i;:::-;3961:4;3954:11;;;;3539:434;;;;:::o;16730:181::-;16816:4;16833:48;16849:12;:10;:12::i;:::-;16863:9;16874:6;16833:15;:48::i;:::-;16899:4;16892:11;;16730:181;;;;:::o;15398:29::-;;;:::o;20613:187::-;6989:13;:11;:13::i;:::-;20714:3:::1;20698:12;:19;;20690:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;20780:12;20763:14;:29;;;;20613:187:::0;:::o;15434:83::-;15475:42;15434:83;:::o;2656:151::-;2745:7;2772:11;:18;2784:5;2772:18;;;;;;;;;;;;;;;:27;2791:7;2772:27;;;;;;;;;;;;;;;;2765:34;;2656:151;;;;:::o;15074:36::-;;;;:::o;7376:201::-;6989:13;:11;:13::i;:::-;7485:1:::1;7465:22;;:8;:22;;::::0;7457:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;7541:28;7560:8;7541:18;:28::i;:::-;7376:201:::0;:::o;20103:269::-;6989:13;:11;:13::i;:::-;20219:3:::1;20197:18;:25;;20189:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;20290:18;20270:17;:38;;;;20324:40;20345:18;20324:40;;;;;;:::i;:::-;;;;;;;;20103:269:::0;:::o;147:98::-;200:7;227:10;220:17;;147:98;:::o;5654:344::-;5773:1;5756:19;;:5;:19;;;5748:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5854:1;5835:21;;:7;:21;;;5827:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5936:6;5906:11;:18;5918:5;5906:18;;;;;;;;;;;;;;;:27;5925:7;5906:27;;;;;;;;;;;;;;;:36;;;;5974:7;5958:32;;5967:5;5958:32;;;5983:6;5958:32;;;;;;:::i;:::-;;;;;;;;5654:344;;;:::o;17385:1338::-;17523:14;;;;;;;;;;;:44;;;;17541:18;:26;17560:6;17541:26;;;;;;;;;;;;;;;;;;;;;;;;;17523:44;:77;;;;17571:18;:29;17590:9;17571:29;;;;;;;;;;;;;;;;;;;;;;;;;17523:77;17515:116;;;;;;;;;;;;:::i;:::-;;;;;;;;;17651:8;;;;;;;;;;;17650:9;17642:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;17729:18;:26;17748:6;17729:26;;;;;;;;;;;;;;;;;;;;;;;;;:59;;;;17759:18;:29;17778:9;17759:29;;;;;;;;;;;;;;;;;;;;;;;;;17729:59;:87;;;;17793:15;:23;17809:6;17793:23;;;;;;;;;;;;;;;;;;;;;;;;;17792:24;17729:87;17725:991;;;17833:36;17843:6;17851:9;17862:6;17833:9;:36::i;:::-;17725:991;;;17902:17;17953:3;17932:17;;17923:6;:26;;;;:::i;:::-;17922:34;;;;:::i;:::-;17902:54;;17971:22;18005:9;17996:6;:18;;;;:::i;:::-;17971:43;;18031:18;18120:3;18102:14;;18088:11;;:28;;;;:::i;:::-;18079:3;18065:11;;18053:9;:23;;;;:::i;:::-;:29;;;;:::i;:::-;18052:65;;;;:::i;:::-;:71;;;;:::i;:::-;18031:92;;18138:21;18233:3;18215:14;;18201:11;;:28;;;;:::i;:::-;18192:3;18175:14;;18163:9;:26;;;;:::i;:::-;:32;;;;:::i;:::-;18162:68;;;;:::i;:::-;:74;;;;:::i;:::-;18138:98;;18253:44;18263:6;18279:4;18286:10;18253:9;:44::i;:::-;18312:48;18322:6;15475:42;18346:13;18312:9;:48::i;:::-;18375:44;18385:6;18393:9;18404:14;18375:9;:44::i;:::-;18455:10;18436:15;;:29;;;;;;;:::i;:::-;;;;;;;;15609:9;18486:15;;:38;18482:167;;18556:4;18545:8;;:15;;;;;;;;;;;;;;;;;;18579:19;:17;:19::i;:::-;18628:5;18617:8;;:16;;;;;;;;;;;;;;;;;;18482:167;18670:34;18690:13;18670:34;;;;;;:::i;:::-;;;;;;;;17887:829;;;;17725:991;17385:1338;;;:::o;7125:132::-;7200:12;:10;:12::i;:::-;7189:23;;:7;:5;:7::i;:::-;:23;;;7181:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7125:132::o;7585:191::-;7659:16;7678:6;;;;;;;;;;;7659:25;;7704:8;7695:6;;:17;;;;;;;;;;;;;;;;;;7759:8;7728:40;;7749:8;7728:40;;;;;;;;;;;;7648:128;7585:191;:::o;3981:633::-;4094:1;4078:18;;:4;:18;;;4070:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;4171:1;4157:16;;:2;:16;;;4149:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;4224:38;4245:4;4251:2;4255:6;4224:20;:38::i;:::-;4273:19;4295:9;:15;4305:4;4295:15;;;;;;;;;;;;;;;;4273:37;;4344:6;4329:11;:21;;4321:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;4461:6;4447:11;:20;4429:9;:15;4439:4;4429:15;;;;;;;;;;;;;;;:38;;;;4499:6;4482:9;:13;4492:2;4482:13;;;;;;;;;;;;;;;;:23;;;;;;;;;;;4547:2;4532:26;;4541:4;4532:26;;;4551:6;4532:26;;;;;;:::i;:::-;;;;;;;;4569:37;4589:4;4595:2;4599:6;4569:19;:37::i;:::-;4059:555;3981:633;;;:::o;18731:726::-;8126:21;:19;:21::i;:::-;18792:19:::1;18814:15;;18792:37;;18858:1;18840:15;:19;;;;18872:21;18910:1;18896:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18872:40;;18941:4;18923;18928:1;18923:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;18967:4;18957;18962:1;18957:7;;;;;;;;:::i;:::-;;;;;;;:14;;;;;;;;;::::0;::::1;18984:62;19001:4;19016:15;;;;;;;;;;;19034:11;18984:8;:62::i;:::-;19059:25;19087:21;19059:49;;19121:15;;;;;;;;;;;:66;;;19202:11;19228:1;19244:4;19271;19291:15;19121:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;19330:19;19376:17;19352:21;:41;;;;:::i;:::-;19330:63;;19409:40;19424:11;19437;19409:40;;;;;;;:::i;:::-;;;;;;;;18781:676;;;;8170:20:::0;:18;:20::i;:::-;18731:726::o;6433:91::-;;;;:::o;6530:90::-;;;;:::o;8206:150::-;7988:1;8264:7;;:19;8256:63;;;;;;;;;;;;:::i;:::-;;;;;;;;;7988:1;8330:7;:18;;;;8206:150::o;8364:79::-;7944:1;8413:7;:22;;;;8364:79::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:139::-;376:6;371:3;366;360:23;417:1;408:6;403:3;399:16;392:27;287:139;;;:::o;432:102::-;473:6;524:2;520:7;515:2;508:5;504:14;500:28;490:38;;432:102;;;:::o;540:377::-;628:3;656:39;689:5;656:39;:::i;:::-;711:71;775:6;770:3;711:71;:::i;:::-;704:78;;791:65;849:6;844:3;837:4;830:5;826:16;791:65;:::i;:::-;881:29;903:6;881:29;:::i;:::-;876:3;872:39;865:46;;632:285;540:377;;;;:::o;923:313::-;1036:4;1074:2;1063:9;1059:18;1051:26;;1123:9;1117:4;1113:20;1109:1;1098:9;1094:17;1087:47;1151:78;1224:4;1215:6;1151:78;:::i;:::-;1143:86;;923:313;;;;:::o;1242:75::-;1275:6;1308:2;1302:9;1292:19;;1242:75;:::o;1323:117::-;1432:1;1429;1422:12;1446:117;1555:1;1552;1545:12;1569:126;1606:7;1646:42;1639:5;1635:54;1624:65;;1569:126;;;:::o;1701:96::-;1738:7;1767:24;1785:5;1767:24;:::i;:::-;1756:35;;1701:96;;;:::o;1803:122::-;1876:24;1894:5;1876:24;:::i;:::-;1869:5;1866:35;1856:63;;1915:1;1912;1905:12;1856:63;1803:122;:::o;1931:139::-;1977:5;2015:6;2002:20;1993:29;;2031:33;2058:5;2031:33;:::i;:::-;1931:139;;;;:::o;2076:77::-;2113:7;2142:5;2131:16;;2076:77;;;:::o;2159:122::-;2232:24;2250:5;2232:24;:::i;:::-;2225:5;2222:35;2212:63;;2271:1;2268;2261:12;2212:63;2159:122;:::o;2287:139::-;2333:5;2371:6;2358:20;2349:29;;2387:33;2414:5;2387:33;:::i;:::-;2287:139;;;;:::o;2432:474::-;2500:6;2508;2557:2;2545:9;2536:7;2532:23;2528:32;2525:119;;;2563:79;;:::i;:::-;2525:119;2683:1;2708:53;2753:7;2744:6;2733:9;2729:22;2708:53;:::i;:::-;2698:63;;2654:117;2810:2;2836:53;2881:7;2872:6;2861:9;2857:22;2836:53;:::i;:::-;2826:63;;2781:118;2432:474;;;;;:::o;2912:90::-;2946:7;2989:5;2982:13;2975:21;2964:32;;2912:90;;;:::o;3008:109::-;3089:21;3104:5;3089:21;:::i;:::-;3084:3;3077:34;3008:109;;:::o;3123:210::-;3210:4;3248:2;3237:9;3233:18;3225:26;;3261:65;3323:1;3312:9;3308:17;3299:6;3261:65;:::i;:::-;3123:210;;;;:::o;3339:118::-;3426:24;3444:5;3426:24;:::i;:::-;3421:3;3414:37;3339:118;;:::o;3463:222::-;3556:4;3594:2;3583:9;3579:18;3571:26;;3607:71;3675:1;3664:9;3660:17;3651:6;3607:71;:::i;:::-;3463:222;;;;:::o;3691:60::-;3719:3;3740:5;3733:12;;3691:60;;;:::o;3757:142::-;3807:9;3840:53;3858:34;3867:24;3885:5;3867:24;:::i;:::-;3858:34;:::i;:::-;3840:53;:::i;:::-;3827:66;;3757:142;;;:::o;3905:126::-;3955:9;3988:37;4019:5;3988:37;:::i;:::-;3975:50;;3905:126;;;:::o;4037:153::-;4114:9;4147:37;4178:5;4147:37;:::i;:::-;4134:50;;4037:153;;;:::o;4196:185::-;4310:64;4368:5;4310:64;:::i;:::-;4305:3;4298:77;4196:185;;:::o;4387:276::-;4507:4;4545:2;4534:9;4530:18;4522:26;;4558:98;4653:1;4642:9;4638:17;4629:6;4558:98;:::i;:::-;4387:276;;;;:::o;4669:329::-;4728:6;4777:2;4765:9;4756:7;4752:23;4748:32;4745:119;;;4783:79;;:::i;:::-;4745:119;4903:1;4928:53;4973:7;4964:6;4953:9;4949:22;4928:53;:::i;:::-;4918:63;;4874:117;4669:329;;;;:::o;5004:619::-;5081:6;5089;5097;5146:2;5134:9;5125:7;5121:23;5117:32;5114:119;;;5152:79;;:::i;:::-;5114:119;5272:1;5297:53;5342:7;5333:6;5322:9;5318:22;5297:53;:::i;:::-;5287:63;;5243:117;5399:2;5425:53;5470:7;5461:6;5450:9;5446:22;5425:53;:::i;:::-;5415:63;;5370:118;5527:2;5553:53;5598:7;5589:6;5578:9;5574:22;5553:53;:::i;:::-;5543:63;;5498:118;5004:619;;;;;:::o;5629:118::-;5716:24;5734:5;5716:24;:::i;:::-;5711:3;5704:37;5629:118;;:::o;5753:222::-;5846:4;5884:2;5873:9;5869:18;5861:26;;5897:71;5965:1;5954:9;5950:17;5941:6;5897:71;:::i;:::-;5753:222;;;;:::o;5981:86::-;6016:7;6056:4;6049:5;6045:16;6034:27;;5981:86;;;:::o;6073:112::-;6156:22;6172:5;6156:22;:::i;:::-;6151:3;6144:35;6073:112;;:::o;6191:214::-;6280:4;6318:2;6307:9;6303:18;6295:26;;6331:67;6395:1;6384:9;6380:17;6371:6;6331:67;:::i;:::-;6191:214;;;;:::o;6411:329::-;6470:6;6519:2;6507:9;6498:7;6494:23;6490:32;6487:119;;;6525:79;;:::i;:::-;6487:119;6645:1;6670:53;6715:7;6706:6;6695:9;6691:22;6670:53;:::i;:::-;6660:63;;6616:117;6411:329;;;;:::o;6746:117::-;6855:1;6852;6845:12;6869:180;6917:77;6914:1;6907:88;7014:4;7011:1;7004:15;7038:4;7035:1;7028:15;7055:281;7138:27;7160:4;7138:27;:::i;:::-;7130:6;7126:40;7268:6;7256:10;7253:22;7232:18;7220:10;7217:34;7214:62;7211:88;;;7279:18;;:::i;:::-;7211:88;7319:10;7315:2;7308:22;7098:238;7055:281;;:::o;7342:129::-;7376:6;7403:20;;:::i;:::-;7393:30;;7432:33;7460:4;7452:6;7432:33;:::i;:::-;7342:129;;;:::o;7477:311::-;7554:4;7644:18;7636:6;7633:30;7630:56;;;7666:18;;:::i;:::-;7630:56;7716:4;7708:6;7704:17;7696:25;;7776:4;7770;7766:15;7758:23;;7477:311;;;:::o;7794:117::-;7903:1;7900;7893:12;7934:710;8030:5;8055:81;8071:64;8128:6;8071:64;:::i;:::-;8055:81;:::i;:::-;8046:90;;8156:5;8185:6;8178:5;8171:21;8219:4;8212:5;8208:16;8201:23;;8272:4;8264:6;8260:17;8252:6;8248:30;8301:3;8293:6;8290:15;8287:122;;;8320:79;;:::i;:::-;8287:122;8435:6;8418:220;8452:6;8447:3;8444:15;8418:220;;;8527:3;8556:37;8589:3;8577:10;8556:37;:::i;:::-;8551:3;8544:50;8623:4;8618:3;8614:14;8607:21;;8494:144;8478:4;8473:3;8469:14;8462:21;;8418:220;;;8422:21;8036:608;;7934:710;;;;;:::o;8667:370::-;8738:5;8787:3;8780:4;8772:6;8768:17;8764:27;8754:122;;8795:79;;:::i;:::-;8754:122;8912:6;8899:20;8937:94;9027:3;9019:6;9012:4;9004:6;9000:17;8937:94;:::i;:::-;8928:103;;8744:293;8667:370;;;;:::o;9043:116::-;9113:21;9128:5;9113:21;:::i;:::-;9106:5;9103:32;9093:60;;9149:1;9146;9139:12;9093:60;9043:116;:::o;9165:133::-;9208:5;9246:6;9233:20;9224:29;;9262:30;9286:5;9262:30;:::i;:::-;9165:133;;;;:::o;9304:678::-;9394:6;9402;9451:2;9439:9;9430:7;9426:23;9422:32;9419:119;;;9457:79;;:::i;:::-;9419:119;9605:1;9594:9;9590:17;9577:31;9635:18;9627:6;9624:30;9621:117;;;9657:79;;:::i;:::-;9621:117;9762:78;9832:7;9823:6;9812:9;9808:22;9762:78;:::i;:::-;9752:88;;9548:302;9889:2;9915:50;9957:7;9948:6;9937:9;9933:22;9915:50;:::i;:::-;9905:60;;9860:115;9304:678;;;;;:::o;9988:474::-;10056:6;10064;10113:2;10101:9;10092:7;10088:23;10084:32;10081:119;;;10119:79;;:::i;:::-;10081:119;10239:1;10264:53;10309:7;10300:6;10289:9;10285:22;10264:53;:::i;:::-;10254:63;;10210:117;10366:2;10392:53;10437:7;10428:6;10417:9;10413:22;10392:53;:::i;:::-;10382:63;;10337:118;9988:474;;;;;:::o;10468:180::-;10516:77;10513:1;10506:88;10613:4;10610:1;10603:15;10637:4;10634:1;10627:15;10654:320;10698:6;10735:1;10729:4;10725:12;10715:22;;10782:1;10776:4;10772:12;10803:18;10793:81;;10859:4;10851:6;10847:17;10837:27;;10793:81;10921:2;10913:6;10910:14;10890:18;10887:38;10884:84;;10940:18;;:::i;:::-;10884:84;10705:269;10654:320;;;:::o;10980:227::-;11120:34;11116:1;11108:6;11104:14;11097:58;11189:10;11184:2;11176:6;11172:15;11165:35;10980:227;:::o;11213:366::-;11355:3;11376:67;11440:2;11435:3;11376:67;:::i;:::-;11369:74;;11452:93;11541:3;11452:93;:::i;:::-;11570:2;11565:3;11561:12;11554:19;;11213:366;;;:::o;11585:419::-;11751:4;11789:2;11778:9;11774:18;11766:26;;11838:9;11832:4;11828:20;11824:1;11813:9;11809:17;11802:47;11866:131;11992:4;11866:131;:::i;:::-;11858:139;;11585:419;;;:::o;12010:180::-;12058:77;12055:1;12048:88;12155:4;12152:1;12145:15;12179:4;12176:1;12169:15;12196:191;12236:3;12255:20;12273:1;12255:20;:::i;:::-;12250:25;;12289:20;12307:1;12289:20;:::i;:::-;12284:25;;12332:1;12329;12325:9;12318:16;;12353:3;12350:1;12347:10;12344:36;;;12360:18;;:::i;:::-;12344:36;12196:191;;;;:::o;12393:180::-;12533:32;12529:1;12521:6;12517:14;12510:56;12393:180;:::o;12579:366::-;12721:3;12742:67;12806:2;12801:3;12742:67;:::i;:::-;12735:74;;12818:93;12907:3;12818:93;:::i;:::-;12936:2;12931:3;12927:12;12920:19;;12579:366;;;:::o;12951:419::-;13117:4;13155:2;13144:9;13140:18;13132:26;;13204:9;13198:4;13194:20;13190:1;13179:9;13175:17;13168:47;13232:131;13358:4;13232:131;:::i;:::-;13224:139;;12951:419;;;:::o;13376:180::-;13424:77;13421:1;13414:88;13521:4;13518:1;13511:15;13545:4;13542:1;13535:15;13562:224;13702:34;13698:1;13690:6;13686:14;13679:58;13771:7;13766:2;13758:6;13754:15;13747:32;13562:224;:::o;13792:366::-;13934:3;13955:67;14019:2;14014:3;13955:67;:::i;:::-;13948:74;;14031:93;14120:3;14031:93;:::i;:::-;14149:2;14144:3;14140:12;14133:19;;13792:366;;;:::o;14164:419::-;14330:4;14368:2;14357:9;14353:18;14345:26;;14417:9;14411:4;14407:20;14403:1;14392:9;14388:17;14381:47;14445:131;14571:4;14445:131;:::i;:::-;14437:139;;14164:419;;;:::o;14589:225::-;14729:34;14725:1;14717:6;14713:14;14706:58;14798:8;14793:2;14785:6;14781:15;14774:33;14589:225;:::o;14820:366::-;14962:3;14983:67;15047:2;15042:3;14983:67;:::i;:::-;14976:74;;15059:93;15148:3;15059:93;:::i;:::-;15177:2;15172:3;15168:12;15161:19;;14820:366;;;:::o;15192:419::-;15358:4;15396:2;15385:9;15381:18;15373:26;;15445:9;15439:4;15435:20;15431:1;15420:9;15416:17;15409:47;15473:131;15599:4;15473:131;:::i;:::-;15465:139;;15192:419;;;:::o;15617:182::-;15757:34;15753:1;15745:6;15741:14;15734:58;15617:182;:::o;15805:366::-;15947:3;15968:67;16032:2;16027:3;15968:67;:::i;:::-;15961:74;;16044:93;16133:3;16044:93;:::i;:::-;16162:2;16157:3;16153:12;16146:19;;15805:366;;;:::o;16177:419::-;16343:4;16381:2;16370:9;16366:18;16358:26;;16430:9;16424:4;16420:20;16416:1;16405:9;16401:17;16394:47;16458:131;16584:4;16458:131;:::i;:::-;16450:139;;16177:419;;;:::o;16602:223::-;16742:34;16738:1;16730:6;16726:14;16719:58;16811:6;16806:2;16798:6;16794:15;16787:31;16602:223;:::o;16831:366::-;16973:3;16994:67;17058:2;17053:3;16994:67;:::i;:::-;16987:74;;17070:93;17159:3;17070:93;:::i;:::-;17188:2;17183:3;17179:12;17172:19;;16831:366;;;:::o;17203:419::-;17369:4;17407:2;17396:9;17392:18;17384:26;;17456:9;17450:4;17446:20;17442:1;17431:9;17427:17;17420:47;17484:131;17610:4;17484:131;:::i;:::-;17476:139;;17203:419;;;:::o;17628:221::-;17768:34;17764:1;17756:6;17752:14;17745:58;17837:4;17832:2;17824:6;17820:15;17813:29;17628:221;:::o;17855:366::-;17997:3;18018:67;18082:2;18077:3;18018:67;:::i;:::-;18011:74;;18094:93;18183:3;18094:93;:::i;:::-;18212:2;18207:3;18203:12;18196:19;;17855:366;;;:::o;18227:419::-;18393:4;18431:2;18420:9;18416:18;18408:26;;18480:9;18474:4;18470:20;18466:1;18455:9;18451:17;18444:47;18508:131;18634:4;18508:131;:::i;:::-;18500:139;;18227:419;;;:::o;18652:176::-;18792:28;18788:1;18780:6;18776:14;18769:52;18652:176;:::o;18834:366::-;18976:3;18997:67;19061:2;19056:3;18997:67;:::i;:::-;18990:74;;19073:93;19162:3;19073:93;:::i;:::-;19191:2;19186:3;19182:12;19175:19;;18834:366;;;:::o;19206:419::-;19372:4;19410:2;19399:9;19395:18;19387:26;;19459:9;19453:4;19449:20;19445:1;19434:9;19430:17;19423:47;19487:131;19613:4;19487:131;:::i;:::-;19479:139;;19206:419;;;:::o;19631:235::-;19771:34;19767:1;19759:6;19755:14;19748:58;19840:18;19835:2;19827:6;19823:15;19816:43;19631:235;:::o;19872:366::-;20014:3;20035:67;20099:2;20094:3;20035:67;:::i;:::-;20028:74;;20111:93;20200:3;20111:93;:::i;:::-;20229:2;20224:3;20220:12;20213:19;;19872:366;;;:::o;20244:419::-;20410:4;20448:2;20437:9;20433:18;20425:26;;20497:9;20491:4;20487:20;20483:1;20472:9;20468:17;20461:47;20525:131;20651:4;20525:131;:::i;:::-;20517:139;;20244:419;;;:::o;20669:410::-;20709:7;20732:20;20750:1;20732:20;:::i;:::-;20727:25;;20766:20;20784:1;20766:20;:::i;:::-;20761:25;;20821:1;20818;20814:9;20843:30;20861:11;20843:30;:::i;:::-;20832:41;;21022:1;21013:7;21009:15;21006:1;21003:22;20983:1;20976:9;20956:83;20933:139;;21052:18;;:::i;:::-;20933:139;20717:362;20669:410;;;;:::o;21085:180::-;21133:77;21130:1;21123:88;21230:4;21227:1;21220:15;21254:4;21251:1;21244:15;21271:185;21311:1;21328:20;21346:1;21328:20;:::i;:::-;21323:25;;21362:20;21380:1;21362:20;:::i;:::-;21357:25;;21401:1;21391:35;;21406:18;;:::i;:::-;21391:35;21448:1;21445;21441:9;21436:14;;21271:185;;;;:::o;21462:194::-;21502:4;21522:20;21540:1;21522:20;:::i;:::-;21517:25;;21556:20;21574:1;21556:20;:::i;:::-;21551:25;;21600:1;21597;21593:9;21585:17;;21624:1;21618:4;21615:11;21612:37;;;21629:18;;:::i;:::-;21612:37;21462:194;;;;:::o;21662:182::-;21802:34;21798:1;21790:6;21786:14;21779:58;21662:182;:::o;21850:366::-;21992:3;22013:67;22077:2;22072:3;22013:67;:::i;:::-;22006:74;;22089:93;22178:3;22089:93;:::i;:::-;22207:2;22202:3;22198:12;22191:19;;21850:366;;;:::o;22222:419::-;22388:4;22426:2;22415:9;22411:18;22403:26;;22475:9;22469:4;22465:20;22461:1;22450:9;22446:17;22439:47;22503:131;22629:4;22503:131;:::i;:::-;22495:139;;22222:419;;;:::o;22647:224::-;22787:34;22783:1;22775:6;22771:14;22764:58;22856:7;22851:2;22843:6;22839:15;22832:32;22647:224;:::o;22877:366::-;23019:3;23040:67;23104:2;23099:3;23040:67;:::i;:::-;23033:74;;23116:93;23205:3;23116:93;:::i;:::-;23234:2;23229:3;23225:12;23218:19;;22877:366;;;:::o;23249:419::-;23415:4;23453:2;23442:9;23438:18;23430:26;;23502:9;23496:4;23492:20;23488:1;23477:9;23473:17;23466:47;23530:131;23656:4;23530:131;:::i;:::-;23522:139;;23249:419;;;:::o;23674:222::-;23814:34;23810:1;23802:6;23798:14;23791:58;23883:5;23878:2;23870:6;23866:15;23859:30;23674:222;:::o;23902:366::-;24044:3;24065:67;24129:2;24124:3;24065:67;:::i;:::-;24058:74;;24141:93;24230:3;24141:93;:::i;:::-;24259:2;24254:3;24250:12;24243:19;;23902:366;;;:::o;24274:419::-;24440:4;24478:2;24467:9;24463:18;24455:26;;24527:9;24521:4;24517:20;24513:1;24502:9;24498:17;24491:47;24555:131;24681:4;24555:131;:::i;:::-;24547:139;;24274:419;;;:::o;24699:225::-;24839:34;24835:1;24827:6;24823:14;24816:58;24908:8;24903:2;24895:6;24891:15;24884:33;24699:225;:::o;24930:366::-;25072:3;25093:67;25157:2;25152:3;25093:67;:::i;:::-;25086:74;;25169:93;25258:3;25169:93;:::i;:::-;25287:2;25282:3;25278:12;25271:19;;24930:366;;;:::o;25302:419::-;25468:4;25506:2;25495:9;25491:18;25483:26;;25555:9;25549:4;25545:20;25541:1;25530:9;25526:17;25519:47;25583:131;25709:4;25583:131;:::i;:::-;25575:139;;25302:419;;;:::o;25727:85::-;25772:7;25801:5;25790:16;;25727:85;;;:::o;25818:158::-;25876:9;25909:61;25927:42;25936:32;25962:5;25936:32;:::i;:::-;25927:42;:::i;:::-;25909:61;:::i;:::-;25896:74;;25818:158;;;:::o;25982:147::-;26077:45;26116:5;26077:45;:::i;:::-;26072:3;26065:58;25982:147;;:::o;26135:114::-;26202:6;26236:5;26230:12;26220:22;;26135:114;;;:::o;26255:184::-;26354:11;26388:6;26383:3;26376:19;26428:4;26423:3;26419:14;26404:29;;26255:184;;;;:::o;26445:132::-;26512:4;26535:3;26527:11;;26565:4;26560:3;26556:14;26548:22;;26445:132;;;:::o;26583:108::-;26660:24;26678:5;26660:24;:::i;:::-;26655:3;26648:37;26583:108;;:::o;26697:179::-;26766:10;26787:46;26829:3;26821:6;26787:46;:::i;:::-;26865:4;26860:3;26856:14;26842:28;;26697:179;;;;:::o;26882:113::-;26952:4;26984;26979:3;26975:14;26967:22;;26882:113;;;:::o;27031:732::-;27150:3;27179:54;27227:5;27179:54;:::i;:::-;27249:86;27328:6;27323:3;27249:86;:::i;:::-;27242:93;;27359:56;27409:5;27359:56;:::i;:::-;27438:7;27469:1;27454:284;27479:6;27476:1;27473:13;27454:284;;;27555:6;27549:13;27582:63;27641:3;27626:13;27582:63;:::i;:::-;27575:70;;27668:60;27721:6;27668:60;:::i;:::-;27658:70;;27514:224;27501:1;27498;27494:9;27489:14;;27454:284;;;27458:14;27754:3;27747:10;;27155:608;;;27031:732;;;;:::o;27769:831::-;28032:4;28070:3;28059:9;28055:19;28047:27;;28084:71;28152:1;28141:9;28137:17;28128:6;28084:71;:::i;:::-;28165:80;28241:2;28230:9;28226:18;28217:6;28165:80;:::i;:::-;28292:9;28286:4;28282:20;28277:2;28266:9;28262:18;28255:48;28320:108;28423:4;28414:6;28320:108;:::i;:::-;28312:116;;28438:72;28506:2;28495:9;28491:18;28482:6;28438:72;:::i;:::-;28520:73;28588:3;28577:9;28573:19;28564:6;28520:73;:::i;:::-;27769:831;;;;;;;;:::o;28606:332::-;28727:4;28765:2;28754:9;28750:18;28742:26;;28778:71;28846:1;28835:9;28831:17;28822:6;28778:71;:::i;:::-;28859:72;28927:2;28916:9;28912:18;28903:6;28859:72;:::i;:::-;28606:332;;;;;:::o;28944:181::-;29084:33;29080:1;29072:6;29068:14;29061:57;28944:181;:::o;29131:366::-;29273:3;29294:67;29358:2;29353:3;29294:67;:::i;:::-;29287:74;;29370:93;29459:3;29370:93;:::i;:::-;29488:2;29483:3;29479:12;29472:19;;29131:366;;;:::o;29503:419::-;29669:4;29707:2;29696:9;29692:18;29684:26;;29756:9;29750:4;29746:20;29742:1;29731:9;29727:17;29720:47;29784:131;29910:4;29784:131;:::i;:::-;29776:139;;29503:419;;;:::o
Swarm Source
ipfs://b898eb37b0607490aa1dd81f46e715d0141a9a3199b649cc95013c79887638ec
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.