ERC-20
Overview
Max Total Supply
1,000,000,000 SHREK
Holders
16
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
44,163,182.352328677 SHREKValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
SHREK
Compiler Version
v0.8.20+commit.a1b79de6
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-08-20 */ /** SHREK IS LOVE, SHREK IS LIFE I was only nine years old. I loved Shrek so much, I had all the merchandise and movies. I'd pray to Shrek every night before I go to bed, thanking for the life I've been given. "Shrek is love", I would say, "Shrek is life". My dad hears me and calls me a faggot. I knew he was just jealous for my devotion of Shrek. I called him a cunt. He slaps me and sends me to go to sleep. I'm crying now and my face hurts. I lay in bed and it's really cold. A warmth is moving towards me. I feel something touch me. It's Shrek. I'm so happy. He whispers in my ear, "This is my swamp". He grabs me with his powerful ogre hands, and puts me on my hands and knees. I spread my ass-cheeks for Shrek. He penetrates my butthole. It hurts so much, but I do it for Shrek. I can feel my butt tearing as my eyes start to water. I push against his force. I want to please Shrek. He roars a mighty roar, as he fills my butt with his love. My dad walks in. Shrek looks him straight in the eye, and says, "It's all ogre now". Shrek leaves through my window. Shrek is love. Shrek is life. ($SHREK) 🐸 Telegram : https://t.me/shrekcoin 🐸 Twitter : https://twitter.com/shrekislove_eth 🐸 Website : https://shrek.boo/ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣄⣀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣾⠟⠋⠙⠋⠉⠙⢷⣦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣤⣶⣶⣄⠀⠀⠀⢠⣾⣿⣁⡀⠀⠀⠀⠀⠀⠀⢑⣿⡆⠀⠀⠀⢠⣾⣿⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢿⣿⣿⣾⣦⡀⢠⣾⡿⣛⣛⡻⢷⣄⠀⠀⣴⣾⣿⠛⠻⠦⣄⣴⣿⣿⡿⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠉⠻⢿⣿⣿⣿⣿⣿⢿⣿⣿⣧⢼⣿⣿⣿⠿⣿⣇⢸⡟⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⠿⢿⣾⣿⣤⠿⠋⠀⠈⠻⢿⣿⣧⣿⠟⣬⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣼⣿⠃⠀⠀⢀⣴⣖⣶⠀⠀⠀⠀⠀⢀⡈⠀⠀⢘⣾⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣶⣶⣶⠿⠿⠿⠿⠷⠶⠶⠶⠛⠋⠻⣦⣤⣀⡼⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢿⡇⠀⣿⠻⢷⣤⣀⠀⠀⠀⠈⠀⠀⠀⣀⣈⡻⢿⣇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣿⡿⠛⡏⠁⠂⠘⠭⢿⣒⣒⡒⠒⠒⠊⠉⠁⠀⠀⣿⠤⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣰⣿⠟⠁⡄⠣⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡌⠙⠲⣤⣀⠠⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣴⣿⣏⠀⠀⢿⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡀⠋⠀⠀⠀⠀⠈⠙⠚⠓⠶⢤⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣴⣿⣿⣿⣿⣶⣀⡴⠛⢷⣄⣠⣄⡀⠀⠀⠀⠀⠀⠀⠀⠐⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠳⢦⡀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣤⣤⠴⠾⣿⣿⣿⣿⣿⠟⠛⠿⣿⣦⣄⠙⢻⣿⣷⣦⡤⠤⠶⠒⠛⠁⣠⠏⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠹⣆⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⢠⣴⡾⠏⠁⠀⠀⠀⠀⠰⠿⠟⠋⠀⠀⠀⠀⠈⠉⠛⠙⠋⠉⠉⠀⠀⠀⠀⠀⣀⡴⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢧⡀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⢀⣴⡿⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠐⠒⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢷⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⢀⣾⡿⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢉⡁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⡇⠀⠀⠀ ⠀⠀⠀⠀⢄⣾⡟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡀⢸⡁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣴⣧⢀⡀⠀⠀⠀⠀⠀⠀⠀⠀⣧⠀⠀⠀ ⠀⠀⠀⠀⣼⣋⣧⣶⠀⠀⠀⢀⡀⣀⣦⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡤⣼⣿⣿⣟⣤⡀⠀⠀⠀⠀⠀⠀⠘⣦⠀⠀ ⠀⠀⠀⠀⣿⡟⡇⣿⣤⣤⣴⣼⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢼⣷⣦⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠠⠏⣴⣿⣿⠋⠉⠉⠛⠋⡄⠂⠀⠀⠀⠀⠈⣇⠀ ⠀⠀⠀⢀⣿⣷⣜⢿⣿⣿⣿⣿⣿⣿⣟⢿⣷⣦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣶⠾⣿⣿⣷⠀⠀⠀⠀⠀⠀⠀⠐⠖⣠⣶⣿⣟⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⡀ ⠀⠀⢀⣾⠋⠻⣿⡶⠍⠙⠛⢿⣿⣿⣿⣮⡙⠿⣿⣶⣤⣄⣀⣤⣤⣤⣤⡀⢀⣈⣁⣰⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⡇ ⠀⠀⣾⠇⠀⠀⠘⢷⡇⠀⠀⠀⢿⣿⣿⣿⣿⣶⣼⣿⣿⣟⣻⣿⣿⣿⣿⡿⠟⠛⠁⠀⠉⠻⢿⣿⣶⣤⣴⣶⣶⣤⣶⣿⣿⣿⣿⣿⣿⡆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⠇ ⠀⢸⣿⠀⠀⠀⢠⡞⠀⠀⠀⠀⢾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣟⣋⣠⣀⠀⠀⠀⠀⠀⠀⠀⢉⣛⢻⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⢀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣸⠀ ⠀⢸⡏⠀⠀⠀⣼⠁⠀⠀⠀⠀⣼⣿⣿⣿⣿⣿⣿⣿⣿⣿⠛⠿⡿⠛⠉⠉⠉⠁⠀⢀⠀⠀⠀⠀⠀⠉⠰⠿⠿⠛⠻⠟⠉⠁⢩⢹⣿⣿⣄⠀⠸⣆⠀⠀⠀⠀⠀⠀⠀⠀⡇⠀ ⠀⣿⢿⠀⠀⣰⠇⠀⠀⠀⠀⠀⣿⡟⢻⣿⣿⣿⣿⣿⡟⠻⢶⣤⠀⠀⠀⠀⠀⠀⠀⢸⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣸⣿⢿⣿⣿⣦⠀⢹⣆⠀⠀⠀⠀⠀⠀⠀⡇⠀ ⢀⡟⠺⠀⢐⡿⠀⠀⠀⠀⢀⣼⣿⠁⠀⢻⣿⣿⣿⣿⣿⣷⣤⣿⣤⣤⣤⣤⣶⡄⠀⠀⣿⣇⣤⣤⣀⣀⡀⠀⠀⠀⠀⠀⠈⢿⣷⣿⡾⠁⢿⣿⣷⣿⣿⡷⠀⠀⠀⠀⠀⠀⡇⠀ ⢸⡇⠀⠘⣿⡁⠀⠀⢀⣰⣿⣿⠃⠀⠀⠀⢻⣿⣽⠋⠛⢯⢿⣿⠛⠛⠋⠉⠙⠛⠲⣄⠉⠉⠁⠈⠉⠙⠛⠷⣦⣤⣤⣌⠀⠀⢸⡟⠁⠀⠀⠻⣿⣿⣿⣍⠀⠀⠀⠀⠀⠀⢧⠀ ⢸⠁⠀⠀⢹⣷⣿⣿⣿⣿⣿⠋⠀⠀⠀⠀⢸⣿⢢⠀⠂⠀⣭⣿⡀⠀⠀⠀⠀⠀⠀⢸⡉⠀⠀⠀⠀⠀⠀⠀⠉⠀⠀⠀⠀⠀⡿⠀⠀⠀⠀⠀⢹⣿⡿⠉⠀⠀⠀⠀⠀⠀⡾⠀ ⠀⠀⠀⠀⠀⠋⣿⣿⣿⡟⠁⠀⠀⠀⠀⠀⣼⣏⠈⠁⢰⠀⢨⣿⣧⣀⡀⣠⠀⠀⠀⣸⡁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⡇⠀⠀⠀⠀⠀⣸⡍⠁⠀⠀⠀⠀⠀⠀⣠⣷⠀ ⠀⠀⠀⠀⠀⠀⠙⢿⣿⡇⠀⠀⠀⠀⠀⢠⣿⠟⠇⠀⠈⠑⢦⣿⠿⠿⠿⠿⠶⢀⢀⣸⠿⣶⣦⣠⡖⠀⠀⠀⠀⠀⠀⠀⢀⣿⠀⠀⠀⠀⠀⠀⡿⠀⠀⠀⠀⠀⠀⠀⠀⠘⢻⡆ ⠀⠀⠀⠀⠀⠀⠀⠀⣼⡇⠀⠀⠀⠀⠀⣸⡗⠀⠀⠀⠀⠀⠀⠙⠷⡄⣀⠀⠀⠻⠟⠃⠀⠀⠀⠀⠤⠀⠀⠀⠀⠀⠀⠀⣾⡟⠀⠀⠀⠀⠀⢰⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⡇ ⠀⠀⠀⠀⠀⠀⠀⠀⠹⠇⠀⠀⠀⠀⠀⣸⣿⠠⢰⣶⠄⠀⠀⠀⢀⣀⠀⢠⠀⠀⢠⡆⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣙⣿⠁⠀⠀⠀⠀⠀⣸⣷⠀⠀⠀⠀⠀⠀⠀⠀⠀⣾⠇ **/ // SPDX-License-Identifier: MIT pragma solidity ^0.8.20; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } } contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); } contract SHREK is Context , IERC20, Ownable { using SafeMath for uint256; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private _isExcludedFromFee; mapping (address => bool) private bots; mapping(address => uint256) private _holderLastTransferTimestamp; bool public transferDelayEnabled = true; address payable private _taxWallet; uint256 private _initialBuyTax=5; uint256 private _initialSellTax=15; uint256 private _finalBuyTax=1; uint256 private _finalSellTax=1; uint256 private _reduceBuyTaxAt=20; uint256 private _reduceSellTaxAt=20; uint256 private _preventSwapBefore=10; uint256 private _buyCount=0; uint8 private constant _decimals = 9; uint256 private constant _tTotal = 1000000000 * 10**_decimals; string private constant _name = unicode"I was only nine years old. I loved Shrek so much, I had all the merchandise and movies. I'd pray to Shrek every night before I go to bed, thanking for the life I've been given. 'Shrek is love', I would say, 'Shrek is life'. My dad hears me and calls me a faggot. I knew he was just jealous for my devotion of Shrek. I called him a cunt. He slaps me and sends me to go to sleep. I'm crying now and my face hurts. I lay in bed and it's really cold. A warmth is moving towards me. I feel something touch me. It's Shrek. I'm so happy. He whispers in my ear, 'This is my swamp'. He grabs me with his powerful ogre hands, and puts me on my hands and knees. I spread my ass-cheeks for Shrek. He penetrates my butthole. It hurts so much, but I do it for Shrek. I can feel my butt tearing as my eyes start to water. I push against his force. I want to please Shrek. He roars a mighty roar, as he fills my butt with his love. My dad walks in. Shrek looks him straight in the eye, and says, 'It's all ogre now'. Shrek leaves through my window. Shrek is love. Shrek is life."; string private constant _symbol = unicode"SHREK"; uint256 public _maxTxAmount =100000000 * 10**_decimals; uint256 public _maxWalletSize = 100000000 * 10**_decimals; uint256 public _taxSwapThreshold= 20000000 * 10**_decimals; uint256 public _maxTaxSwap= 20000000 * 10**_decimals; IUniswapV2Router02 private uniswapV2Router; address private uniswapV2Pair; bool private tradingOpen; bool private inSwap = false; bool private swapEnabled = false; event MaxTxAmountUpdated(uint _maxTxAmount); modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor () { _taxWallet = payable(_msgSender()); _balances[_msgSender()] = _tTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[_taxWallet] = true; emit Transfer(address(0), _msgSender(), _tTotal); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); return true; } function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _transfer(address from, address to, uint256 amount) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); uint256 taxAmount=0; if (from != owner() && to != owner()) { require(!bots[from] && !bots[to]); taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100); if (transferDelayEnabled) { if (to != address(uniswapV2Router) && to != address(uniswapV2Pair)) { require( _holderLastTransferTimestamp[tx.origin] < block.number, "_transfer:: Transfer Delay enabled. Only one purchase per block allowed." ); _holderLastTransferTimestamp[tx.origin] = block.number; } } if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) { require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount."); require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize."); _buyCount++; } if(to == uniswapV2Pair && from!= address(this) ){ taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).div(100); } uint256 contractTokenBalance = balanceOf(address(this)); if (!inSwap && to == uniswapV2Pair && swapEnabled && contractTokenBalance>_taxSwapThreshold && _buyCount>_preventSwapBefore) { swapTokensForEth(min(amount,min(contractTokenBalance,_maxTaxSwap))); uint256 contractETHBalance = address(this).balance; if(contractETHBalance > 0) { sendETHToFee(address(this).balance); } } } if(taxAmount>0){ _balances[address(this)]=_balances[address(this)].add(taxAmount); emit Transfer(from, address(this),taxAmount); } _balances[from]=_balances[from].sub(amount); _balances[to]=_balances[to].add(amount.sub(taxAmount)); emit Transfer(from, to, amount.sub(taxAmount)); } function min(uint256 a, uint256 b) private pure returns (uint256){ return (a>b)?b:a; } function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function removeLimits() external onlyOwner{ _maxTxAmount = _tTotal; _maxWalletSize=_tTotal; transferDelayEnabled=false; emit MaxTxAmountUpdated(_tTotal); } function sendETHToFee(uint256 amount) private { _taxWallet.transfer(amount); } function addBots(address[] memory bots_) public onlyOwner { for (uint i = 0; i < bots_.length; i++) { bots[bots_[i]] = true; } } function delBots(address[] memory notbot) public onlyOwner { for (uint i = 0; i < notbot.length; i++) { bots[notbot[i]] = false; } } function isBot(address a) public view returns (bool){ return bots[a]; } function openTrading() external onlyOwner() { require(!tradingOpen,"trading is already open"); uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); _approve(address(this), address(uniswapV2Router), _tTotal); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH()); uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp); IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); swapEnabled = true; tradingOpen = true; } function reduceFee(uint256 reducedBuyTax, uint256 reducedSellTax) external{ require(_msgSender()==_taxWallet); _finalBuyTax= reducedBuyTax; _finalSellTax= reducedSellTax; _initialBuyTax= reducedBuyTax; _initialSellTax= reducedSellTax; } receive() external payable {} function manualSwap() external { require(_msgSender()==_taxWallet); uint256 tokenBalance=balanceOf(address(this)); if(tokenBalance>0){ swapTokensForEth(tokenBalance); } uint256 ethBalance=address(this).balance; if(ethBalance>0){ sendETHToFee(ethBalance); } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"addBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"notbot","type":"address[]"}],"name":"delBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"reducedBuyTax","type":"uint256"},{"internalType":"uint256","name":"reducedSellTax","type":"uint256"}],"name":"reduceFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","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":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052600160065f6101000a81548160ff0219169083151502179055506005600755600f60085560016009556001600a556014600b556014600c55600a600d555f600e556009600a62000055919062000610565b6305f5e10062000066919062000660565b600f556009600a62000079919062000610565b6305f5e1006200008a919062000660565b6010556009600a6200009d919062000610565b6301312d00620000ae919062000660565b6011556009600a620000c1919062000610565b6301312d00620000d2919062000660565b6012555f601460156101000a81548160ff0219169083151502179055505f601460166101000a81548160ff02191690831515021790555034801562000115575f80fd5b505f620001276200045060201b60201c565b9050805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350620001d36200045060201b60201c565b600660016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a62000223919062000610565b633b9aca0062000234919062000660565b60015f620002476200045060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550600160035f620002996200045760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550620003c46200045060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a62000422919062000610565b633b9aca0062000433919062000660565b604051620004429190620006bb565b60405180910390a3620006d6565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156200050857808604811115620004e057620004df6200047e565b5b6001851615620004f05780820291505b80810290506200050085620004ab565b9450620004c0565b94509492505050565b5f82620005225760019050620005f4565b8162000531575f9050620005f4565b81600181146200054a576002811462000555576200058b565b6001915050620005f4565b60ff8411156200056a57620005696200047e565b5b8360020a9150848211156200058457620005836200047e565b5b50620005f4565b5060208310610133831016604e8410600b8410161715620005c55782820a905083811115620005bf57620005be6200047e565b5b620005f4565b620005d48484846001620004b7565b92509050818404811115620005ee57620005ed6200047e565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f6200061c82620005fb565b9150620006298362000604565b9250620006587fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000511565b905092915050565b5f6200066c82620005fb565b91506200067983620005fb565b92508282026200068981620005fb565b91508282048414831517620006a357620006a26200047e565b5b5092915050565b620006b581620005fb565b82525050565b5f602082019050620006d05f830184620006aa565b92915050565b6139a180620006e45f395ff3fe608060405260043610610143575f3560e01c806372333356116100b5578063a9059cbb1161006e578063a9059cbb14610420578063bf474bed1461045c578063c876d0b914610486578063c9567bf9146104b0578063d34628cc146104c6578063dd62ed3e146104ee5761014a565b8063723333561461033a578063751039fc146103625780637d1db4a5146103785780638da5cb5b146103a25780638f9a55c0146103cc57806395d89b41146103f65761014a565b8063313ce56711610107578063313ce5671461024457806331c2d8471461026e5780633bbac5791461029657806351bc3c85146102d257806370a08231146102e8578063715018a6146103245761014a565b806306fdde031461014e578063095ea7b3146101785780630faee56f146101b457806318160ddd146101de57806323b872dd146102085761014a565b3661014a57005b5f80fd5b348015610159575f80fd5b5061016261052a565b60405161016f91906124c8565b60405180910390f35b348015610183575f80fd5b5061019e60048036038101906101999190612586565b61054d565b6040516101ab91906125de565b60405180910390f35b3480156101bf575f80fd5b506101c861056a565b6040516101d59190612606565b60405180910390f35b3480156101e9575f80fd5b506101f2610570565b6040516101ff9190612606565b60405180910390f35b348015610213575f80fd5b5061022e6004803603810190610229919061261f565b610593565b60405161023b91906125de565b60405180910390f35b34801561024f575f80fd5b50610258610667565b604051610265919061268a565b60405180910390f35b348015610279575f80fd5b50610294600480360381019061028f91906127e3565b61066f565b005b3480156102a1575f80fd5b506102bc60048036038101906102b7919061282a565b610793565b6040516102c991906125de565b60405180910390f35b3480156102dd575f80fd5b506102e66107e5565b005b3480156102f3575f80fd5b5061030e6004803603810190610309919061282a565b61087d565b60405161031b9190612606565b60405180910390f35b34801561032f575f80fd5b506103386108c3565b005b348015610345575f80fd5b50610360600480360381019061035b9190612855565b610a11565b005b34801561036d575f80fd5b50610376610a91565b005b348015610383575f80fd5b5061038c610bd9565b6040516103999190612606565b60405180910390f35b3480156103ad575f80fd5b506103b6610bdf565b6040516103c391906128a2565b60405180910390f35b3480156103d7575f80fd5b506103e0610c06565b6040516103ed9190612606565b60405180910390f35b348015610401575f80fd5b5061040a610c0c565b60405161041791906124c8565b60405180910390f35b34801561042b575f80fd5b5061044660048036038101906104419190612586565b610c49565b60405161045391906125de565b60405180910390f35b348015610467575f80fd5b50610470610c66565b60405161047d9190612606565b60405180910390f35b348015610491575f80fd5b5061049a610c6c565b6040516104a791906125de565b60405180910390f35b3480156104bb575f80fd5b506104c4610c7e565b005b3480156104d1575f80fd5b506104ec60048036038101906104e791906127e3565b61119d565b005b3480156104f9575f80fd5b50610514600480360381019061050f91906128bb565b6112c2565b6040516105219190612606565b60405180910390f35b606060405180610460016040528061042681526020016135466104269139905090565b5f610560610559611344565b848461134b565b6001905092915050565b60125481565b5f6009600a61057f9190612a55565b633b9aca0061058e9190612a9f565b905090565b5f61059f84848461150e565b61065c846105ab611344565b6106578560405180606001604052806028815260200161351e6028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61060e611344565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611f299092919063ffffffff16565b61134b565b600190509392505050565b5f6009905090565b610677611344565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610703576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106fa90612b2a565b60405180910390fd5b5f5b815181101561078f575f60045f84848151811061072557610724612b48565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550808061078790612b75565b915050610705565b5050565b5f60045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610826611344565b73ffffffffffffffffffffffffffffffffffffffff1614610845575f80fd5b5f61084f3061087d565b90505f8111156108635761086281611f8b565b5b5f4790505f81111561087957610878816121f6565b5b5050565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6108cb611344565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610957576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161094e90612b2a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610a52611344565b73ffffffffffffffffffffffffffffffffffffffff1614610a71575f80fd5b8160098190555080600a8190555081600781905550806008819055505050565b610a99611344565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b25576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1c90612b2a565b60405180910390fd5b6009600a610b339190612a55565b633b9aca00610b429190612a9f565b600f819055506009600a610b569190612a55565b633b9aca00610b659190612a9f565b6010819055505f60065f6101000a81548160ff0219169083151502179055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a610bb39190612a55565b633b9aca00610bc29190612a9f565b604051610bcf9190612606565b60405180910390a1565b600f5481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60105481565b60606040518060400160405280600581526020017f534852454b000000000000000000000000000000000000000000000000000000815250905090565b5f610c5c610c55611344565b848461150e565b6001905092915050565b60115481565b60065f9054906101000a900460ff1681565b610c86611344565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d12576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d0990612b2a565b60405180910390fd5b60148054906101000a900460ff1615610d60576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d5790612c06565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d60135f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610dfc3060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610de89190612a55565b633b9aca00610df79190612a9f565b61134b565b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e66573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e8a9190612c38565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f10573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f349190612c38565b6040518363ffffffff1660e01b8152600401610f51929190612c63565b6020604051808303815f875af1158015610f6d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f919190612c38565b60145f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71947306110183061087d565b5f80611022610bdf565b426040518863ffffffff1660e01b815260040161104496959493929190612ccc565b60606040518083038185885af1158015611060573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906110859190612d3f565b50505060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611125929190612d8f565b6020604051808303815f875af1158015611141573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111659190612de0565b506001601460166101000a81548160ff02191690831515021790555060016014806101000a81548160ff021916908315150217905550565b6111a5611344565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611231576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161122890612b2a565b60405180910390fd5b5f5b81518110156112be57600160045f84848151811061125457611253612b48565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555080806112b690612b75565b915050611233565b5050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036113b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113b090612e7b565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611427576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141e90612f09565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516115019190612606565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361157c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161157390612f97565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036115ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115e190613025565b60405180910390fd5b5f811161162c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611623906130b3565b60405180910390fd5b5f611635610bdf565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156116a35750611673610bdf565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611c795760045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015611746575060045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b61174e575f80fd5b61178a606461177c600b54600e54116117695760075461176d565b6009545b8561225f90919063ffffffff16565b6122d690919063ffffffff16565b905060065f9054906101000a900460ff16156119125760135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561184a575060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611911574360055f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054106118ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118c590613167565b60405180910390fd5b4360055f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b5b60145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156119bb575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611a0e575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15611ac857600f54821115611a58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a4f906131cf565b60405180910390fd5b60105482611a658561087d565b611a6f91906131ed565b1115611ab0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aa79061326a565b60405180910390fd5b600e5f815480929190611ac290612b75565b91905055505b60145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611b5057503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611b9457611b916064611b83600c54600e5411611b7057600854611b74565b600a545b8561225f90919063ffffffff16565b6122d690919063ffffffff16565b90505b5f611b9e3061087d565b9050601460159054906101000a900460ff16158015611c09575060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015611c215750601460169054906101000a900460ff165b8015611c2e575060115481115b8015611c3d5750600d54600e54115b15611c7757611c5f611c5a84611c558460125461231f565b61231f565b611f8b565b5f4790505f811115611c7557611c74476121f6565b5b505b505b5f811115611d7857611cd18160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461233790919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611d6f9190612606565b60405180910390a35b611dc88260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461239490919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611e6b611e1f828461239490919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461233790919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611f0e848661239490919063ffffffff16565b604051611f1b9190612606565b60405180910390a350505050565b5f838311158290611f70576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f6791906124c8565b60405180910390fd5b505f8385611f7e9190613288565b9050809150509392505050565b6001601460156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611fc257611fc16126a7565b5b604051908082528060200260200182016040528015611ff05781602001602082028036833780820191505090505b50905030815f8151811061200757612006612b48565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156120ab573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120cf9190612c38565b816001815181106120e3576120e2612b48565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506121493060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461134b565b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b81526004016121ab959493929190613372565b5f604051808303815f87803b1580156121c2575f80fd5b505af11580156121d4573d5f803e3d5ffd5b50505050505f601460156101000a81548160ff02191690831515021790555050565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f1935050505015801561225b573d5f803e3d5ffd5b5050565b5f80830361226f575f90506122d0565b5f828461227c9190612a9f565b905082848261228b91906133f7565b146122cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122c290613497565b60405180910390fd5b809150505b92915050565b5f61231783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506123dd565b905092915050565b5f81831161232d578261232f565b815b905092915050565b5f80828461234591906131ed565b90508381101561238a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612381906134ff565b60405180910390fd5b8091505092915050565b5f6123d583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611f29565b905092915050565b5f8083118290612423576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161241a91906124c8565b60405180910390fd5b505f838561243191906133f7565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b8381101561247557808201518184015260208101905061245a565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61249a8261243e565b6124a48185612448565b93506124b4818560208601612458565b6124bd81612480565b840191505092915050565b5f6020820190508181035f8301526124e08184612490565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f612522826124f9565b9050919050565b61253281612518565b811461253c575f80fd5b50565b5f8135905061254d81612529565b92915050565b5f819050919050565b61256581612553565b811461256f575f80fd5b50565b5f813590506125808161255c565b92915050565b5f806040838503121561259c5761259b6124f1565b5b5f6125a98582860161253f565b92505060206125ba85828601612572565b9150509250929050565b5f8115159050919050565b6125d8816125c4565b82525050565b5f6020820190506125f15f8301846125cf565b92915050565b61260081612553565b82525050565b5f6020820190506126195f8301846125f7565b92915050565b5f805f60608486031215612636576126356124f1565b5b5f6126438682870161253f565b93505060206126548682870161253f565b925050604061266586828701612572565b9150509250925092565b5f60ff82169050919050565b6126848161266f565b82525050565b5f60208201905061269d5f83018461267b565b92915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6126dd82612480565b810181811067ffffffffffffffff821117156126fc576126fb6126a7565b5b80604052505050565b5f61270e6124e8565b905061271a82826126d4565b919050565b5f67ffffffffffffffff821115612739576127386126a7565b5b602082029050602081019050919050565b5f80fd5b5f61276061275b8461271f565b612705565b905080838252602082019050602084028301858111156127835761278261274a565b5b835b818110156127ac5780612798888261253f565b845260208401935050602081019050612785565b5050509392505050565b5f82601f8301126127ca576127c96126a3565b5b81356127da84826020860161274e565b91505092915050565b5f602082840312156127f8576127f76124f1565b5b5f82013567ffffffffffffffff811115612815576128146124f5565b5b612821848285016127b6565b91505092915050565b5f6020828403121561283f5761283e6124f1565b5b5f61284c8482850161253f565b91505092915050565b5f806040838503121561286b5761286a6124f1565b5b5f61287885828601612572565b925050602061288985828601612572565b9150509250929050565b61289c81612518565b82525050565b5f6020820190506128b55f830184612893565b92915050565b5f80604083850312156128d1576128d06124f1565b5b5f6128de8582860161253f565b92505060206128ef8582860161253f565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111561297b57808604811115612957576129566128f9565b5b60018516156129665780820291505b808102905061297485612926565b945061293b565b94509492505050565b5f826129935760019050612a4e565b816129a0575f9050612a4e565b81600181146129b657600281146129c0576129ef565b6001915050612a4e565b60ff8411156129d2576129d16128f9565b5b8360020a9150848211156129e9576129e86128f9565b5b50612a4e565b5060208310610133831016604e8410600b8410161715612a245782820a905083811115612a1f57612a1e6128f9565b5b612a4e565b612a318484846001612932565b92509050818404811115612a4857612a476128f9565b5b81810290505b9392505050565b5f612a5f82612553565b9150612a6a8361266f565b9250612a977fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612984565b905092915050565b5f612aa982612553565b9150612ab483612553565b9250828202612ac281612553565b91508282048414831517612ad957612ad86128f9565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f612b14602083612448565b9150612b1f82612ae0565b602082019050919050565b5f6020820190508181035f830152612b4181612b08565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f612b7f82612553565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612bb157612bb06128f9565b5b600182019050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f612bf0601783612448565b9150612bfb82612bbc565b602082019050919050565b5f6020820190508181035f830152612c1d81612be4565b9050919050565b5f81519050612c3281612529565b92915050565b5f60208284031215612c4d57612c4c6124f1565b5b5f612c5a84828501612c24565b91505092915050565b5f604082019050612c765f830185612893565b612c836020830184612893565b9392505050565b5f819050919050565b5f819050919050565b5f612cb6612cb1612cac84612c8a565b612c93565b612553565b9050919050565b612cc681612c9c565b82525050565b5f60c082019050612cdf5f830189612893565b612cec60208301886125f7565b612cf96040830187612cbd565b612d066060830186612cbd565b612d136080830185612893565b612d2060a08301846125f7565b979650505050505050565b5f81519050612d398161255c565b92915050565b5f805f60608486031215612d5657612d556124f1565b5b5f612d6386828701612d2b565b9350506020612d7486828701612d2b565b9250506040612d8586828701612d2b565b9150509250925092565b5f604082019050612da25f830185612893565b612daf60208301846125f7565b9392505050565b612dbf816125c4565b8114612dc9575f80fd5b50565b5f81519050612dda81612db6565b92915050565b5f60208284031215612df557612df46124f1565b5b5f612e0284828501612dcc565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f612e65602483612448565b9150612e7082612e0b565b604082019050919050565b5f6020820190508181035f830152612e9281612e59565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612ef3602283612448565b9150612efe82612e99565b604082019050919050565b5f6020820190508181035f830152612f2081612ee7565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612f81602583612448565b9150612f8c82612f27565b604082019050919050565b5f6020820190508181035f830152612fae81612f75565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f61300f602383612448565b915061301a82612fb5565b604082019050919050565b5f6020820190508181035f83015261303c81613003565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f61309d602983612448565b91506130a882613043565b604082019050919050565b5f6020820190508181035f8301526130ca81613091565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c5f8201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b5f613151604983612448565b915061315c826130d1565b606082019050919050565b5f6020820190508181035f83015261317e81613145565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f6131b9601983612448565b91506131c482613185565b602082019050919050565b5f6020820190508181035f8301526131e6816131ad565b9050919050565b5f6131f782612553565b915061320283612553565b925082820190508082111561321a576132196128f9565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f613254601a83612448565b915061325f82613220565b602082019050919050565b5f6020820190508181035f83015261328181613248565b9050919050565b5f61329282612553565b915061329d83612553565b92508282039050818111156132b5576132b46128f9565b5b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6132ed81612518565b82525050565b5f6132fe83836132e4565b60208301905092915050565b5f602082019050919050565b5f613320826132bb565b61332a81856132c5565b9350613335836132d5565b805f5b8381101561336557815161334c88826132f3565b97506133578361330a565b925050600181019050613338565b5085935050505092915050565b5f60a0820190506133855f8301886125f7565b6133926020830187612cbd565b81810360408301526133a48186613316565b90506133b36060830185612893565b6133c060808301846125f7565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61340182612553565b915061340c83612553565b92508261341c5761341b6133ca565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f613481602183612448565b915061348c82613427565b604082019050919050565b5f6020820190508181035f8301526134ae81613475565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f6134e9601b83612448565b91506134f4826134b5565b602082019050919050565b5f6020820190508181035f830152613516816134dd565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63654920776173206f6e6c79206e696e65207965617273206f6c642e2049206c6f76656420536872656b20736f206d7563682c20492068616420616c6c20746865206d65726368616e6469736520616e64206d6f766965732e20492764207072617920746f20536872656b206576657279206e69676874206265666f7265204920676f20746f206265642c207468616e6b696e6720666f7220746865206c6966652049277665206265656e20676976656e2e2027536872656b206973206c6f7665272c204920776f756c64207361792c2027536872656b206973206c696665272e204d7920646164206865617273206d6520616e642063616c6c73206d65206120666167676f742e2049206b6e657720686520776173206a757374206a65616c6f757320666f72206d79206465766f74696f6e206f6620536872656b2e20492063616c6c65642068696d20612063756e742e20486520736c617073206d6520616e642073656e6473206d6520746f20676f20746f20736c6565702e2049276d20637279696e67206e6f7720616e64206d7920666163652068757274732e2049206c617920696e2062656420616e642069742773207265616c6c7920636f6c642e2041207761726d7468206973206d6f76696e6720746f7761726473206d652e2049206665656c20736f6d657468696e6720746f756368206d652e204974277320536872656b2e2049276d20736f2068617070792e20486520776869737065727320696e206d79206561722c202754686973206973206d79207377616d70272e204865206772616273206d6520776974682068697320706f77657266756c206f6772652068616e64732c20616e642070757473206d65206f6e206d792068616e647320616e64206b6e6565732e204920737072656164206d79206173732d636865656b7320666f7220536872656b2e2048652070656e65747261746573206d792062757474686f6c652e20497420687572747320736f206d7563682c20627574204920646f20697420666f7220536872656b2e20492063616e206665656c206d7920627574742074656172696e67206173206d79206579657320737461727420746f2077617465722e2049207075736820616761696e73742068697320666f7263652e20492077616e7420746f20706c6561736520536872656b2e20486520726f6172732061206d696768747920726f61722c2061732068652066696c6c73206d792062757474207769746820686973206c6f76652e204d79206461642077616c6b7320696e2e20536872656b206c6f6f6b732068696d20737472616967687420696e20746865206579652c20616e6420736179732c20274974277320616c6c206f677265206e6f77272e20536872656b206c6561766573207468726f756768206d792077696e646f772e20536872656b206973206c6f76652e20536872656b206973206c6966652ea264697066735822122027b5a7b38133b4e36fe72495f73d3d5604575eac98d4e67a74fca223580913a964736f6c63430008140033
Deployed Bytecode
0x608060405260043610610143575f3560e01c806372333356116100b5578063a9059cbb1161006e578063a9059cbb14610420578063bf474bed1461045c578063c876d0b914610486578063c9567bf9146104b0578063d34628cc146104c6578063dd62ed3e146104ee5761014a565b8063723333561461033a578063751039fc146103625780637d1db4a5146103785780638da5cb5b146103a25780638f9a55c0146103cc57806395d89b41146103f65761014a565b8063313ce56711610107578063313ce5671461024457806331c2d8471461026e5780633bbac5791461029657806351bc3c85146102d257806370a08231146102e8578063715018a6146103245761014a565b806306fdde031461014e578063095ea7b3146101785780630faee56f146101b457806318160ddd146101de57806323b872dd146102085761014a565b3661014a57005b5f80fd5b348015610159575f80fd5b5061016261052a565b60405161016f91906124c8565b60405180910390f35b348015610183575f80fd5b5061019e60048036038101906101999190612586565b61054d565b6040516101ab91906125de565b60405180910390f35b3480156101bf575f80fd5b506101c861056a565b6040516101d59190612606565b60405180910390f35b3480156101e9575f80fd5b506101f2610570565b6040516101ff9190612606565b60405180910390f35b348015610213575f80fd5b5061022e6004803603810190610229919061261f565b610593565b60405161023b91906125de565b60405180910390f35b34801561024f575f80fd5b50610258610667565b604051610265919061268a565b60405180910390f35b348015610279575f80fd5b50610294600480360381019061028f91906127e3565b61066f565b005b3480156102a1575f80fd5b506102bc60048036038101906102b7919061282a565b610793565b6040516102c991906125de565b60405180910390f35b3480156102dd575f80fd5b506102e66107e5565b005b3480156102f3575f80fd5b5061030e6004803603810190610309919061282a565b61087d565b60405161031b9190612606565b60405180910390f35b34801561032f575f80fd5b506103386108c3565b005b348015610345575f80fd5b50610360600480360381019061035b9190612855565b610a11565b005b34801561036d575f80fd5b50610376610a91565b005b348015610383575f80fd5b5061038c610bd9565b6040516103999190612606565b60405180910390f35b3480156103ad575f80fd5b506103b6610bdf565b6040516103c391906128a2565b60405180910390f35b3480156103d7575f80fd5b506103e0610c06565b6040516103ed9190612606565b60405180910390f35b348015610401575f80fd5b5061040a610c0c565b60405161041791906124c8565b60405180910390f35b34801561042b575f80fd5b5061044660048036038101906104419190612586565b610c49565b60405161045391906125de565b60405180910390f35b348015610467575f80fd5b50610470610c66565b60405161047d9190612606565b60405180910390f35b348015610491575f80fd5b5061049a610c6c565b6040516104a791906125de565b60405180910390f35b3480156104bb575f80fd5b506104c4610c7e565b005b3480156104d1575f80fd5b506104ec60048036038101906104e791906127e3565b61119d565b005b3480156104f9575f80fd5b50610514600480360381019061050f91906128bb565b6112c2565b6040516105219190612606565b60405180910390f35b606060405180610460016040528061042681526020016135466104269139905090565b5f610560610559611344565b848461134b565b6001905092915050565b60125481565b5f6009600a61057f9190612a55565b633b9aca0061058e9190612a9f565b905090565b5f61059f84848461150e565b61065c846105ab611344565b6106578560405180606001604052806028815260200161351e6028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61060e611344565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611f299092919063ffffffff16565b61134b565b600190509392505050565b5f6009905090565b610677611344565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610703576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106fa90612b2a565b60405180910390fd5b5f5b815181101561078f575f60045f84848151811061072557610724612b48565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550808061078790612b75565b915050610705565b5050565b5f60045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610826611344565b73ffffffffffffffffffffffffffffffffffffffff1614610845575f80fd5b5f61084f3061087d565b90505f8111156108635761086281611f8b565b5b5f4790505f81111561087957610878816121f6565b5b5050565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6108cb611344565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610957576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161094e90612b2a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610a52611344565b73ffffffffffffffffffffffffffffffffffffffff1614610a71575f80fd5b8160098190555080600a8190555081600781905550806008819055505050565b610a99611344565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b25576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1c90612b2a565b60405180910390fd5b6009600a610b339190612a55565b633b9aca00610b429190612a9f565b600f819055506009600a610b569190612a55565b633b9aca00610b659190612a9f565b6010819055505f60065f6101000a81548160ff0219169083151502179055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a610bb39190612a55565b633b9aca00610bc29190612a9f565b604051610bcf9190612606565b60405180910390a1565b600f5481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60105481565b60606040518060400160405280600581526020017f534852454b000000000000000000000000000000000000000000000000000000815250905090565b5f610c5c610c55611344565b848461150e565b6001905092915050565b60115481565b60065f9054906101000a900460ff1681565b610c86611344565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d12576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d0990612b2a565b60405180910390fd5b60148054906101000a900460ff1615610d60576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d5790612c06565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d60135f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610dfc3060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610de89190612a55565b633b9aca00610df79190612a9f565b61134b565b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e66573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e8a9190612c38565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f10573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f349190612c38565b6040518363ffffffff1660e01b8152600401610f51929190612c63565b6020604051808303815f875af1158015610f6d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f919190612c38565b60145f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71947306110183061087d565b5f80611022610bdf565b426040518863ffffffff1660e01b815260040161104496959493929190612ccc565b60606040518083038185885af1158015611060573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906110859190612d3f565b50505060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611125929190612d8f565b6020604051808303815f875af1158015611141573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111659190612de0565b506001601460166101000a81548160ff02191690831515021790555060016014806101000a81548160ff021916908315150217905550565b6111a5611344565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611231576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161122890612b2a565b60405180910390fd5b5f5b81518110156112be57600160045f84848151811061125457611253612b48565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555080806112b690612b75565b915050611233565b5050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036113b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113b090612e7b565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611427576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141e90612f09565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516115019190612606565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361157c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161157390612f97565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036115ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115e190613025565b60405180910390fd5b5f811161162c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611623906130b3565b60405180910390fd5b5f611635610bdf565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156116a35750611673610bdf565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611c795760045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015611746575060045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b61174e575f80fd5b61178a606461177c600b54600e54116117695760075461176d565b6009545b8561225f90919063ffffffff16565b6122d690919063ffffffff16565b905060065f9054906101000a900460ff16156119125760135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561184a575060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611911574360055f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054106118ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118c590613167565b60405180910390fd5b4360055f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b5b60145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156119bb575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611a0e575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15611ac857600f54821115611a58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a4f906131cf565b60405180910390fd5b60105482611a658561087d565b611a6f91906131ed565b1115611ab0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aa79061326a565b60405180910390fd5b600e5f815480929190611ac290612b75565b91905055505b60145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611b5057503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611b9457611b916064611b83600c54600e5411611b7057600854611b74565b600a545b8561225f90919063ffffffff16565b6122d690919063ffffffff16565b90505b5f611b9e3061087d565b9050601460159054906101000a900460ff16158015611c09575060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015611c215750601460169054906101000a900460ff165b8015611c2e575060115481115b8015611c3d5750600d54600e54115b15611c7757611c5f611c5a84611c558460125461231f565b61231f565b611f8b565b5f4790505f811115611c7557611c74476121f6565b5b505b505b5f811115611d7857611cd18160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461233790919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611d6f9190612606565b60405180910390a35b611dc88260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461239490919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611e6b611e1f828461239490919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461233790919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611f0e848661239490919063ffffffff16565b604051611f1b9190612606565b60405180910390a350505050565b5f838311158290611f70576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f6791906124c8565b60405180910390fd5b505f8385611f7e9190613288565b9050809150509392505050565b6001601460156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611fc257611fc16126a7565b5b604051908082528060200260200182016040528015611ff05781602001602082028036833780820191505090505b50905030815f8151811061200757612006612b48565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156120ab573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120cf9190612c38565b816001815181106120e3576120e2612b48565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506121493060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461134b565b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b81526004016121ab959493929190613372565b5f604051808303815f87803b1580156121c2575f80fd5b505af11580156121d4573d5f803e3d5ffd5b50505050505f601460156101000a81548160ff02191690831515021790555050565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f1935050505015801561225b573d5f803e3d5ffd5b5050565b5f80830361226f575f90506122d0565b5f828461227c9190612a9f565b905082848261228b91906133f7565b146122cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122c290613497565b60405180910390fd5b809150505b92915050565b5f61231783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506123dd565b905092915050565b5f81831161232d578261232f565b815b905092915050565b5f80828461234591906131ed565b90508381101561238a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612381906134ff565b60405180910390fd5b8091505092915050565b5f6123d583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611f29565b905092915050565b5f8083118290612423576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161241a91906124c8565b60405180910390fd5b505f838561243191906133f7565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b8381101561247557808201518184015260208101905061245a565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61249a8261243e565b6124a48185612448565b93506124b4818560208601612458565b6124bd81612480565b840191505092915050565b5f6020820190508181035f8301526124e08184612490565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f612522826124f9565b9050919050565b61253281612518565b811461253c575f80fd5b50565b5f8135905061254d81612529565b92915050565b5f819050919050565b61256581612553565b811461256f575f80fd5b50565b5f813590506125808161255c565b92915050565b5f806040838503121561259c5761259b6124f1565b5b5f6125a98582860161253f565b92505060206125ba85828601612572565b9150509250929050565b5f8115159050919050565b6125d8816125c4565b82525050565b5f6020820190506125f15f8301846125cf565b92915050565b61260081612553565b82525050565b5f6020820190506126195f8301846125f7565b92915050565b5f805f60608486031215612636576126356124f1565b5b5f6126438682870161253f565b93505060206126548682870161253f565b925050604061266586828701612572565b9150509250925092565b5f60ff82169050919050565b6126848161266f565b82525050565b5f60208201905061269d5f83018461267b565b92915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6126dd82612480565b810181811067ffffffffffffffff821117156126fc576126fb6126a7565b5b80604052505050565b5f61270e6124e8565b905061271a82826126d4565b919050565b5f67ffffffffffffffff821115612739576127386126a7565b5b602082029050602081019050919050565b5f80fd5b5f61276061275b8461271f565b612705565b905080838252602082019050602084028301858111156127835761278261274a565b5b835b818110156127ac5780612798888261253f565b845260208401935050602081019050612785565b5050509392505050565b5f82601f8301126127ca576127c96126a3565b5b81356127da84826020860161274e565b91505092915050565b5f602082840312156127f8576127f76124f1565b5b5f82013567ffffffffffffffff811115612815576128146124f5565b5b612821848285016127b6565b91505092915050565b5f6020828403121561283f5761283e6124f1565b5b5f61284c8482850161253f565b91505092915050565b5f806040838503121561286b5761286a6124f1565b5b5f61287885828601612572565b925050602061288985828601612572565b9150509250929050565b61289c81612518565b82525050565b5f6020820190506128b55f830184612893565b92915050565b5f80604083850312156128d1576128d06124f1565b5b5f6128de8582860161253f565b92505060206128ef8582860161253f565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111561297b57808604811115612957576129566128f9565b5b60018516156129665780820291505b808102905061297485612926565b945061293b565b94509492505050565b5f826129935760019050612a4e565b816129a0575f9050612a4e565b81600181146129b657600281146129c0576129ef565b6001915050612a4e565b60ff8411156129d2576129d16128f9565b5b8360020a9150848211156129e9576129e86128f9565b5b50612a4e565b5060208310610133831016604e8410600b8410161715612a245782820a905083811115612a1f57612a1e6128f9565b5b612a4e565b612a318484846001612932565b92509050818404811115612a4857612a476128f9565b5b81810290505b9392505050565b5f612a5f82612553565b9150612a6a8361266f565b9250612a977fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612984565b905092915050565b5f612aa982612553565b9150612ab483612553565b9250828202612ac281612553565b91508282048414831517612ad957612ad86128f9565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f612b14602083612448565b9150612b1f82612ae0565b602082019050919050565b5f6020820190508181035f830152612b4181612b08565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f612b7f82612553565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612bb157612bb06128f9565b5b600182019050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f612bf0601783612448565b9150612bfb82612bbc565b602082019050919050565b5f6020820190508181035f830152612c1d81612be4565b9050919050565b5f81519050612c3281612529565b92915050565b5f60208284031215612c4d57612c4c6124f1565b5b5f612c5a84828501612c24565b91505092915050565b5f604082019050612c765f830185612893565b612c836020830184612893565b9392505050565b5f819050919050565b5f819050919050565b5f612cb6612cb1612cac84612c8a565b612c93565b612553565b9050919050565b612cc681612c9c565b82525050565b5f60c082019050612cdf5f830189612893565b612cec60208301886125f7565b612cf96040830187612cbd565b612d066060830186612cbd565b612d136080830185612893565b612d2060a08301846125f7565b979650505050505050565b5f81519050612d398161255c565b92915050565b5f805f60608486031215612d5657612d556124f1565b5b5f612d6386828701612d2b565b9350506020612d7486828701612d2b565b9250506040612d8586828701612d2b565b9150509250925092565b5f604082019050612da25f830185612893565b612daf60208301846125f7565b9392505050565b612dbf816125c4565b8114612dc9575f80fd5b50565b5f81519050612dda81612db6565b92915050565b5f60208284031215612df557612df46124f1565b5b5f612e0284828501612dcc565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f612e65602483612448565b9150612e7082612e0b565b604082019050919050565b5f6020820190508181035f830152612e9281612e59565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612ef3602283612448565b9150612efe82612e99565b604082019050919050565b5f6020820190508181035f830152612f2081612ee7565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612f81602583612448565b9150612f8c82612f27565b604082019050919050565b5f6020820190508181035f830152612fae81612f75565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f61300f602383612448565b915061301a82612fb5565b604082019050919050565b5f6020820190508181035f83015261303c81613003565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f61309d602983612448565b91506130a882613043565b604082019050919050565b5f6020820190508181035f8301526130ca81613091565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c5f8201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b5f613151604983612448565b915061315c826130d1565b606082019050919050565b5f6020820190508181035f83015261317e81613145565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f6131b9601983612448565b91506131c482613185565b602082019050919050565b5f6020820190508181035f8301526131e6816131ad565b9050919050565b5f6131f782612553565b915061320283612553565b925082820190508082111561321a576132196128f9565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f613254601a83612448565b915061325f82613220565b602082019050919050565b5f6020820190508181035f83015261328181613248565b9050919050565b5f61329282612553565b915061329d83612553565b92508282039050818111156132b5576132b46128f9565b5b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6132ed81612518565b82525050565b5f6132fe83836132e4565b60208301905092915050565b5f602082019050919050565b5f613320826132bb565b61332a81856132c5565b9350613335836132d5565b805f5b8381101561336557815161334c88826132f3565b97506133578361330a565b925050600181019050613338565b5085935050505092915050565b5f60a0820190506133855f8301886125f7565b6133926020830187612cbd565b81810360408301526133a48186613316565b90506133b36060830185612893565b6133c060808301846125f7565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61340182612553565b915061340c83612553565b92508261341c5761341b6133ca565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f613481602183612448565b915061348c82613427565b604082019050919050565b5f6020820190508181035f8301526134ae81613475565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f6134e9601b83612448565b91506134f4826134b5565b602082019050919050565b5f6020820190508181035f830152613516816134dd565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63654920776173206f6e6c79206e696e65207965617273206f6c642e2049206c6f76656420536872656b20736f206d7563682c20492068616420616c6c20746865206d65726368616e6469736520616e64206d6f766965732e20492764207072617920746f20536872656b206576657279206e69676874206265666f7265204920676f20746f206265642c207468616e6b696e6720666f7220746865206c6966652049277665206265656e20676976656e2e2027536872656b206973206c6f7665272c204920776f756c64207361792c2027536872656b206973206c696665272e204d7920646164206865617273206d6520616e642063616c6c73206d65206120666167676f742e2049206b6e657720686520776173206a757374206a65616c6f757320666f72206d79206465766f74696f6e206f6620536872656b2e20492063616c6c65642068696d20612063756e742e20486520736c617073206d6520616e642073656e6473206d6520746f20676f20746f20736c6565702e2049276d20637279696e67206e6f7720616e64206d7920666163652068757274732e2049206c617920696e2062656420616e642069742773207265616c6c7920636f6c642e2041207761726d7468206973206d6f76696e6720746f7761726473206d652e2049206665656c20736f6d657468696e6720746f756368206d652e204974277320536872656b2e2049276d20736f2068617070792e20486520776869737065727320696e206d79206561722c202754686973206973206d79207377616d70272e204865206772616273206d6520776974682068697320706f77657266756c206f6772652068616e64732c20616e642070757473206d65206f6e206d792068616e647320616e64206b6e6565732e204920737072656164206d79206173732d636865656b7320666f7220536872656b2e2048652070656e65747261746573206d792062757474686f6c652e20497420687572747320736f206d7563682c20627574204920646f20697420666f7220536872656b2e20492063616e206665656c206d7920627574742074656172696e67206173206d79206579657320737461727420746f2077617465722e2049207075736820616761696e73742068697320666f7263652e20492077616e7420746f20706c6561736520536872656b2e20486520726f6172732061206d696768747920726f61722c2061732068652066696c6c73206d792062757474207769746820686973206c6f76652e204d79206461642077616c6b7320696e2e20536872656b206c6f6f6b732068696d20737472616967687420696e20746865206579652c20616e6420736179732c20274974277320616c6c206f677265206e6f77272e20536872656b206c6561766573207468726f756768206d792077696e646f772e20536872656b206973206c6f76652e20536872656b206973206c6966652ea264697066735822122027b5a7b38133b4e36fe72495f73d3d5604575eac98d4e67a74fca223580913a964736f6c63430008140033
Deployed Bytecode Sourcemap
11145:9807:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14131:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14964:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13406:52;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14408:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15133:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14317:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19326:162;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;19496:83;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20601:348;;;;;;;;;;;;;:::i;:::-;;14511:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10228:148;;;;;;;;;;;;;:::i;:::-;;20272:284;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;18850:196;;;;;;;;;;;;;:::i;:::-;;13216:54;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10014:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13277:57;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14222:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14638:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13341:58;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11533:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19587:671;;;;;;;;;;;;;:::i;:::-;;19154:164;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14813:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14131:83;14168:13;14201:5;;;;;;;;;;;;;;;;;14194:12;;14131:83;:::o;14964:161::-;15039:4;15056:39;15065:12;:10;:12::i;:::-;15079:7;15088:6;15056:8;:39::i;:::-;15113:4;15106:11;;14964:161;;;;:::o;13406:52::-;;;;:::o;14408:95::-;14461:7;11975:1;12031:2;:13;;;;:::i;:::-;12018:10;:26;;;;:::i;:::-;14481:14;;14408:95;:::o;15133:313::-;15231:4;15248:36;15258:6;15266:9;15277:6;15248:9;:36::i;:::-;15295:121;15304:6;15312:12;:10;:12::i;:::-;15326:89;15364:6;15326:89;;;;;;;;;;;;;;;;;:11;:19;15338:6;15326:19;;;;;;;;;;;;;;;:33;15346:12;:10;:12::i;:::-;15326:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;15295:8;:121::i;:::-;15434:4;15427:11;;15133:313;;;;;:::o;14317:83::-;14358:5;11975:1;14376:16;;14317:83;:::o;19326:162::-;10151:12;:10;:12::i;:::-;10141:22;;:6;;;;;;;;;;:22;;;10133:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;19399:6:::1;19394:87;19415:6;:13;19411:1;:17;19394:87;;;19466:5;19448:4;:15;19453:6;19460:1;19453:9;;;;;;;;:::i;:::-;;;;;;;;19448:15;;;;;;;;;;;;;;;;:23;;;;;;;;;;;;;;;;;;19430:3;;;;;:::i;:::-;;;;19394:87;;;;19326:162:::0;:::o;19496:83::-;19543:4;19564;:7;19569:1;19564:7;;;;;;;;;;;;;;;;;;;;;;;;;19557:14;;19496:83;;;:::o;20601:348::-;20665:10;;;;;;;;;;;20651:24;;:12;:10;:12::i;:::-;:24;;;20643:33;;;;;;20687:20;20708:24;20726:4;20708:9;:24::i;:::-;20687:45;;20759:1;20746:12;:14;20743:73;;;20774:30;20791:12;20774:16;:30::i;:::-;20743:73;20826:18;20845:21;20826:40;;20891:1;20880:10;:12;20877:65;;;20906:24;20919:10;20906:12;:24::i;:::-;20877:65;20632:317;;20601:348::o;14511:119::-;14577:7;14604:9;:18;14614:7;14604:18;;;;;;;;;;;;;;;;14597:25;;14511:119;;;:::o;10228:148::-;10151:12;:10;:12::i;:::-;10141:22;;:6;;;;;;;;;;:22;;;10133:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10335:1:::1;10298:40;;10319:6;::::0;::::1;;;;;;;;10298:40;;;;;;;;;;;;10366:1;10349:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;10228:148::o:0;20272:284::-;20377:10;;;;;;;;;;;20363:24;;:12;:10;:12::i;:::-;:24;;;20355:33;;;;;;20413:13;20399:12;:27;;;;20452:14;20437:13;:29;;;;20493:13;20477:14;:29;;;;20534:14;20517:15;:31;;;;20272:284;;:::o;18850:196::-;10151:12;:10;:12::i;:::-;10141:22;;:6;;;;;;;;;;:22;;;10133:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11975:1:::1;12031:2;:13;;;;:::i;:::-;12018:10;:26;;;;:::i;:::-;18903:12;:22;;;;11975:1;12031:2;:13;;;;:::i;:::-;12018:10;:26;;;;:::i;:::-;18936:14;:22;;;;18990:5;18969:20;;:26;;;;;;;;;;;;;;;;;;19011:27;11975:1;12031:2;:13;;;;:::i;:::-;12018:10;:26;;;;:::i;:::-;19011:27;;;;;;:::i;:::-;;;;;;;;18850:196::o:0;13216:54::-;;;;:::o;10014:79::-;10052:7;10079:6;;;;;;;;;;;10072:13;;10014:79;:::o;13277:57::-;;;;:::o;14222:87::-;14261:13;14294:7;;;;;;;;;;;;;;;;;14287:14;;14222:87;:::o;14638:167::-;14716:4;14733:42;14743:12;:10;:12::i;:::-;14757:9;14768:6;14733:9;:42::i;:::-;14793:4;14786:11;;14638:167;;;;:::o;13341:58::-;;;;:::o;11533:39::-;;;;;;;;;;;;;:::o;19587:671::-;10151:12;:10;:12::i;:::-;10141:22;;:6;;;;;;;;;;:22;;;10133:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;19651:11:::1;::::0;::::1;;;;;;;;19650:12;19642:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;19737:42;19700:15;;:80;;;;;;;;;;;;;;;;;;19791:58;19808:4;19823:15;;;;;;;;;;;11975:1;12031:2;:13;;;;:::i;:::-;12018:10;:26;;;;:::i;:::-;19791:8;:58::i;:::-;19894:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19876:55;;;19940:4;19947:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19876:94;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19860:13;;:110;;;;;;;;;;;;;;;;;;19981:15;;;;;;;;;;;:31;;;20020:21;20051:4;20057:24;20075:4;20057:9;:24::i;:::-;20082:1;20084::::0;20086:7:::1;:5;:7::i;:::-;20094:15;19981:129;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;20128:13;;;;;;;;;;;20121:29;;;20159:15;;;;;;;;;;;20177:14;20121:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;20217:4;20203:11;;:18;;;;;;;;;;;;;;;;;;20246:4;20232:11;::::0;:18:::1;;;;;;;;;;;;;;;;;;19587:671::o:0;19154:164::-;10151:12;:10;:12::i;:::-;10141:22;;:6;;;;;;;;;;:22;;;10133:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;19228:6:::1;19223:88;19244:5;:12;19240:1;:16;19223:88;;;19295:4;19278;:14;19283:5;19289:1;19283:8;;;;;;;;:::i;:::-;;;;;;;;19278:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;19258:3;;;;;:::i;:::-;;;;19223:88;;;;19154:164:::0;:::o;14813:143::-;14894:7;14921:11;:18;14933:5;14921:18;;;;;;;;;;;;;;;:27;14940:7;14921:27;;;;;;;;;;;;;;;;14914:34;;14813:143;;;;:::o;7769:98::-;7822:7;7849:10;7842:17;;7769:98;:::o;15454:335::-;15564:1;15547:19;;:5;:19;;;15539:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;15645:1;15626:21;;:7;:21;;;15618:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;15727:6;15697:11;:18;15709:5;15697:18;;;;;;;;;;;;;;;:27;15716:7;15697:27;;;;;;;;;;;;;;;:36;;;;15765:7;15749:32;;15758:5;15749:32;;;15774:6;15749:32;;;;;;:::i;:::-;;;;;;;;15454:335;;;:::o;15797:2446::-;15901:1;15885:18;;:4;:18;;;15877:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;15978:1;15964:16;;:2;:16;;;15956:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;16048:1;16039:6;:10;16031:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;16106:17;16148:7;:5;:7::i;:::-;16140:15;;:4;:15;;;;:32;;;;;16165:7;:5;:7::i;:::-;16159:13;;:2;:13;;;;16140:32;16136:1751;;;16198:4;:10;16203:4;16198:10;;;;;;;;;;;;;;;;;;;;;;;;;16197:11;:24;;;;;16213:4;:8;16218:2;16213:8;;;;;;;;;;;;;;;;;;;;;;;;;16212:9;16197:24;16189:33;;;;;;16249:76;16321:3;16249:67;16271:15;;16261:9;;:25;16260:55;;16301:14;;16260:55;;;16288:12;;16260:55;16249:6;:10;;:67;;;;:::i;:::-;:71;;:76;;;;:::i;:::-;16237:88;;16346:20;;;;;;;;;;;16342:508;;;16407:15;;;;;;;;;;;16393:30;;:2;:30;;;;:62;;;;;16441:13;;;;;;;;;;;16427:28;;:2;:28;;;;16393:62;16389:444;;;16591:12;16518:28;:39;16547:9;16518:39;;;;;;;;;;;;;;;;:85;16482:250;;;;;;;;;;;;:::i;:::-;;;;;;;;;16799:12;16757:28;:39;16786:9;16757:39;;;;;;;;;;;;;;;:54;;;;16389:444;16342:508;16878:13;;;;;;;;;;;16870:21;;:4;:21;;;:55;;;;;16909:15;;;;;;;;;;;16895:30;;:2;:30;;;;16870:55;:83;;;;;16931:18;:22;16950:2;16931:22;;;;;;;;;;;;;;;;;;;;;;;;;16929:24;16870:83;16866:313;;;16993:12;;16983:6;:22;;16975:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;17088:14;;17078:6;17062:13;17072:2;17062:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;17054:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;17152:9;;:11;;;;;;;;;:::i;:::-;;;;;;16866:313;17204:13;;;;;;;;;;;17198:19;;:2;:19;;;:43;;;;;17236:4;17221:20;;:4;:20;;;;17198:43;17195:174;;;17274:79;17349:3;17274:70;17296:16;;17286:9;;:26;17285:58;;17328:15;;17285:58;;;17314:13;;17285:58;17274:6;:10;;:70;;;;:::i;:::-;:74;;:79;;;;:::i;:::-;17262:91;;17195:174;17385:28;17416:24;17434:4;17416:9;:24::i;:::-;17385:55;;17460:6;;;;;;;;;;;17459:7;:32;;;;;17478:13;;;;;;;;;;;17470:21;;:2;:21;;;17459:32;:47;;;;;17495:11;;;;;;;;;;;17459:47;:89;;;;;17531:17;;17510:20;:38;17459:89;:121;;;;;17562:18;;17552:9;;:28;17459:121;17455:421;;;17601:67;17618:49;17622:6;17629:37;17633:20;17654:11;;17629:3;:37::i;:::-;17618:3;:49::i;:::-;17601:16;:67::i;:::-;17687:26;17716:21;17687:50;;17780:1;17759:18;:22;17756:105;;;17806:35;17819:21;17806:12;:35::i;:::-;17756:105;17582:294;17455:421;16174:1713;16136:1751;17912:1;17902:9;:11;17899:161;;;17952:39;17981:9;17952;:24;17970:4;17952:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;17927:9;:24;17945:4;17927:24;;;;;;;;;;;;;;;:64;;;;18032:4;18009:39;;18018:4;18009:39;;;18038:9;18009:39;;;;;;:::i;:::-;;;;;;;;17899:161;18086:27;18106:6;18086:9;:15;18096:4;18086:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;18070:9;:15;18080:4;18070:15;;;;;;;;;;;;;;;:43;;;;18138:40;18156:21;18167:9;18156:6;:10;;:21;;;;:::i;:::-;18138:9;:13;18148:2;18138:13;;;;;;;;;;;;;;;;:17;;:40;;;;:::i;:::-;18124:9;:13;18134:2;18124:13;;;;;;;;;;;;;;;:54;;;;18209:2;18194:41;;18203:4;18194:41;;;18213:21;18224:9;18213:6;:10;;:21;;;;:::i;:::-;18194:41;;;;;;:::i;:::-;;;;;;;;15866:2377;15797:2446;;;:::o;8906:190::-;8992:7;9025:1;9020;:6;;9028:12;9012:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;9052:9;9068:1;9064;:5;;;;:::i;:::-;9052:17;;9087:1;9080:8;;;8906:190;;;;;:::o;18359:483::-;13749:4;13740:6;;:13;;;;;;;;;;;;;;;;;;18437:21:::1;18475:1;18461:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18437:40;;18506:4;18488;18493:1;18488:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;18532:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18522:4;18527:1;18522:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;18565:62;18582:4;18597:15;;;;;;;;;;;18615:11;18565:8;:62::i;:::-;18638:15;;;;;;;;;;;:66;;;18719:11;18745:1;18761:4;18788;18808:15;18638:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;18426:416;13785:5:::0;13776:6;;:14;;;;;;;;;;;;;;;;;;18359:483;:::o;19054:92::-;19111:10;;;;;;;;;;;:19;;:27;19131:6;19111:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19054:92;:::o;9104:246::-;9162:7;9191:1;9186;:6;9182:47;;9216:1;9209:8;;;;9182:47;9239:9;9255:1;9251;:5;;;;:::i;:::-;9239:17;;9284:1;9279;9275;:5;;;;:::i;:::-;:10;9267:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;9341:1;9334:8;;;9104:246;;;;;:::o;9358:132::-;9416:7;9443:39;9447:1;9450;9443:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;9436:46;;9358:132;;;;:::o;18253:98::-;18310:7;18337:1;18335;:3;18334:9;;18342:1;18334:9;;;18340:1;18334:9;18327:16;;18253:98;;;;:::o;8575:179::-;8633:7;8653:9;8669:1;8665;:5;;;;:::i;:::-;8653:17;;8694:1;8689;:6;;8681:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;8745:1;8738:8;;;8575:179;;;;:::o;8762:136::-;8820:7;8847:43;8851:1;8854;8847:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;8840:50;;8762:136;;;;:::o;9498:189::-;9584:7;9616:1;9612;:5;9619:12;9604:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;9643:9;9659:1;9655;:5;;;;:::i;:::-;9643:17;;9678:1;9671:8;;;9498:189;;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1349:75::-;1382:6;1415:2;1409:9;1399:19;;1349:75;:::o;1430:117::-;1539:1;1536;1529:12;1553:117;1662:1;1659;1652:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:118::-;3533:24;3551:5;3533:24;:::i;:::-;3528:3;3521:37;3446:118;;:::o;3570:222::-;3663:4;3701:2;3690:9;3686:18;3678:26;;3714:71;3782:1;3771:9;3767:17;3758:6;3714:71;:::i;:::-;3570:222;;;;:::o;3798:619::-;3875:6;3883;3891;3940:2;3928:9;3919:7;3915:23;3911:32;3908:119;;;3946:79;;:::i;:::-;3908:119;4066:1;4091:53;4136:7;4127:6;4116:9;4112:22;4091:53;:::i;:::-;4081:63;;4037:117;4193:2;4219:53;4264:7;4255:6;4244:9;4240:22;4219:53;:::i;:::-;4209:63;;4164:118;4321:2;4347:53;4392:7;4383:6;4372:9;4368:22;4347:53;:::i;:::-;4337:63;;4292:118;3798:619;;;;;:::o;4423:86::-;4458:7;4498:4;4491:5;4487:16;4476:27;;4423:86;;;:::o;4515:112::-;4598:22;4614:5;4598:22;:::i;:::-;4593:3;4586:35;4515:112;;:::o;4633:214::-;4722:4;4760:2;4749:9;4745:18;4737:26;;4773:67;4837:1;4826:9;4822:17;4813:6;4773:67;:::i;:::-;4633:214;;;;:::o;4853:117::-;4962:1;4959;4952:12;4976:180;5024:77;5021:1;5014:88;5121:4;5118:1;5111:15;5145:4;5142:1;5135:15;5162:281;5245:27;5267:4;5245:27;:::i;:::-;5237:6;5233:40;5375:6;5363:10;5360:22;5339:18;5327:10;5324:34;5321:62;5318:88;;;5386:18;;:::i;:::-;5318:88;5426:10;5422:2;5415:22;5205:238;5162:281;;:::o;5449:129::-;5483:6;5510:20;;:::i;:::-;5500:30;;5539:33;5567:4;5559:6;5539:33;:::i;:::-;5449:129;;;:::o;5584:311::-;5661:4;5751:18;5743:6;5740:30;5737:56;;;5773:18;;:::i;:::-;5737:56;5823:4;5815:6;5811:17;5803:25;;5883:4;5877;5873:15;5865:23;;5584:311;;;:::o;5901:117::-;6010:1;6007;6000:12;6041:710;6137:5;6162:81;6178:64;6235:6;6178:64;:::i;:::-;6162:81;:::i;:::-;6153:90;;6263:5;6292:6;6285:5;6278:21;6326:4;6319:5;6315:16;6308:23;;6379:4;6371:6;6367:17;6359:6;6355:30;6408:3;6400:6;6397:15;6394:122;;;6427:79;;:::i;:::-;6394:122;6542:6;6525:220;6559:6;6554:3;6551:15;6525:220;;;6634:3;6663:37;6696:3;6684:10;6663:37;:::i;:::-;6658:3;6651:50;6730:4;6725:3;6721:14;6714:21;;6601:144;6585:4;6580:3;6576:14;6569:21;;6525:220;;;6529:21;6143:608;;6041:710;;;;;:::o;6774:370::-;6845:5;6894:3;6887:4;6879:6;6875:17;6871:27;6861:122;;6902:79;;:::i;:::-;6861:122;7019:6;7006:20;7044:94;7134:3;7126:6;7119:4;7111:6;7107:17;7044:94;:::i;:::-;7035:103;;6851:293;6774:370;;;;:::o;7150:539::-;7234:6;7283:2;7271:9;7262:7;7258:23;7254:32;7251:119;;;7289:79;;:::i;:::-;7251:119;7437:1;7426:9;7422:17;7409:31;7467:18;7459:6;7456:30;7453:117;;;7489:79;;:::i;:::-;7453:117;7594:78;7664:7;7655:6;7644:9;7640:22;7594:78;:::i;:::-;7584:88;;7380:302;7150:539;;;;:::o;7695:329::-;7754:6;7803:2;7791:9;7782:7;7778:23;7774:32;7771:119;;;7809:79;;:::i;:::-;7771:119;7929:1;7954:53;7999:7;7990:6;7979:9;7975:22;7954:53;:::i;:::-;7944:63;;7900:117;7695:329;;;;:::o;8030:474::-;8098:6;8106;8155:2;8143:9;8134:7;8130:23;8126:32;8123:119;;;8161:79;;:::i;:::-;8123:119;8281:1;8306:53;8351:7;8342:6;8331:9;8327:22;8306:53;:::i;:::-;8296:63;;8252:117;8408:2;8434:53;8479:7;8470:6;8459:9;8455:22;8434:53;:::i;:::-;8424:63;;8379:118;8030:474;;;;;:::o;8510:118::-;8597:24;8615:5;8597:24;:::i;:::-;8592:3;8585:37;8510:118;;:::o;8634:222::-;8727:4;8765:2;8754:9;8750:18;8742:26;;8778:71;8846:1;8835:9;8831:17;8822:6;8778:71;:::i;:::-;8634:222;;;;:::o;8862:474::-;8930:6;8938;8987:2;8975:9;8966:7;8962:23;8958:32;8955:119;;;8993:79;;:::i;:::-;8955:119;9113:1;9138:53;9183:7;9174:6;9163:9;9159:22;9138:53;:::i;:::-;9128:63;;9084:117;9240:2;9266:53;9311:7;9302:6;9291:9;9287:22;9266:53;:::i;:::-;9256:63;;9211:118;8862:474;;;;;:::o;9342:180::-;9390:77;9387:1;9380:88;9487:4;9484:1;9477:15;9511:4;9508:1;9501:15;9528:102;9570:8;9617:5;9614:1;9610:13;9589:34;;9528:102;;;:::o;9636:848::-;9697:5;9704:4;9728:6;9719:15;;9752:5;9743:14;;9766:712;9787:1;9777:8;9774:15;9766:712;;;9882:4;9877:3;9873:14;9867:4;9864:24;9861:50;;;9891:18;;:::i;:::-;9861:50;9941:1;9931:8;9927:16;9924:451;;;10356:4;10349:5;10345:16;10336:25;;9924:451;10406:4;10400;10396:15;10388:23;;10436:32;10459:8;10436:32;:::i;:::-;10424:44;;9766:712;;;9636:848;;;;;;;:::o;10490:1073::-;10544:5;10735:8;10725:40;;10756:1;10747:10;;10758:5;;10725:40;10784:4;10774:36;;10801:1;10792:10;;10803:5;;10774:36;10870:4;10918:1;10913:27;;;;10954:1;10949:191;;;;10863:277;;10913:27;10931:1;10922:10;;10933:5;;;10949:191;10994:3;10984:8;10981:17;10978:43;;;11001:18;;:::i;:::-;10978:43;11050:8;11047:1;11043:16;11034:25;;11085:3;11078:5;11075:14;11072:40;;;11092:18;;:::i;:::-;11072:40;11125:5;;;10863:277;;11249:2;11239:8;11236:16;11230:3;11224:4;11221:13;11217:36;11199:2;11189:8;11186:16;11181:2;11175:4;11172:12;11168:35;11152:111;11149:246;;;11305:8;11299:4;11295:19;11286:28;;11340:3;11333:5;11330:14;11327:40;;;11347:18;;:::i;:::-;11327:40;11380:5;;11149:246;11420:42;11458:3;11448:8;11442:4;11439:1;11420:42;:::i;:::-;11405:57;;;;11494:4;11489:3;11485:14;11478:5;11475:25;11472:51;;;11503:18;;:::i;:::-;11472:51;11552:4;11545:5;11541:16;11532:25;;10490:1073;;;;;;:::o;11569:281::-;11627:5;11651:23;11669:4;11651:23;:::i;:::-;11643:31;;11695:25;11711:8;11695:25;:::i;:::-;11683:37;;11739:104;11776:66;11766:8;11760:4;11739:104;:::i;:::-;11730:113;;11569:281;;;;:::o;11856:410::-;11896:7;11919:20;11937:1;11919:20;:::i;:::-;11914:25;;11953:20;11971:1;11953:20;:::i;:::-;11948:25;;12008:1;12005;12001:9;12030:30;12048:11;12030:30;:::i;:::-;12019:41;;12209:1;12200:7;12196:15;12193:1;12190:22;12170:1;12163:9;12143:83;12120:139;;12239:18;;:::i;:::-;12120:139;11904:362;11856:410;;;;:::o;12272:182::-;12412:34;12408:1;12400:6;12396:14;12389:58;12272:182;:::o;12460:366::-;12602:3;12623:67;12687:2;12682:3;12623:67;:::i;:::-;12616:74;;12699:93;12788:3;12699:93;:::i;:::-;12817:2;12812:3;12808:12;12801:19;;12460:366;;;:::o;12832:419::-;12998:4;13036:2;13025:9;13021:18;13013:26;;13085:9;13079:4;13075:20;13071:1;13060:9;13056:17;13049:47;13113:131;13239:4;13113:131;:::i;:::-;13105:139;;12832:419;;;:::o;13257:180::-;13305:77;13302:1;13295:88;13402:4;13399:1;13392:15;13426:4;13423:1;13416:15;13443:233;13482:3;13505:24;13523:5;13505:24;:::i;:::-;13496:33;;13551:66;13544:5;13541:77;13538:103;;13621:18;;:::i;:::-;13538:103;13668:1;13661:5;13657:13;13650:20;;13443:233;;;:::o;13682:173::-;13822:25;13818:1;13810:6;13806:14;13799:49;13682:173;:::o;13861:366::-;14003:3;14024:67;14088:2;14083:3;14024:67;:::i;:::-;14017:74;;14100:93;14189:3;14100:93;:::i;:::-;14218:2;14213:3;14209:12;14202:19;;13861:366;;;:::o;14233:419::-;14399:4;14437:2;14426:9;14422:18;14414:26;;14486:9;14480:4;14476:20;14472:1;14461:9;14457:17;14450:47;14514:131;14640:4;14514:131;:::i;:::-;14506:139;;14233:419;;;:::o;14658:143::-;14715:5;14746:6;14740:13;14731:22;;14762:33;14789:5;14762:33;:::i;:::-;14658:143;;;;:::o;14807:351::-;14877:6;14926:2;14914:9;14905:7;14901:23;14897:32;14894:119;;;14932:79;;:::i;:::-;14894:119;15052:1;15077:64;15133:7;15124:6;15113:9;15109:22;15077:64;:::i;:::-;15067:74;;15023:128;14807:351;;;;:::o;15164:332::-;15285:4;15323:2;15312:9;15308:18;15300:26;;15336:71;15404:1;15393:9;15389:17;15380:6;15336:71;:::i;:::-;15417:72;15485:2;15474:9;15470:18;15461:6;15417:72;:::i;:::-;15164:332;;;;;:::o;15502:85::-;15547:7;15576:5;15565:16;;15502:85;;;:::o;15593:60::-;15621:3;15642:5;15635:12;;15593:60;;;:::o;15659:158::-;15717:9;15750:61;15768:42;15777:32;15803:5;15777:32;:::i;:::-;15768:42;:::i;:::-;15750:61;:::i;:::-;15737:74;;15659:158;;;:::o;15823:147::-;15918:45;15957:5;15918:45;:::i;:::-;15913:3;15906:58;15823:147;;:::o;15976:807::-;16225:4;16263:3;16252:9;16248:19;16240:27;;16277:71;16345:1;16334:9;16330:17;16321:6;16277:71;:::i;:::-;16358:72;16426:2;16415:9;16411:18;16402:6;16358:72;:::i;:::-;16440:80;16516:2;16505:9;16501:18;16492:6;16440:80;:::i;:::-;16530;16606:2;16595:9;16591:18;16582:6;16530:80;:::i;:::-;16620:73;16688:3;16677:9;16673:19;16664:6;16620:73;:::i;:::-;16703;16771:3;16760:9;16756:19;16747:6;16703:73;:::i;:::-;15976:807;;;;;;;;;:::o;16789:143::-;16846:5;16877:6;16871:13;16862:22;;16893:33;16920:5;16893:33;:::i;:::-;16789:143;;;;:::o;16938:663::-;17026:6;17034;17042;17091:2;17079:9;17070:7;17066:23;17062:32;17059:119;;;17097:79;;:::i;:::-;17059:119;17217:1;17242:64;17298:7;17289:6;17278:9;17274:22;17242:64;:::i;:::-;17232:74;;17188:128;17355:2;17381:64;17437:7;17428:6;17417:9;17413:22;17381:64;:::i;:::-;17371:74;;17326:129;17494:2;17520:64;17576:7;17567:6;17556:9;17552:22;17520:64;:::i;:::-;17510:74;;17465:129;16938:663;;;;;:::o;17607:332::-;17728:4;17766:2;17755:9;17751:18;17743:26;;17779:71;17847:1;17836:9;17832:17;17823:6;17779:71;:::i;:::-;17860:72;17928:2;17917:9;17913:18;17904:6;17860:72;:::i;:::-;17607:332;;;;;:::o;17945:116::-;18015:21;18030:5;18015:21;:::i;:::-;18008:5;18005:32;17995:60;;18051:1;18048;18041:12;17995:60;17945:116;:::o;18067:137::-;18121:5;18152:6;18146:13;18137:22;;18168:30;18192:5;18168:30;:::i;:::-;18067:137;;;;:::o;18210:345::-;18277:6;18326:2;18314:9;18305:7;18301:23;18297:32;18294:119;;;18332:79;;:::i;:::-;18294:119;18452:1;18477:61;18530:7;18521:6;18510:9;18506:22;18477:61;:::i;:::-;18467:71;;18423:125;18210:345;;;;:::o;18561:223::-;18701:34;18697:1;18689:6;18685:14;18678:58;18770:6;18765:2;18757:6;18753:15;18746:31;18561:223;:::o;18790:366::-;18932:3;18953:67;19017:2;19012:3;18953:67;:::i;:::-;18946:74;;19029:93;19118:3;19029:93;:::i;:::-;19147:2;19142:3;19138:12;19131:19;;18790:366;;;:::o;19162:419::-;19328:4;19366:2;19355:9;19351:18;19343:26;;19415:9;19409:4;19405:20;19401:1;19390:9;19386:17;19379:47;19443:131;19569:4;19443:131;:::i;:::-;19435:139;;19162:419;;;:::o;19587:221::-;19727:34;19723:1;19715:6;19711:14;19704:58;19796:4;19791:2;19783:6;19779:15;19772:29;19587:221;:::o;19814:366::-;19956:3;19977:67;20041:2;20036:3;19977:67;:::i;:::-;19970:74;;20053:93;20142:3;20053:93;:::i;:::-;20171:2;20166:3;20162:12;20155:19;;19814:366;;;:::o;20186:419::-;20352:4;20390:2;20379:9;20375:18;20367:26;;20439:9;20433:4;20429:20;20425:1;20414:9;20410:17;20403:47;20467:131;20593:4;20467:131;:::i;:::-;20459:139;;20186:419;;;:::o;20611:224::-;20751:34;20747:1;20739:6;20735:14;20728:58;20820:7;20815:2;20807:6;20803:15;20796:32;20611:224;:::o;20841:366::-;20983:3;21004:67;21068:2;21063:3;21004:67;:::i;:::-;20997:74;;21080:93;21169:3;21080:93;:::i;:::-;21198:2;21193:3;21189:12;21182:19;;20841:366;;;:::o;21213:419::-;21379:4;21417:2;21406:9;21402:18;21394:26;;21466:9;21460:4;21456:20;21452:1;21441:9;21437:17;21430:47;21494:131;21620:4;21494:131;:::i;:::-;21486:139;;21213:419;;;:::o;21638:222::-;21778:34;21774:1;21766:6;21762:14;21755:58;21847:5;21842:2;21834:6;21830:15;21823:30;21638:222;:::o;21866:366::-;22008:3;22029:67;22093:2;22088:3;22029:67;:::i;:::-;22022:74;;22105:93;22194:3;22105:93;:::i;:::-;22223:2;22218:3;22214:12;22207:19;;21866:366;;;:::o;22238:419::-;22404:4;22442:2;22431:9;22427:18;22419:26;;22491:9;22485:4;22481:20;22477:1;22466:9;22462:17;22455:47;22519:131;22645:4;22519:131;:::i;:::-;22511:139;;22238:419;;;:::o;22663:228::-;22803:34;22799:1;22791:6;22787:14;22780:58;22872:11;22867:2;22859:6;22855:15;22848:36;22663:228;:::o;22897:366::-;23039:3;23060:67;23124:2;23119:3;23060:67;:::i;:::-;23053:74;;23136:93;23225:3;23136:93;:::i;:::-;23254:2;23249:3;23245:12;23238:19;;22897:366;;;:::o;23269:419::-;23435:4;23473:2;23462:9;23458:18;23450:26;;23522:9;23516:4;23512:20;23508:1;23497:9;23493:17;23486:47;23550:131;23676:4;23550:131;:::i;:::-;23542:139;;23269:419;;;:::o;23694:297::-;23834:34;23830:1;23822:6;23818:14;23811:58;23903:34;23898:2;23890:6;23886:15;23879:59;23972:11;23967:2;23959:6;23955:15;23948:36;23694:297;:::o;23997:366::-;24139:3;24160:67;24224:2;24219:3;24160:67;:::i;:::-;24153:74;;24236:93;24325:3;24236:93;:::i;:::-;24354:2;24349:3;24345:12;24338:19;;23997:366;;;:::o;24369:419::-;24535:4;24573:2;24562:9;24558:18;24550:26;;24622:9;24616:4;24612:20;24608:1;24597:9;24593:17;24586:47;24650:131;24776:4;24650:131;:::i;:::-;24642:139;;24369:419;;;:::o;24794:175::-;24934:27;24930:1;24922:6;24918:14;24911:51;24794:175;:::o;24975:366::-;25117:3;25138:67;25202:2;25197:3;25138:67;:::i;:::-;25131:74;;25214:93;25303:3;25214:93;:::i;:::-;25332:2;25327:3;25323:12;25316:19;;24975:366;;;:::o;25347:419::-;25513:4;25551:2;25540:9;25536:18;25528:26;;25600:9;25594:4;25590:20;25586:1;25575:9;25571:17;25564:47;25628:131;25754:4;25628:131;:::i;:::-;25620:139;;25347:419;;;:::o;25772:191::-;25812:3;25831:20;25849:1;25831:20;:::i;:::-;25826:25;;25865:20;25883:1;25865:20;:::i;:::-;25860:25;;25908:1;25905;25901:9;25894:16;;25929:3;25926:1;25923:10;25920:36;;;25936:18;;:::i;:::-;25920:36;25772:191;;;;:::o;25969:176::-;26109:28;26105:1;26097:6;26093:14;26086:52;25969:176;:::o;26151:366::-;26293:3;26314:67;26378:2;26373:3;26314:67;:::i;:::-;26307:74;;26390:93;26479:3;26390:93;:::i;:::-;26508:2;26503:3;26499:12;26492:19;;26151:366;;;:::o;26523:419::-;26689:4;26727:2;26716:9;26712:18;26704:26;;26776:9;26770:4;26766:20;26762:1;26751:9;26747:17;26740:47;26804:131;26930:4;26804:131;:::i;:::-;26796:139;;26523:419;;;:::o;26948:194::-;26988:4;27008:20;27026:1;27008:20;:::i;:::-;27003:25;;27042:20;27060:1;27042:20;:::i;:::-;27037:25;;27086:1;27083;27079:9;27071:17;;27110:1;27104:4;27101:11;27098:37;;;27115:18;;:::i;:::-;27098:37;26948:194;;;;:::o;27148:114::-;27215:6;27249:5;27243:12;27233:22;;27148:114;;;:::o;27268:184::-;27367:11;27401:6;27396:3;27389:19;27441:4;27436:3;27432:14;27417:29;;27268:184;;;;:::o;27458:132::-;27525:4;27548:3;27540:11;;27578:4;27573:3;27569:14;27561:22;;27458:132;;;:::o;27596:108::-;27673:24;27691:5;27673:24;:::i;:::-;27668:3;27661:37;27596:108;;:::o;27710:179::-;27779:10;27800:46;27842:3;27834:6;27800:46;:::i;:::-;27878:4;27873:3;27869:14;27855:28;;27710:179;;;;:::o;27895:113::-;27965:4;27997;27992:3;27988:14;27980:22;;27895:113;;;:::o;28044:732::-;28163:3;28192:54;28240:5;28192:54;:::i;:::-;28262:86;28341:6;28336:3;28262:86;:::i;:::-;28255:93;;28372:56;28422:5;28372:56;:::i;:::-;28451:7;28482:1;28467:284;28492:6;28489:1;28486:13;28467:284;;;28568:6;28562:13;28595:63;28654:3;28639:13;28595:63;:::i;:::-;28588:70;;28681:60;28734:6;28681:60;:::i;:::-;28671:70;;28527:224;28514:1;28511;28507:9;28502:14;;28467:284;;;28471:14;28767:3;28760:10;;28168:608;;;28044:732;;;;:::o;28782:831::-;29045:4;29083:3;29072:9;29068:19;29060:27;;29097:71;29165:1;29154:9;29150:17;29141:6;29097:71;:::i;:::-;29178:80;29254:2;29243:9;29239:18;29230:6;29178:80;:::i;:::-;29305:9;29299:4;29295:20;29290:2;29279:9;29275:18;29268:48;29333:108;29436:4;29427:6;29333:108;:::i;:::-;29325:116;;29451:72;29519:2;29508:9;29504:18;29495:6;29451:72;:::i;:::-;29533:73;29601:3;29590:9;29586:19;29577:6;29533:73;:::i;:::-;28782:831;;;;;;;;:::o;29619:180::-;29667:77;29664:1;29657:88;29764:4;29761:1;29754:15;29788:4;29785:1;29778:15;29805:185;29845:1;29862:20;29880:1;29862:20;:::i;:::-;29857:25;;29896:20;29914:1;29896:20;:::i;:::-;29891:25;;29935:1;29925:35;;29940:18;;:::i;:::-;29925:35;29982:1;29979;29975:9;29970:14;;29805:185;;;;:::o;29996:220::-;30136:34;30132:1;30124:6;30120:14;30113:58;30205:3;30200:2;30192:6;30188:15;30181:28;29996:220;:::o;30222:366::-;30364:3;30385:67;30449:2;30444:3;30385:67;:::i;:::-;30378:74;;30461:93;30550:3;30461:93;:::i;:::-;30579:2;30574:3;30570:12;30563:19;;30222:366;;;:::o;30594:419::-;30760:4;30798:2;30787:9;30783:18;30775:26;;30847:9;30841:4;30837:20;30833:1;30822:9;30818:17;30811:47;30875:131;31001:4;30875:131;:::i;:::-;30867:139;;30594:419;;;:::o;31019:177::-;31159:29;31155:1;31147:6;31143:14;31136:53;31019:177;:::o;31202:366::-;31344:3;31365:67;31429:2;31424:3;31365:67;:::i;:::-;31358:74;;31441:93;31530:3;31441:93;:::i;:::-;31559:2;31554:3;31550:12;31543:19;;31202:366;;;:::o;31574:419::-;31740:4;31778:2;31767:9;31763:18;31755:26;;31827:9;31821:4;31817:20;31813:1;31802:9;31798:17;31791:47;31855:131;31981:4;31855:131;:::i;:::-;31847:139;;31574:419;;;:::o
Swarm Source
ipfs://27b5a7b38133b4e36fe72495f73d3d5604575eac98d4e67a74fca223580913a9
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.