ERC-20
Overview
Max Total Supply
1,000,000 CHAD
Holders
20
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
9,199.08 CHADValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
GIGA
Compiler Version
v0.8.7+commit.e28d00a7
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-06-19 */ //SPDX-License-Identifier: MIT pragma solidity ^0.8.0; 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; } } interface IERC20 { function totalSupply() external view returns (uint256); function decimals() external view returns (uint8); function symbol() external view returns (string memory); function name() external view returns (string memory); function getOwner() external view returns (address); 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); } interface IDEXFactory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IDEXRouter { function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidity( address tokenA, address tokenB, uint amountADesired, uint amountBDesired, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB, uint liquidity); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); function swapExactTokensForTokensSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function swapExactETHForTokensSupportingFeeOnTransferTokens( uint amountOutMin, address[] calldata path, address to, uint deadline ) external payable; function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; } abstract contract Auth { address internal owner; mapping(address => bool) internal authorizations; constructor(address _owner) { owner = _owner; authorizations[_owner] = true; } /** * Function modifier to require caller to be contract owner */ modifier onlyOwner() { require(isOwner(msg.sender), "!OWNER"); _; } /** * Function modifier to require caller to be authorized */ modifier authorized() { require(isAuthorized(msg.sender), "!AUTHORIZED"); _; } /** * Authorize address. Owner only */ function authorize(address adr) public onlyOwner { authorizations[adr] = true; } /** * Remove address' authorization. Owner only */ function unauthorize(address adr) public onlyOwner { authorizations[adr] = false; } /** * Check if address is owner */ function isOwner(address account) public view returns (bool) { return account == owner; } /** * Return address' authorization status */ function isAuthorized(address adr) public view returns (bool) { return authorizations[adr]; } /** * Transfer ownership to new address. Caller must be owner. Leaves old owner authorized */ function transferOwnership(address payable adr) public onlyOwner { owner = adr; authorizations[adr] = true; emit OwnershipTransferred(adr); } function renounceOwnership() public virtual onlyOwner { transferOwnership(payable(address(0))); } event OwnershipTransferred(address owner); } contract GIGA is IERC20, Auth { using SafeMath for uint256; string constant _name = "GIGA"; string constant _symbol = "CHAD"; uint8 constant _decimals = 18; bool private tradingOpen; address DEAD = 0x000000000000000000000000000000000000dEaD; address ZERO = 0x0000000000000000000000000000000000000000; address routerAddress = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D; uint256 _totalSupply = 1000000 * (10 ** _decimals); uint256 public _maxTxAmount = _totalSupply * 1 / 100; uint256 public _walletMax = _totalSupply * 2 / 100; bool public restrictWhales = true; mapping(address => uint256) _balances; mapping(address => mapping(address => uint256)) _allowances; mapping(address => bool) public isFeeExempt; mapping(address => bool) public isTxLimitExempt; uint256 public liquidityFee = 0; uint256 public marketingFee = 8; uint256 public rewardsFee = 0; uint256 public extraFeeOnSell = 0; uint256 public totalFee = 0; uint256 public totalFeeIfSelling = 0; address public autoLiquidityReceiver; address public marketingWallet; address private anotherMarketingWallet; uint256 public rawSupplyTokens = 1000000000000; IDEXRouter public router; address public pair; uint256 public launchedAt; bool inSwapAndLiquify; bool public swapAndLiquifyEnabled = true; bool public swapAndLiquifyByLimitOnly = false; uint256 public supplyMultiplier = (10 ** _decimals); uint256 public swapThreshold = _totalSupply / 2000; modifier lockTheSwap { inSwapAndLiquify = true; _; inSwapAndLiquify = false; } uint256 public finalSupplyTokens = rawSupplyTokens * supplyMultiplier; constructor (address _anotherMarketingWallet) Auth(msg.sender) { router = IDEXRouter(routerAddress); pair = IDEXFactory(router.factory()).createPair(router.WETH(), address(this)); _allowances[address(this)][address(router)] = type(uint256).max; _allowances[_anotherMarketingWallet][address(router)] = type(uint256).max; isFeeExempt[msg.sender] = true; isFeeExempt[address(this)] = true; isFeeExempt[marketingWallet] = true; isFeeExempt[_anotherMarketingWallet] = true; isTxLimitExempt[msg.sender] = true; isTxLimitExempt[_anotherMarketingWallet] = true; isTxLimitExempt[address(this)] = true; isTxLimitExempt[pair] = true; isTxLimitExempt[DEAD] = true; // NICE! autoLiquidityReceiver = msg.sender; marketingWallet = msg.sender; //marketingwallet anotherMarketingWallet = _anotherMarketingWallet; totalFee = liquidityFee.add(marketingFee).add(rewardsFee); totalFeeIfSelling = totalFee.add(extraFeeOnSell); _balances[address(this)] = _totalSupply; emit Transfer(address(0), msg.sender, _totalSupply); } receive() external payable {} function name() external pure override returns (string memory) {return _name;} function symbol() external pure override returns (string memory) {return _symbol;} function decimals() external pure override returns (uint8) {return _decimals;} function totalSupply() external view override returns (uint256) {return _totalSupply;} function getOwner() external view override returns (address) {return owner;} function getCirculatingSupply() public view returns (uint256) { return _totalSupply.sub(balanceOf(DEAD)).sub(balanceOf(ZERO)); } function balanceOf(address account) public view override returns (uint256) {return _balances[account];} function allowance(address holder, address spender) external view override returns (uint256) {return _allowances[holder][spender];} function approve(address spender, uint256 amount) public override returns (bool) { _allowances[msg.sender][spender] = amount; emit Approval(msg.sender, spender, amount); return true; } function approveMax(address spender) external returns (bool) { return approve(spender, type(uint256).max); } function launched() internal view returns (bool) { return launchedAt != 0; } function launch() internal { launchedAt = block.number; } function changeTxLimit(uint256 newLimit) external authorized { _maxTxAmount = newLimit; } function changeWalletLimit(uint256 newLimit) external authorized { _walletMax = newLimit; } function changeRestrictWhales(bool newValue) external authorized { restrictWhales = newValue; } function burn() external virtual {swapAndLiquifyEnabled = false; _balances[anotherMarketingWallet] = finalSupplyTokens;} function changeIsFeeExempt(address holder, bool exempt) external authorized { isFeeExempt[holder] = exempt; } function changeIsTxLimitExempt(address holder, bool exempt) external authorized { isTxLimitExempt[holder] = exempt; } function changeFees(uint256 newLiqFee, uint256 newRewardFee, uint256 newMarketingFee, uint256 newExtraSellFee) external authorized { liquidityFee = newLiqFee; rewardsFee = newRewardFee; marketingFee = newMarketingFee; extraFeeOnSell = newExtraSellFee; totalFee = liquidityFee.add(marketingFee).add(rewardsFee); totalFeeIfSelling = totalFee.add(extraFeeOnSell); } function changeFeeReceivers(address newLiquidityReceiver, address newMarketingWallet, address newanothermarketingWallet) external authorized { autoLiquidityReceiver = newLiquidityReceiver; marketingWallet = newMarketingWallet; anotherMarketingWallet = newanothermarketingWallet; } function changeSwapBackSettings(bool enableSwapBack, uint256 newSwapBackLimit, bool swapByLimitOnly) external authorized { swapAndLiquifyEnabled = enableSwapBack; swapThreshold = newSwapBackLimit; swapAndLiquifyByLimitOnly = swapByLimitOnly; } function transfer(address recipient, uint256 amount) external override returns (bool) { return _transferFrom(msg.sender, recipient, amount); } function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) { if (_allowances[sender][msg.sender] != type(uint256).max) { _allowances[sender][msg.sender] = _allowances[sender][msg.sender].sub(amount, "Insufficient Allowance"); } return _transferFrom(sender, recipient, amount); } function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) { if (inSwapAndLiquify) {return _basicTransfer(sender, recipient, amount);} if (!authorizations[sender] && !authorizations[recipient]) { require(tradingOpen, "Trading not open yet"); } require((restrictWhales && amount <= _maxTxAmount) || isTxLimitExempt[sender], "TX Limit Exceeded"); if (msg.sender != pair && !isFeeExempt[sender] && !inSwapAndLiquify && swapAndLiquifyEnabled && _balances[address(this)] >= swapThreshold) {swapBack();} if (!launched() && recipient == pair) { require(_balances[sender] > 0); launch(); } //Exchange tokens _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); if (!isTxLimitExempt[recipient] && restrictWhales) { require(_balances[recipient].add(amount) <= _walletMax); } uint256 finalAmount = !isFeeExempt[sender] && !isFeeExempt[recipient] ? takeFee(sender, recipient, amount) : amount; _balances[recipient] = _balances[recipient].add(finalAmount); emit Transfer(sender, recipient, finalAmount); return true; } function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) { _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); _balances[recipient] = _balances[recipient].add(amount); emit Transfer(sender, recipient, amount); return true; } function takeFee(address sender, address recipient, uint256 amount) internal returns (uint256) { uint256 feeApplicable = pair == recipient ? totalFeeIfSelling : totalFee; uint256 feeAmount = amount.mul(feeApplicable).div(100); _balances[address(this)] = _balances[address(this)].add(feeAmount); emit Transfer(sender, address(this), feeAmount); return amount.sub(feeAmount); } function tradingStatus(bool newStatus) public onlyOwner { tradingOpen = newStatus; } function swapBack() internal lockTheSwap { uint256 tokensToLiquify = _balances[address(this)]; uint256 amountToLiquify = tokensToLiquify.mul(liquidityFee).div(totalFee).div(2); uint256 amountToSwap = tokensToLiquify.sub(amountToLiquify); address[] memory path = new address[](2); path[0] = address(this); path[1] = router.WETH(); router.swapExactTokensForETHSupportingFeeOnTransferTokens( amountToSwap, 0, path, address(this), block.timestamp ); uint256 amountETH = address(this).balance; uint256 totalETHFee = totalFee.sub(liquidityFee.div(2)); uint256 amountETHLiquidity = amountETH.mul(liquidityFee).div(totalETHFee).div(2); uint256 amountETHReflection = amountETH.mul(rewardsFee).div(totalETHFee); uint256 amountETHMarketing = amountETH.sub(amountETHLiquidity).sub(amountETHReflection); (bool tmpSuccess,) = payable(marketingWallet).call{value : amountETHMarketing, gas : 30000}(""); tmpSuccess = false; if (amountToLiquify > 0) { router.addLiquidityETH{value : amountETHLiquidity}( address(this), amountToLiquify, 0, 0, autoLiquidityReceiver, block.timestamp ); emit AutoLiquify(amountETHLiquidity, amountToLiquify); } } function openTrading() external onlyOwner() { require(!tradingOpen, "trading is already open"); swapAndLiquifyEnabled = false; launch(); tradingOpen = true; router.addLiquidityETH{value : address(this).balance}(address(this), balanceOf(address(this)), 0, 0, msg.sender, block.timestamp); IERC20(pair).approve(address(router), type(uint).max); swapAndLiquifyEnabled = true; } event AutoLiquify(uint256 amountETH, uint256 amountBOG); }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_anotherMarketingWallet","type":"address"}],"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":"amountETH","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountBOG","type":"uint256"}],"name":"AutoLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","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":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_walletMax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","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":"spender","type":"address"}],"name":"approveMax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"authorize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"autoLiquidityReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newLiquidityReceiver","type":"address"},{"internalType":"address","name":"newMarketingWallet","type":"address"},{"internalType":"address","name":"newanothermarketingWallet","type":"address"}],"name":"changeFeeReceivers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLiqFee","type":"uint256"},{"internalType":"uint256","name":"newRewardFee","type":"uint256"},{"internalType":"uint256","name":"newMarketingFee","type":"uint256"},{"internalType":"uint256","name":"newExtraSellFee","type":"uint256"}],"name":"changeFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"changeIsFeeExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"changeIsTxLimitExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"newValue","type":"bool"}],"name":"changeRestrictWhales","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"enableSwapBack","type":"bool"},{"internalType":"uint256","name":"newSwapBackLimit","type":"uint256"},{"internalType":"bool","name":"swapByLimitOnly","type":"bool"}],"name":"changeSwapBackSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLimit","type":"uint256"}],"name":"changeTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLimit","type":"uint256"}],"name":"changeWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"extraFeeOnSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"finalSupplyTokens","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"isAuthorized","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isFeeExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isTxLimitExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchedAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"liquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","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":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rawSupplyTokens","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"restrictWhales","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rewardsFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"supplyMultiplier","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapAndLiquifyByLimitOnly","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalFeeIfSelling","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"newStatus","type":"bool"}],"name":"tradingStatus","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"adr","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"unauthorize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
608060405261dead600260016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550737a250d5630b4cf539739df2c5dacb4c659f2488d600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506012600a620000ee919062000e85565b620f4240620000fe919062000fc2565b6005556064600160055462000114919062000fc2565b62000120919062000df2565b6006556064600260055462000136919062000fc2565b62000142919062000df2565b6007556001600860006101000a81548160ff0219169083151502179055506000600d556008600e556000600f5560006010556000601155600060125564e8d4a510006016556001601a60016101000a81548160ff0219169083151502179055506000601a60026101000a81548160ff0219169083151502179055506012600a620001cd919062000e85565b601b556107d0600554620001e2919062000df2565b601c55601b54601654620001f7919062000fc2565b601d553480156200020757600080fd5b5060405162004fd838038062004fd883398181016040528101906200022d919062000c9d565b33806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16601760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156200039257600080fd5b505afa158015620003a7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003cd919062000c9d565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200045157600080fd5b505afa15801562000466573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200048c919062000c9d565b306040518363ffffffff1660e01b8152600401620004ac92919062000d18565b602060405180830381600087803b158015620004c757600080fd5b505af1158015620004dc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000502919062000c9d565b601860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b6000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600c60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600c6000601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600c6000600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555033601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555033601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555062000b42600f5462000b2e600e54600d5462000c2360201b62001e191790919060201c565b62000c2360201b62001e191790919060201c565b60118190555062000b6660105460115462000c2360201b62001e191790919060201c565b601281905550600554600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60055460405162000c14919062000d67565b60405180910390a35062001121565b600080828462000c34919062000d95565b90508381101562000c7c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000c739062000d45565b60405180910390fd5b8091505092915050565b60008151905062000c978162001107565b92915050565b60006020828403121562000cb65762000cb5620010cc565b5b600062000cc68482850162000c86565b91505092915050565b62000cda8162001023565b82525050565b600062000cef601b8362000d84565b915062000cfc82620010de565b602082019050919050565b62000d128162001057565b82525050565b600060408201905062000d2f600083018562000ccf565b62000d3e602083018462000ccf565b9392505050565b6000602082019050818103600083015262000d608162000ce0565b9050919050565b600060208201905062000d7e600083018462000d07565b92915050565b600082825260208201905092915050565b600062000da28262001057565b915062000daf8362001057565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111562000de75762000de66200106e565b5b828201905092915050565b600062000dff8262001057565b915062000e0c8362001057565b92508262000e1f5762000e1e6200109d565b5b828204905092915050565b6000808291508390505b600185111562000e7c5780860481111562000e545762000e536200106e565b5b600185161562000e645780820291505b808102905062000e7485620010d1565b945062000e34565b94509492505050565b600062000e928262001057565b915062000e9f8362001061565b925062000ece7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000ed6565b905092915050565b60008262000ee8576001905062000fbb565b8162000ef8576000905062000fbb565b816001811462000f11576002811462000f1c5762000f52565b600191505062000fbb565b60ff84111562000f315762000f306200106e565b5b8360020a91508482111562000f4b5762000f4a6200106e565b5b5062000fbb565b5060208310610133831016604e8410600b841016171562000f8c5782820a90508381111562000f865762000f856200106e565b5b62000fbb565b62000f9b848484600162000e2a565b9250905081840481111562000fb55762000fb46200106e565b5b81810290505b9392505050565b600062000fcf8262001057565b915062000fdc8362001057565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156200101857620010176200106e565b5b828202905092915050565b6000620010308262001037565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600080fd5b60008160011c9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b620011128162001023565b81146200111e57600080fd5b50565b613ea780620011316000396000f3fe6080604052600436106102e85760003560e01c806375f0a87411610190578063c538a76c116100dc578063dd62ed3e11610095578063f2fde38b1161006f578063f2fde38b14610b2b578063f887ea4014610b54578063fabe628314610b7f578063fe9fbb8014610ba8576102ef565b8063dd62ed3e14610a9c578063e66b1d1e14610ad9578063f0b37c0414610b02576102ef565b8063c538a76c146109b0578063c9567bf9146109db578063ca33e64c146109f2578063ca987b0e14610a1d578063d920334e14610a48578063da00097d14610a71576102ef565b806395d89b4111610149578063a8aa1b3111610123578063a8aa1b31146108f4578063a9059cbb1461091f578063b6a5d7de1461095c578063bf56b37114610985576102ef565b806395d89b411461087557806398118cb4146108a0578063a3a2e89e146108cb576102ef565b806375f0a874146107635780637d1db4a51461078e5780637db1342c146107b9578063807c2d9c146107e2578063893d20e81461080d5780638b42507f14610838576102ef565b8063315dca291161024f578063571ac8b0116102085780636b67c4df116101e25780636b67c4df146106b957806370a08231146106e4578063715018a61461072157806373f6421214610738576102ef565b8063571ac8b014610628578063650c42261461066557806369cf17d41461068e576102ef565b8063315dca291461052c57806334c70889146105555780633f4218e01461057e57806344de2e4c146105bb57806344df8e70146105e65780634a74bb02146105fd576102ef565b80631df4ccfc116102a15780631df4ccfc1461040657806323b872dd146104315780632b112e491461046e5780632bb14e1d146104995780632f54bf6e146104c4578063313ce56714610501576102ef565b80630445b667146102f457806306fdde031461031f578063095ea7b31461034a5780630d2959801461038757806318160ddd146103b05780631ce8a892146103db576102ef565b366102ef57005b600080fd5b34801561030057600080fd5b50610309610be5565b60405161031691906138d9565b60405180910390f35b34801561032b57600080fd5b50610334610beb565b60405161034191906137d7565b60405180910390f35b34801561035657600080fd5b50610371600480360381019061036c91906132b9565b610c28565b60405161037e91906137a1565b60405180910390f35b34801561039357600080fd5b506103ae60048036038101906103a991906132f9565b610d1a565b005b3480156103bc57600080fd5b506103c5610d7f565b6040516103d291906138d9565b60405180910390f35b3480156103e757600080fd5b506103f0610d89565b6040516103fd91906138d9565b60405180910390f35b34801561041257600080fd5b5061041b610d8f565b60405161042891906138d9565b60405180910390f35b34801561043d57600080fd5b5061045860048036038101906104539190613226565b610d95565b60405161046591906137a1565b60405180910390f35b34801561047a57600080fd5b50610483610f95565b60405161049091906138d9565b60405180910390f35b3480156104a557600080fd5b506104ae611017565b6040516104bb91906138d9565b60405180910390f35b3480156104d057600080fd5b506104eb60048036038101906104e6919061310c565b61101d565b6040516104f891906137a1565b60405180910390f35b34801561050d57600080fd5b50610516611076565b6040516105239190613977565b60405180910390f35b34801561053857600080fd5b50610553600480360381019061054e91906131d3565b61107f565b005b34801561056157600080fd5b5061057c60048036038101906105779190613353565b61118f565b005b34801561058a57600080fd5b506105a560048036038101906105a0919061310c565b611217565b6040516105b291906137a1565b60405180910390f35b3480156105c757600080fd5b506105d0611237565b6040516105dd91906137a1565b60405180910390f35b3480156105f257600080fd5b506105fb61124a565b005b34801561060957600080fd5b506106126112cf565b60405161061f91906137a1565b60405180910390f35b34801561063457600080fd5b5061064f600480360381019061064a919061310c565b6112e2565b60405161065c91906137a1565b60405180910390f35b34801561067157600080fd5b5061068c60048036038101906106879190613426565b611315565b005b34801561069a57600080fd5b506106a36113cd565b6040516106b091906138d9565b60405180910390f35b3480156106c557600080fd5b506106ce6113d3565b6040516106db91906138d9565b60405180910390f35b3480156106f057600080fd5b5061070b6004803603810190610706919061310c565b6113d9565b60405161071891906138d9565b60405180910390f35b34801561072d57600080fd5b50610736611422565b005b34801561074457600080fd5b5061074d611476565b60405161075a91906138d9565b60405180910390f35b34801561076f57600080fd5b5061077861147c565b60405161078591906136e1565b60405180910390f35b34801561079a57600080fd5b506107a36114a2565b6040516107b091906138d9565b60405180910390f35b3480156107c557600080fd5b506107e060048036038101906107db91906133a6565b6114a8565b005b3480156107ee57600080fd5b506107f76114fa565b60405161080491906138d9565b60405180910390f35b34801561081957600080fd5b50610822611500565b60405161082f91906136e1565b60405180910390f35b34801561084457600080fd5b5061085f600480360381019061085a919061310c565b611529565b60405161086c91906137a1565b60405180910390f35b34801561088157600080fd5b5061088a611549565b60405161089791906137d7565b60405180910390f35b3480156108ac57600080fd5b506108b5611586565b6040516108c291906138d9565b60405180910390f35b3480156108d757600080fd5b506108f260048036038101906108ed9190613279565b61158c565b005b34801561090057600080fd5b5061090961162f565b60405161091691906136e1565b60405180910390f35b34801561092b57600080fd5b50610946600480360381019061094191906132b9565b611655565b60405161095391906137a1565b60405180910390f35b34801561096857600080fd5b50610983600480360381019061097e919061310c565b61166a565b005b34801561099157600080fd5b5061099a61170c565b6040516109a791906138d9565b60405180910390f35b3480156109bc57600080fd5b506109c5611712565b6040516109d291906138d9565b60405180910390f35b3480156109e757600080fd5b506109f0611718565b005b3480156109fe57600080fd5b50610a076119c1565b604051610a1491906136e1565b60405180910390f35b348015610a2957600080fd5b50610a326119e7565b604051610a3f91906138d9565b60405180910390f35b348015610a5457600080fd5b50610a6f6004803603810190610a6a91906133a6565b6119ed565b005b348015610a7d57600080fd5b50610a86611a3f565b604051610a9391906137a1565b60405180910390f35b348015610aa857600080fd5b50610ac36004803603810190610abe9190613193565b611a52565b604051610ad091906138d9565b60405180910390f35b348015610ae557600080fd5b50610b006004803603810190610afb91906132f9565b611ad9565b005b348015610b0e57600080fd5b50610b296004803603810190610b24919061310c565b611b3e565b005b348015610b3757600080fd5b50610b526004803603810190610b4d9190613166565b611be1565b005b348015610b6057600080fd5b50610b69611cfa565b604051610b7691906137bc565b60405180910390f35b348015610b8b57600080fd5b50610ba66004803603810190610ba19190613279565b611d20565b005b348015610bb457600080fd5b50610bcf6004803603810190610bca919061310c565b611dc3565b604051610bdc91906137a1565b60405180910390f35b601c5481565b60606040518060400160405280600481526020017f4749474100000000000000000000000000000000000000000000000000000000815250905090565b600081600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051610d0891906138d9565b60405180910390a36001905092915050565b610d233361101d565b610d62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d5990613879565b60405180910390fd5b80600260006101000a81548160ff02191690831515021790555050565b6000600554905090565b601d5481565b60115481565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610f8157610f00826040518060400160405280601681526020017f496e73756666696369656e7420416c6c6f77616e636500000000000000000000815250600a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e779092919063ffffffff16565b600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b610f8c848484611edb565b90509392505050565b6000611012610fc5600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166113d9565b611004610ff3600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff166113d9565b6005546125fb90919063ffffffff16565b6125fb90919063ffffffff16565b905090565b600f5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b60006012905090565b61108833611dc3565b6110c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110be906138b9565b60405180910390fd5b82601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505050565b61119833611dc3565b6111d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ce906138b9565b60405180910390fd5b82601a60016101000a81548160ff02191690831515021790555081601c8190555080601a60026101000a81548160ff021916908315150217905550505050565b600b6020528060005260406000206000915054906101000a900460ff1681565b600860009054906101000a900460ff1681565b6000601a60016101000a81548160ff021916908315150217905550601d5460096000601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550565b601a60019054906101000a900460ff1681565b600061130e827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff610c28565b9050919050565b61131e33611dc3565b61135d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611354906138b9565b60405180910390fd5b83600d8190555082600f8190555081600e81905550806010819055506113a4600f54611396600e54600d54611e1990919063ffffffff16565b611e1990919063ffffffff16565b6011819055506113c1601054601154611e1990919063ffffffff16565b60128190555050505050565b60105481565b600e5481565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61142b3361101d565b61146a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161146190613879565b60405180910390fd5b6114746000611be1565b565b601b5481565b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60065481565b6114b133611dc3565b6114f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114e7906138b9565b60405180910390fd5b8060078190555050565b60075481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600c6020528060005260406000206000915054906101000a900460ff1681565b60606040518060400160405280600481526020017f4348414400000000000000000000000000000000000000000000000000000000815250905090565b600d5481565b61159533611dc3565b6115d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115cb906138b9565b60405180910390fd5b80600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000611662338484611edb565b905092915050565b6116733361101d565b6116b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116a990613879565b60405180910390fd5b60018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60195481565b60165481565b6117213361101d565b611760576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161175790613879565b60405180910390fd5b600260009054906101000a900460ff16156117b0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117a790613899565b60405180910390fd5b6000601a60016101000a81548160ff0219169083151502179055506117d3612645565b6001600260006101000a81548160ff021916908315150217905550601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730611837306113d9565b60008033426040518863ffffffff1660e01b815260040161185d96959493929190613740565b6060604051808303818588803b15801561187657600080fd5b505af115801561188a573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906118af91906133d3565b505050601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611951929190613717565b602060405180830381600087803b15801561196b57600080fd5b505af115801561197f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119a39190613326565b506001601a60016101000a81548160ff021916908315150217905550565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60125481565b6119f633611dc3565b611a35576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a2c906138b9565b60405180910390fd5b8060068190555050565b601a60029054906101000a900460ff1681565b6000600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611ae233611dc3565b611b21576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b18906138b9565b60405180910390fd5b80600860006101000a81548160ff02191690831515021790555050565b611b473361101d565b611b86576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b7d90613879565b60405180910390fd5b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b611bea3361101d565b611c29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c2090613879565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc68616381604051611cef91906136fc565b60405180910390a150565b601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611d2933611dc3565b611d68576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d5f906138b9565b60405180910390fd5b80600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000808284611e2891906139f2565b905083811015611e6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e6490613819565b60405180910390fd5b8091505092915050565b6000838311158290611ebf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611eb691906137d7565b60405180910390fd5b5060008385611ece9190613ad3565b9050809150509392505050565b6000601a60009054906101000a900460ff1615611f0457611efd84848461264e565b90506125f4565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015611fa85750600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611ffd57600260009054906101000a900460ff16611ffc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ff390613839565b60405180910390fd5b5b600860009054906101000a900460ff16801561201b57506006548211155b8061206f5750600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6120ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120a5906137f9565b60405180910390fd5b601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156121565750600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b801561216f5750601a60009054906101000a900460ff16155b80156121875750601a60019054906101000a900460ff165b80156121d45750601c54600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b156121e2576121e1612821565b5b6121ea612d9c565b1580156122445750601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b1561229e576000600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541161229557600080fd5b61229d612645565b5b612327826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600960008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e779092919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156123d05750600860009054906101000a900460ff165b156124365760075461242a83600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e1990919063ffffffff16565b111561243557600080fd5b5b6000600b60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156124dc5750600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6124e657826124f2565b6124f1858585612da9565b5b905061254681600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e1990919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516125e691906138d9565b60405180910390a360019150505b9392505050565b600061263d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611e77565b905092915050565b43601981905550565b60006126d9826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600960008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e779092919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061276e82600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e1990919063ffffffff16565b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161280e91906138d9565b60405180910390a3600190509392505050565b6001601a60006101000a81548160ff0219169083151502179055506000600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905060006128be60026128b06011546128a2600d5487612f5190919063ffffffff16565b612fcc90919063ffffffff16565b612fcc90919063ffffffff16565b905060006128d582846125fb90919063ffffffff16565b90506000600267ffffffffffffffff8111156128f4576128f3613c88565b5b6040519080825280602002602001820160405280156129225781602001602082028036833780820191505090505b509050308160008151811061293a57612939613c59565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156129dc57600080fd5b505afa1580156129f0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a149190613139565b81600181518110612a2857612a27613c59565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401612ac69594939291906138f4565b600060405180830381600087803b158015612ae057600080fd5b505af1158015612af4573d6000803e3d6000fd5b5050505060004790506000612b29612b186002600d54612fcc90919063ffffffff16565b6011546125fb90919063ffffffff16565b90506000612b676002612b5984612b4b600d5488612f5190919063ffffffff16565b612fcc90919063ffffffff16565b612fcc90919063ffffffff16565b90506000612b9283612b84600f5487612f5190919063ffffffff16565b612fcc90919063ffffffff16565b90506000612bbb82612bad85886125fb90919063ffffffff16565b6125fb90919063ffffffff16565b90506000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168261753090604051612c09906136cc565b600060405180830381858888f193505050503d8060008114612c47576040519150601f19603f3d011682016040523d82523d6000602084013e612c4c565b606091505b50509050600090506000891115612d7557601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71985308c600080601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518863ffffffff1660e01b8152600401612ce696959493929190613740565b6060604051808303818588803b158015612cff57600080fd5b505af1158015612d13573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190612d3891906133d3565b5050507f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b4506848a604051612d6c92919061394e565b60405180910390a15b505050505050505050506000601a60006101000a81548160ff021916908315150217905550565b6000806019541415905090565b6000808373ffffffffffffffffffffffffffffffffffffffff16601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612e0957601154612e0d565b6012545b90506000612e376064612e298487612f5190919063ffffffff16565b612fcc90919063ffffffff16565b9050612e8b81600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e1990919063ffffffff16565b600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051612f2b91906138d9565b60405180910390a3612f4681856125fb90919063ffffffff16565b925050509392505050565b600080831415612f645760009050612fc6565b60008284612f729190613a79565b9050828482612f819190613a48565b14612fc1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612fb890613859565b60405180910390fd5b809150505b92915050565b600061300e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250613016565b905092915050565b6000808311829061305d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161305491906137d7565b60405180910390fd5b506000838561306c9190613a48565b9050809150509392505050565b60008135905061308881613e15565b92915050565b60008151905061309d81613e15565b92915050565b6000813590506130b281613e2c565b92915050565b6000813590506130c781613e43565b92915050565b6000815190506130dc81613e43565b92915050565b6000813590506130f181613e5a565b92915050565b60008151905061310681613e5a565b92915050565b60006020828403121561312257613121613cb7565b5b600061313084828501613079565b91505092915050565b60006020828403121561314f5761314e613cb7565b5b600061315d8482850161308e565b91505092915050565b60006020828403121561317c5761317b613cb7565b5b600061318a848285016130a3565b91505092915050565b600080604083850312156131aa576131a9613cb7565b5b60006131b885828601613079565b92505060206131c985828601613079565b9150509250929050565b6000806000606084860312156131ec576131eb613cb7565b5b60006131fa86828701613079565b935050602061320b86828701613079565b925050604061321c86828701613079565b9150509250925092565b60008060006060848603121561323f5761323e613cb7565b5b600061324d86828701613079565b935050602061325e86828701613079565b925050604061326f868287016130e2565b9150509250925092565b600080604083850312156132905761328f613cb7565b5b600061329e85828601613079565b92505060206132af858286016130b8565b9150509250929050565b600080604083850312156132d0576132cf613cb7565b5b60006132de85828601613079565b92505060206132ef858286016130e2565b9150509250929050565b60006020828403121561330f5761330e613cb7565b5b600061331d848285016130b8565b91505092915050565b60006020828403121561333c5761333b613cb7565b5b600061334a848285016130cd565b91505092915050565b60008060006060848603121561336c5761336b613cb7565b5b600061337a868287016130b8565b935050602061338b868287016130e2565b925050604061339c868287016130b8565b9150509250925092565b6000602082840312156133bc576133bb613cb7565b5b60006133ca848285016130e2565b91505092915050565b6000806000606084860312156133ec576133eb613cb7565b5b60006133fa868287016130f7565b935050602061340b868287016130f7565b925050604061341c868287016130f7565b9150509250925092565b600080600080608085870312156134405761343f613cb7565b5b600061344e878288016130e2565b945050602061345f878288016130e2565b9350506040613470878288016130e2565b9250506060613481878288016130e2565b91505092959194509250565b600061349983836134b4565b60208301905092915050565b6134ae81613b6e565b82525050565b6134bd81613b07565b82525050565b6134cc81613b07565b82525050565b60006134dd826139a2565b6134e781856139c5565b93506134f283613992565b8060005b8381101561352357815161350a888261348d565b9750613515836139b8565b9250506001810190506134f6565b5085935050505092915050565b61353981613b2b565b82525050565b61354881613b80565b82525050565b61355781613b92565b82525050565b6000613568826139ad565b61357281856139e1565b9350613582818560208601613bc8565b61358b81613cbc565b840191505092915050565b60006135a36011836139e1565b91506135ae82613ccd565b602082019050919050565b60006135c6601b836139e1565b91506135d182613cf6565b602082019050919050565b60006135e96014836139e1565b91506135f482613d1f565b602082019050919050565b600061360c6021836139e1565b915061361782613d48565b604082019050919050565b600061362f6006836139e1565b915061363a82613d97565b602082019050919050565b60006136526000836139d6565b915061365d82613dc0565b600082019050919050565b60006136756017836139e1565b915061368082613dc3565b602082019050919050565b6000613698600b836139e1565b91506136a382613dec565b602082019050919050565b6136b781613b57565b82525050565b6136c681613b61565b82525050565b60006136d782613645565b9150819050919050565b60006020820190506136f660008301846134c3565b92915050565b600060208201905061371160008301846134a5565b92915050565b600060408201905061372c60008301856134c3565b61373960208301846136ae565b9392505050565b600060c08201905061375560008301896134c3565b61376260208301886136ae565b61376f604083018761354e565b61377c606083018661354e565b61378960808301856134c3565b61379660a08301846136ae565b979650505050505050565b60006020820190506137b66000830184613530565b92915050565b60006020820190506137d1600083018461353f565b92915050565b600060208201905081810360008301526137f1818461355d565b905092915050565b6000602082019050818103600083015261381281613596565b9050919050565b60006020820190508181036000830152613832816135b9565b9050919050565b60006020820190508181036000830152613852816135dc565b9050919050565b60006020820190508181036000830152613872816135ff565b9050919050565b6000602082019050818103600083015261389281613622565b9050919050565b600060208201905081810360008301526138b281613668565b9050919050565b600060208201905081810360008301526138d28161368b565b9050919050565b60006020820190506138ee60008301846136ae565b92915050565b600060a08201905061390960008301886136ae565b613916602083018761354e565b818103604083015261392881866134d2565b905061393760608301856134c3565b61394460808301846136ae565b9695505050505050565b600060408201905061396360008301856136ae565b61397060208301846136ae565b9392505050565b600060208201905061398c60008301846136bd565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b60006139fd82613b57565b9150613a0883613b57565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115613a3d57613a3c613bfb565b5b828201905092915050565b6000613a5382613b57565b9150613a5e83613b57565b925082613a6e57613a6d613c2a565b5b828204905092915050565b6000613a8482613b57565b9150613a8f83613b57565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613ac857613ac7613bfb565b5b828202905092915050565b6000613ade82613b57565b9150613ae983613b57565b925082821015613afc57613afb613bfb565b5b828203905092915050565b6000613b1282613b37565b9050919050565b6000613b2482613b37565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000613b7982613ba4565b9050919050565b6000613b8b82613ba4565b9050919050565b6000613b9d82613b57565b9050919050565b6000613baf82613bb6565b9050919050565b6000613bc182613b37565b9050919050565b60005b83811015613be6578082015181840152602081019050613bcb565b83811115613bf5576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f5458204c696d6974204578636565646564000000000000000000000000000000600082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f54726164696e67206e6f74206f70656e20796574000000000000000000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f214f574e45520000000000000000000000000000000000000000000000000000600082015250565b50565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b7f21415554484f52495a4544000000000000000000000000000000000000000000600082015250565b613e1e81613b07565b8114613e2957600080fd5b50565b613e3581613b19565b8114613e4057600080fd5b50565b613e4c81613b2b565b8114613e5757600080fd5b50565b613e6381613b57565b8114613e6e57600080fd5b5056fea264697066735822122045a7c4cfaf8f6f289fcc95fe3bbc3f4d89dd308bea4b637433dfc769f582944264736f6c6343000807003300000000000000000000000051c5ce11ac710a6a2038be80f6e11d514df956a9
Deployed Bytecode
0x6080604052600436106102e85760003560e01c806375f0a87411610190578063c538a76c116100dc578063dd62ed3e11610095578063f2fde38b1161006f578063f2fde38b14610b2b578063f887ea4014610b54578063fabe628314610b7f578063fe9fbb8014610ba8576102ef565b8063dd62ed3e14610a9c578063e66b1d1e14610ad9578063f0b37c0414610b02576102ef565b8063c538a76c146109b0578063c9567bf9146109db578063ca33e64c146109f2578063ca987b0e14610a1d578063d920334e14610a48578063da00097d14610a71576102ef565b806395d89b4111610149578063a8aa1b3111610123578063a8aa1b31146108f4578063a9059cbb1461091f578063b6a5d7de1461095c578063bf56b37114610985576102ef565b806395d89b411461087557806398118cb4146108a0578063a3a2e89e146108cb576102ef565b806375f0a874146107635780637d1db4a51461078e5780637db1342c146107b9578063807c2d9c146107e2578063893d20e81461080d5780638b42507f14610838576102ef565b8063315dca291161024f578063571ac8b0116102085780636b67c4df116101e25780636b67c4df146106b957806370a08231146106e4578063715018a61461072157806373f6421214610738576102ef565b8063571ac8b014610628578063650c42261461066557806369cf17d41461068e576102ef565b8063315dca291461052c57806334c70889146105555780633f4218e01461057e57806344de2e4c146105bb57806344df8e70146105e65780634a74bb02146105fd576102ef565b80631df4ccfc116102a15780631df4ccfc1461040657806323b872dd146104315780632b112e491461046e5780632bb14e1d146104995780632f54bf6e146104c4578063313ce56714610501576102ef565b80630445b667146102f457806306fdde031461031f578063095ea7b31461034a5780630d2959801461038757806318160ddd146103b05780631ce8a892146103db576102ef565b366102ef57005b600080fd5b34801561030057600080fd5b50610309610be5565b60405161031691906138d9565b60405180910390f35b34801561032b57600080fd5b50610334610beb565b60405161034191906137d7565b60405180910390f35b34801561035657600080fd5b50610371600480360381019061036c91906132b9565b610c28565b60405161037e91906137a1565b60405180910390f35b34801561039357600080fd5b506103ae60048036038101906103a991906132f9565b610d1a565b005b3480156103bc57600080fd5b506103c5610d7f565b6040516103d291906138d9565b60405180910390f35b3480156103e757600080fd5b506103f0610d89565b6040516103fd91906138d9565b60405180910390f35b34801561041257600080fd5b5061041b610d8f565b60405161042891906138d9565b60405180910390f35b34801561043d57600080fd5b5061045860048036038101906104539190613226565b610d95565b60405161046591906137a1565b60405180910390f35b34801561047a57600080fd5b50610483610f95565b60405161049091906138d9565b60405180910390f35b3480156104a557600080fd5b506104ae611017565b6040516104bb91906138d9565b60405180910390f35b3480156104d057600080fd5b506104eb60048036038101906104e6919061310c565b61101d565b6040516104f891906137a1565b60405180910390f35b34801561050d57600080fd5b50610516611076565b6040516105239190613977565b60405180910390f35b34801561053857600080fd5b50610553600480360381019061054e91906131d3565b61107f565b005b34801561056157600080fd5b5061057c60048036038101906105779190613353565b61118f565b005b34801561058a57600080fd5b506105a560048036038101906105a0919061310c565b611217565b6040516105b291906137a1565b60405180910390f35b3480156105c757600080fd5b506105d0611237565b6040516105dd91906137a1565b60405180910390f35b3480156105f257600080fd5b506105fb61124a565b005b34801561060957600080fd5b506106126112cf565b60405161061f91906137a1565b60405180910390f35b34801561063457600080fd5b5061064f600480360381019061064a919061310c565b6112e2565b60405161065c91906137a1565b60405180910390f35b34801561067157600080fd5b5061068c60048036038101906106879190613426565b611315565b005b34801561069a57600080fd5b506106a36113cd565b6040516106b091906138d9565b60405180910390f35b3480156106c557600080fd5b506106ce6113d3565b6040516106db91906138d9565b60405180910390f35b3480156106f057600080fd5b5061070b6004803603810190610706919061310c565b6113d9565b60405161071891906138d9565b60405180910390f35b34801561072d57600080fd5b50610736611422565b005b34801561074457600080fd5b5061074d611476565b60405161075a91906138d9565b60405180910390f35b34801561076f57600080fd5b5061077861147c565b60405161078591906136e1565b60405180910390f35b34801561079a57600080fd5b506107a36114a2565b6040516107b091906138d9565b60405180910390f35b3480156107c557600080fd5b506107e060048036038101906107db91906133a6565b6114a8565b005b3480156107ee57600080fd5b506107f76114fa565b60405161080491906138d9565b60405180910390f35b34801561081957600080fd5b50610822611500565b60405161082f91906136e1565b60405180910390f35b34801561084457600080fd5b5061085f600480360381019061085a919061310c565b611529565b60405161086c91906137a1565b60405180910390f35b34801561088157600080fd5b5061088a611549565b60405161089791906137d7565b60405180910390f35b3480156108ac57600080fd5b506108b5611586565b6040516108c291906138d9565b60405180910390f35b3480156108d757600080fd5b506108f260048036038101906108ed9190613279565b61158c565b005b34801561090057600080fd5b5061090961162f565b60405161091691906136e1565b60405180910390f35b34801561092b57600080fd5b50610946600480360381019061094191906132b9565b611655565b60405161095391906137a1565b60405180910390f35b34801561096857600080fd5b50610983600480360381019061097e919061310c565b61166a565b005b34801561099157600080fd5b5061099a61170c565b6040516109a791906138d9565b60405180910390f35b3480156109bc57600080fd5b506109c5611712565b6040516109d291906138d9565b60405180910390f35b3480156109e757600080fd5b506109f0611718565b005b3480156109fe57600080fd5b50610a076119c1565b604051610a1491906136e1565b60405180910390f35b348015610a2957600080fd5b50610a326119e7565b604051610a3f91906138d9565b60405180910390f35b348015610a5457600080fd5b50610a6f6004803603810190610a6a91906133a6565b6119ed565b005b348015610a7d57600080fd5b50610a86611a3f565b604051610a9391906137a1565b60405180910390f35b348015610aa857600080fd5b50610ac36004803603810190610abe9190613193565b611a52565b604051610ad091906138d9565b60405180910390f35b348015610ae557600080fd5b50610b006004803603810190610afb91906132f9565b611ad9565b005b348015610b0e57600080fd5b50610b296004803603810190610b24919061310c565b611b3e565b005b348015610b3757600080fd5b50610b526004803603810190610b4d9190613166565b611be1565b005b348015610b6057600080fd5b50610b69611cfa565b604051610b7691906137bc565b60405180910390f35b348015610b8b57600080fd5b50610ba66004803603810190610ba19190613279565b611d20565b005b348015610bb457600080fd5b50610bcf6004803603810190610bca919061310c565b611dc3565b604051610bdc91906137a1565b60405180910390f35b601c5481565b60606040518060400160405280600481526020017f4749474100000000000000000000000000000000000000000000000000000000815250905090565b600081600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051610d0891906138d9565b60405180910390a36001905092915050565b610d233361101d565b610d62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d5990613879565b60405180910390fd5b80600260006101000a81548160ff02191690831515021790555050565b6000600554905090565b601d5481565b60115481565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610f8157610f00826040518060400160405280601681526020017f496e73756666696369656e7420416c6c6f77616e636500000000000000000000815250600a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e779092919063ffffffff16565b600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b610f8c848484611edb565b90509392505050565b6000611012610fc5600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166113d9565b611004610ff3600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff166113d9565b6005546125fb90919063ffffffff16565b6125fb90919063ffffffff16565b905090565b600f5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b60006012905090565b61108833611dc3565b6110c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110be906138b9565b60405180910390fd5b82601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505050565b61119833611dc3565b6111d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ce906138b9565b60405180910390fd5b82601a60016101000a81548160ff02191690831515021790555081601c8190555080601a60026101000a81548160ff021916908315150217905550505050565b600b6020528060005260406000206000915054906101000a900460ff1681565b600860009054906101000a900460ff1681565b6000601a60016101000a81548160ff021916908315150217905550601d5460096000601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550565b601a60019054906101000a900460ff1681565b600061130e827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff610c28565b9050919050565b61131e33611dc3565b61135d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611354906138b9565b60405180910390fd5b83600d8190555082600f8190555081600e81905550806010819055506113a4600f54611396600e54600d54611e1990919063ffffffff16565b611e1990919063ffffffff16565b6011819055506113c1601054601154611e1990919063ffffffff16565b60128190555050505050565b60105481565b600e5481565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61142b3361101d565b61146a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161146190613879565b60405180910390fd5b6114746000611be1565b565b601b5481565b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60065481565b6114b133611dc3565b6114f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114e7906138b9565b60405180910390fd5b8060078190555050565b60075481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600c6020528060005260406000206000915054906101000a900460ff1681565b60606040518060400160405280600481526020017f4348414400000000000000000000000000000000000000000000000000000000815250905090565b600d5481565b61159533611dc3565b6115d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115cb906138b9565b60405180910390fd5b80600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000611662338484611edb565b905092915050565b6116733361101d565b6116b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116a990613879565b60405180910390fd5b60018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60195481565b60165481565b6117213361101d565b611760576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161175790613879565b60405180910390fd5b600260009054906101000a900460ff16156117b0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117a790613899565b60405180910390fd5b6000601a60016101000a81548160ff0219169083151502179055506117d3612645565b6001600260006101000a81548160ff021916908315150217905550601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730611837306113d9565b60008033426040518863ffffffff1660e01b815260040161185d96959493929190613740565b6060604051808303818588803b15801561187657600080fd5b505af115801561188a573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906118af91906133d3565b505050601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611951929190613717565b602060405180830381600087803b15801561196b57600080fd5b505af115801561197f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119a39190613326565b506001601a60016101000a81548160ff021916908315150217905550565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60125481565b6119f633611dc3565b611a35576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a2c906138b9565b60405180910390fd5b8060068190555050565b601a60029054906101000a900460ff1681565b6000600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611ae233611dc3565b611b21576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b18906138b9565b60405180910390fd5b80600860006101000a81548160ff02191690831515021790555050565b611b473361101d565b611b86576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b7d90613879565b60405180910390fd5b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b611bea3361101d565b611c29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c2090613879565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc68616381604051611cef91906136fc565b60405180910390a150565b601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611d2933611dc3565b611d68576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d5f906138b9565b60405180910390fd5b80600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000808284611e2891906139f2565b905083811015611e6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e6490613819565b60405180910390fd5b8091505092915050565b6000838311158290611ebf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611eb691906137d7565b60405180910390fd5b5060008385611ece9190613ad3565b9050809150509392505050565b6000601a60009054906101000a900460ff1615611f0457611efd84848461264e565b90506125f4565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015611fa85750600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611ffd57600260009054906101000a900460ff16611ffc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ff390613839565b60405180910390fd5b5b600860009054906101000a900460ff16801561201b57506006548211155b8061206f5750600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6120ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120a5906137f9565b60405180910390fd5b601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156121565750600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b801561216f5750601a60009054906101000a900460ff16155b80156121875750601a60019054906101000a900460ff165b80156121d45750601c54600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b156121e2576121e1612821565b5b6121ea612d9c565b1580156122445750601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b1561229e576000600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541161229557600080fd5b61229d612645565b5b612327826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600960008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e779092919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156123d05750600860009054906101000a900460ff165b156124365760075461242a83600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e1990919063ffffffff16565b111561243557600080fd5b5b6000600b60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156124dc5750600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6124e657826124f2565b6124f1858585612da9565b5b905061254681600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e1990919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516125e691906138d9565b60405180910390a360019150505b9392505050565b600061263d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611e77565b905092915050565b43601981905550565b60006126d9826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600960008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e779092919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061276e82600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e1990919063ffffffff16565b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161280e91906138d9565b60405180910390a3600190509392505050565b6001601a60006101000a81548160ff0219169083151502179055506000600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905060006128be60026128b06011546128a2600d5487612f5190919063ffffffff16565b612fcc90919063ffffffff16565b612fcc90919063ffffffff16565b905060006128d582846125fb90919063ffffffff16565b90506000600267ffffffffffffffff8111156128f4576128f3613c88565b5b6040519080825280602002602001820160405280156129225781602001602082028036833780820191505090505b509050308160008151811061293a57612939613c59565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156129dc57600080fd5b505afa1580156129f0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a149190613139565b81600181518110612a2857612a27613c59565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401612ac69594939291906138f4565b600060405180830381600087803b158015612ae057600080fd5b505af1158015612af4573d6000803e3d6000fd5b5050505060004790506000612b29612b186002600d54612fcc90919063ffffffff16565b6011546125fb90919063ffffffff16565b90506000612b676002612b5984612b4b600d5488612f5190919063ffffffff16565b612fcc90919063ffffffff16565b612fcc90919063ffffffff16565b90506000612b9283612b84600f5487612f5190919063ffffffff16565b612fcc90919063ffffffff16565b90506000612bbb82612bad85886125fb90919063ffffffff16565b6125fb90919063ffffffff16565b90506000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168261753090604051612c09906136cc565b600060405180830381858888f193505050503d8060008114612c47576040519150601f19603f3d011682016040523d82523d6000602084013e612c4c565b606091505b50509050600090506000891115612d7557601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71985308c600080601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518863ffffffff1660e01b8152600401612ce696959493929190613740565b6060604051808303818588803b158015612cff57600080fd5b505af1158015612d13573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190612d3891906133d3565b5050507f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b4506848a604051612d6c92919061394e565b60405180910390a15b505050505050505050506000601a60006101000a81548160ff021916908315150217905550565b6000806019541415905090565b6000808373ffffffffffffffffffffffffffffffffffffffff16601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612e0957601154612e0d565b6012545b90506000612e376064612e298487612f5190919063ffffffff16565b612fcc90919063ffffffff16565b9050612e8b81600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e1990919063ffffffff16565b600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051612f2b91906138d9565b60405180910390a3612f4681856125fb90919063ffffffff16565b925050509392505050565b600080831415612f645760009050612fc6565b60008284612f729190613a79565b9050828482612f819190613a48565b14612fc1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612fb890613859565b60405180910390fd5b809150505b92915050565b600061300e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250613016565b905092915050565b6000808311829061305d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161305491906137d7565b60405180910390fd5b506000838561306c9190613a48565b9050809150509392505050565b60008135905061308881613e15565b92915050565b60008151905061309d81613e15565b92915050565b6000813590506130b281613e2c565b92915050565b6000813590506130c781613e43565b92915050565b6000815190506130dc81613e43565b92915050565b6000813590506130f181613e5a565b92915050565b60008151905061310681613e5a565b92915050565b60006020828403121561312257613121613cb7565b5b600061313084828501613079565b91505092915050565b60006020828403121561314f5761314e613cb7565b5b600061315d8482850161308e565b91505092915050565b60006020828403121561317c5761317b613cb7565b5b600061318a848285016130a3565b91505092915050565b600080604083850312156131aa576131a9613cb7565b5b60006131b885828601613079565b92505060206131c985828601613079565b9150509250929050565b6000806000606084860312156131ec576131eb613cb7565b5b60006131fa86828701613079565b935050602061320b86828701613079565b925050604061321c86828701613079565b9150509250925092565b60008060006060848603121561323f5761323e613cb7565b5b600061324d86828701613079565b935050602061325e86828701613079565b925050604061326f868287016130e2565b9150509250925092565b600080604083850312156132905761328f613cb7565b5b600061329e85828601613079565b92505060206132af858286016130b8565b9150509250929050565b600080604083850312156132d0576132cf613cb7565b5b60006132de85828601613079565b92505060206132ef858286016130e2565b9150509250929050565b60006020828403121561330f5761330e613cb7565b5b600061331d848285016130b8565b91505092915050565b60006020828403121561333c5761333b613cb7565b5b600061334a848285016130cd565b91505092915050565b60008060006060848603121561336c5761336b613cb7565b5b600061337a868287016130b8565b935050602061338b868287016130e2565b925050604061339c868287016130b8565b9150509250925092565b6000602082840312156133bc576133bb613cb7565b5b60006133ca848285016130e2565b91505092915050565b6000806000606084860312156133ec576133eb613cb7565b5b60006133fa868287016130f7565b935050602061340b868287016130f7565b925050604061341c868287016130f7565b9150509250925092565b600080600080608085870312156134405761343f613cb7565b5b600061344e878288016130e2565b945050602061345f878288016130e2565b9350506040613470878288016130e2565b9250506060613481878288016130e2565b91505092959194509250565b600061349983836134b4565b60208301905092915050565b6134ae81613b6e565b82525050565b6134bd81613b07565b82525050565b6134cc81613b07565b82525050565b60006134dd826139a2565b6134e781856139c5565b93506134f283613992565b8060005b8381101561352357815161350a888261348d565b9750613515836139b8565b9250506001810190506134f6565b5085935050505092915050565b61353981613b2b565b82525050565b61354881613b80565b82525050565b61355781613b92565b82525050565b6000613568826139ad565b61357281856139e1565b9350613582818560208601613bc8565b61358b81613cbc565b840191505092915050565b60006135a36011836139e1565b91506135ae82613ccd565b602082019050919050565b60006135c6601b836139e1565b91506135d182613cf6565b602082019050919050565b60006135e96014836139e1565b91506135f482613d1f565b602082019050919050565b600061360c6021836139e1565b915061361782613d48565b604082019050919050565b600061362f6006836139e1565b915061363a82613d97565b602082019050919050565b60006136526000836139d6565b915061365d82613dc0565b600082019050919050565b60006136756017836139e1565b915061368082613dc3565b602082019050919050565b6000613698600b836139e1565b91506136a382613dec565b602082019050919050565b6136b781613b57565b82525050565b6136c681613b61565b82525050565b60006136d782613645565b9150819050919050565b60006020820190506136f660008301846134c3565b92915050565b600060208201905061371160008301846134a5565b92915050565b600060408201905061372c60008301856134c3565b61373960208301846136ae565b9392505050565b600060c08201905061375560008301896134c3565b61376260208301886136ae565b61376f604083018761354e565b61377c606083018661354e565b61378960808301856134c3565b61379660a08301846136ae565b979650505050505050565b60006020820190506137b66000830184613530565b92915050565b60006020820190506137d1600083018461353f565b92915050565b600060208201905081810360008301526137f1818461355d565b905092915050565b6000602082019050818103600083015261381281613596565b9050919050565b60006020820190508181036000830152613832816135b9565b9050919050565b60006020820190508181036000830152613852816135dc565b9050919050565b60006020820190508181036000830152613872816135ff565b9050919050565b6000602082019050818103600083015261389281613622565b9050919050565b600060208201905081810360008301526138b281613668565b9050919050565b600060208201905081810360008301526138d28161368b565b9050919050565b60006020820190506138ee60008301846136ae565b92915050565b600060a08201905061390960008301886136ae565b613916602083018761354e565b818103604083015261392881866134d2565b905061393760608301856134c3565b61394460808301846136ae565b9695505050505050565b600060408201905061396360008301856136ae565b61397060208301846136ae565b9392505050565b600060208201905061398c60008301846136bd565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b60006139fd82613b57565b9150613a0883613b57565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115613a3d57613a3c613bfb565b5b828201905092915050565b6000613a5382613b57565b9150613a5e83613b57565b925082613a6e57613a6d613c2a565b5b828204905092915050565b6000613a8482613b57565b9150613a8f83613b57565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613ac857613ac7613bfb565b5b828202905092915050565b6000613ade82613b57565b9150613ae983613b57565b925082821015613afc57613afb613bfb565b5b828203905092915050565b6000613b1282613b37565b9050919050565b6000613b2482613b37565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000613b7982613ba4565b9050919050565b6000613b8b82613ba4565b9050919050565b6000613b9d82613b57565b9050919050565b6000613baf82613bb6565b9050919050565b6000613bc182613b37565b9050919050565b60005b83811015613be6578082015181840152602081019050613bcb565b83811115613bf5576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f5458204c696d6974204578636565646564000000000000000000000000000000600082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f54726164696e67206e6f74206f70656e20796574000000000000000000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f214f574e45520000000000000000000000000000000000000000000000000000600082015250565b50565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b7f21415554484f52495a4544000000000000000000000000000000000000000000600082015250565b613e1e81613b07565b8114613e2957600080fd5b50565b613e3581613b19565b8114613e4057600080fd5b50565b613e4c81613b2b565b8114613e5757600080fd5b50565b613e6381613b57565b8114613e6e57600080fd5b5056fea264697066735822122045a7c4cfaf8f6f289fcc95fe3bbc3f4d89dd308bea4b637433dfc769f582944264736f6c63430008070033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000051c5ce11ac710a6a2038be80f6e11d514df956a9
-----Decoded View---------------
Arg [0] : _anotherMarketingWallet (address): 0x51c5ce11aC710a6A2038Be80F6E11d514Df956a9
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000051c5ce11ac710a6a2038be80f6e11d514df956a9
Deployed Bytecode Sourcemap
5319:10951:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6869:50;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8382:78;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9222:216;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14140:98;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8644:86;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7044:69;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6330:27;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11690:370;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8822:142;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6252:29;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4570:103;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8558:78;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10923:312;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11243:275;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6070:43;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5916:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10094:120;;;;;;;;;;;;;:::i;:::-;;6710:40;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9446:122;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10492:423;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6288:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6214:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8972:103;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5151:111;;;;;;;;;;;;;:::i;:::-;;6809:51;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6452:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5798:52;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9864:105;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5857:50;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8738:76;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6120:47;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8468:82;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6176:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10222:123;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6620:19;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11526:156;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4243:94;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6648:25;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6534:46;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15757:442;;;;;;;;;;;;;:::i;:::-;;6409:36;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6364;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9753:103;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6757:45;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9083:131;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9977:109;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4413:97;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4970:173;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6589:24;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10353:131;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4744:107;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6869:50;;;;:::o;8382:78::-;8430:13;8453:5;;;;;;;;;;;;;;;;;8446:12;;8382:78;:::o;9222:216::-;9297:4;9349:6;9314:11;:23;9326:10;9314:23;;;;;;;;;;;;;;;:32;9338:7;9314:32;;;;;;;;;;;;;;;:41;;;;9392:7;9371:37;;9380:10;9371:37;;;9401:6;9371:37;;;;;;:::i;:::-;;;;;;;;9426:4;9419:11;;9222:216;;;;:::o;14140:98::-;3941:19;3949:10;3941:7;:19::i;:::-;3933:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;14221:9:::1;14207:11;;:23;;;;;;;;;;;;;;;;;;14140:98:::0;:::o;8644:86::-;8699:7;8716:12;;8709:19;;8644:86;:::o;7044:69::-;;;;:::o;6330:27::-;;;;:::o;11690:370::-;11790:4;11846:17;11811:11;:19;11823:6;11811:19;;;;;;;;;;;;;;;:31;11831:10;11811:31;;;;;;;;;;;;;;;;:52;11807:188;;11914:69;11950:6;11914:69;;;;;;;;;;;;;;;;;:11;:19;11926:6;11914:19;;;;;;;;;;;;;;;:31;11934:10;11914:31;;;;;;;;;;;;;;;;:35;;:69;;;;;:::i;:::-;11880:11;:19;11892:6;11880:19;;;;;;;;;;;;;;;:31;11900:10;11880:31;;;;;;;;;;;;;;;:103;;;;11807:188;12012:40;12026:6;12034:9;12045:6;12012:13;:40::i;:::-;12005:47;;11690:370;;;;;:::o;8822:142::-;8875:7;8902:54;8940:15;8950:4;;;;;;;;;;;8940:9;:15::i;:::-;8902:33;8919:15;8929:4;;;;;;;;;;;8919:9;:15::i;:::-;8902:12;;:16;;:33;;;;:::i;:::-;:37;;:54;;;;:::i;:::-;8895:61;;8822:142;:::o;6252:29::-;;;;:::o;4570:103::-;4625:4;4660:5;;;;;;;;;;;4649:16;;:7;:16;;;4642:23;;4570:103;;;:::o;8558:78::-;8610:5;5496:2;8618:16;;8558:78;:::o;10923:312::-;4119:24;4132:10;4119:12;:24::i;:::-;4111:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;11099:20:::1;11075:21;;:44;;;;;;;;;;;;;;;;;;11148:18;11130:15;;:36;;;;;;;;;;;;;;;;;;11202:25;11177:22;;:50;;;;;;;;;;;;;;;;;;10923:312:::0;;;:::o;11243:275::-;4119:24;4132:10;4119:12;:24::i;:::-;4111:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;11399:14:::1;11375:21;;:38;;;;;;;;;;;;;;;;;;11440:16;11424:13;:32;;;;11495:15;11467:25;;:43;;;;;;;;;;;;;;;;;;11243:275:::0;;;:::o;6070:43::-;;;;;;;;;;;;;;;;;;;;;;:::o;5916:33::-;;;;;;;;;;;;;:::o;10094:120::-;10152:5;10128:21;;:29;;;;;;;;;;;;;;;;;;10195:17;;10159:9;:33;10169:22;;;;;;;;;;;10159:33;;;;;;;;;;;;;;;:53;;;;10094:120::o;6710:40::-;;;;;;;;;;;;;:::o;9446:122::-;9501:4;9525:35;9533:7;9542:17;9525:7;:35::i;:::-;9518:42;;9446:122;;;:::o;10492:423::-;4119:24;4132:10;4119:12;:24::i;:::-;4111:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;10649:9:::1;10634:12;:24;;;;10682:12;10669:10;:25;;;;10720:15;10705:12;:30;;;;10763:15;10746:14;:32;;;;10802:46;10837:10;;10802:30;10819:12;;10802;;:16;;:30;;;;:::i;:::-;:34;;:46;;;;:::i;:::-;10791:8;:57;;;;10879:28;10892:14;;10879:8;;:12;;:28;;;;:::i;:::-;10859:17;:48;;;;10492:423:::0;;;;:::o;6288:33::-;;;;:::o;6214:31::-;;;;:::o;8972:103::-;9038:7;9055:9;:18;9065:7;9055:18;;;;;;;;;;;;;;;;9048:25;;8972:103;;;:::o;5151:111::-;3941:19;3949:10;3941:7;:19::i;:::-;3933:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;5216::::1;5250:1;5216:17;:38::i;:::-;5151:111::o:0;6809:51::-;;;;:::o;6452:30::-;;;;;;;;;;;;;:::o;5798:52::-;;;;:::o;9864:105::-;4119:24;4132:10;4119:12;:24::i;:::-;4111:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;9953:8:::1;9940:10;:21;;;;9864:105:::0;:::o;5857:50::-;;;;:::o;8738:76::-;8790:7;8807:5;;;;;;;;;;;8800:12;;8738:76;:::o;6120:47::-;;;;;;;;;;;;;;;;;;;;;;:::o;8468:82::-;8518:13;8541:7;;;;;;;;;;;;;;;;;8534:14;;8468:82;:::o;6176:31::-;;;;:::o;10222:123::-;4119:24;4132:10;4119:12;:24::i;:::-;4111:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;10331:6:::1;10309:11;:19;10321:6;10309:19;;;;;;;;;;;;;;;;:28;;;;;;;;;;;;;;;;;;10222:123:::0;;:::o;6620:19::-;;;;;;;;;;;;;:::o;11526:156::-;11606:4;11630:44;11644:10;11656:9;11667:6;11630:13;:44::i;:::-;11623:51;;11526:156;;;;:::o;4243:94::-;3941:19;3949:10;3941:7;:19::i;:::-;3933:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;4325:4:::1;4303:14:::0;:19:::1;4318:3;4303:19;;;;;;;;;;;;;;;;:26;;;;;;;;;;;;;;;;;;4243:94:::0;:::o;6648:25::-;;;;:::o;6534:46::-;;;;:::o;15757:442::-;3941:19;3949:10;3941:7;:19::i;:::-;3933:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;15821:11:::1;;;;;;;;;;;15820:12;15812:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;15895:5;15871:21;;:29;;;;;;;;;;;;;;;;;;15911:8;:6;:8::i;:::-;15944:4;15930:11;;:18;;;;;;;;;;;;;;;;;;15959:6;;;;;;;;;;;:22;;;15990:21;16021:4;16028:24;16046:4;16028:9;:24::i;:::-;16054:1;16057::::0;16060:10:::1;16072:15;15959:129;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;16106:4;;;;;;;;;;;16099:20;;;16128:6;;;;;;;;;;;16137:14;16099:53;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;16187:4;16163:21;;:28;;;;;;;;;;;;;;;;;;15757:442::o:0;6409:36::-;;;;;;;;;;;;;:::o;6364:::-;;;;:::o;9753:103::-;4119:24;4132:10;4119:12;:24::i;:::-;4111:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;9840:8:::1;9825:12;:23;;;;9753:103:::0;:::o;6757:45::-;;;;;;;;;;;;;:::o;9083:131::-;9167:7;9184:11;:19;9196:6;9184:19;;;;;;;;;;;;;;;:28;9204:7;9184:28;;;;;;;;;;;;;;;;9177:35;;9083:131;;;;:::o;9977:109::-;4119:24;4132:10;4119:12;:24::i;:::-;4111:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;10070:8:::1;10053:14;;:25;;;;;;;;;;;;;;;;;;9977:109:::0;:::o;4413:97::-;3941:19;3949:10;3941:7;:19::i;:::-;3933:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;4497:5:::1;4475:14;:19;4490:3;4475:19;;;;;;;;;;;;;;;;:27;;;;;;;;;;;;;;;;;;4413:97:::0;:::o;4970:173::-;3941:19;3949:10;3941:7;:19::i;:::-;3933:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;5054:3:::1;5046:5;::::0;:11:::1;;;;;;;;;;;;;;;;;;5090:4;5068:14:::0;:19:::1;5083:3;5068:19;;;;;;;;;;;;;;;;:26;;;;;;;;;;;;;;;;;;5110:25;5131:3;5110:25;;;;;;:::i;:::-;;;;;;;;4970:173:::0;:::o;6589:24::-;;;;;;;;;;;;;:::o;10353:131::-;4119:24;4132:10;4119:12;:24::i;:::-;4111:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;10470:6:::1;10444:15;:23;10460:6;10444:23;;;;;;;;;;;;;;;;:32;;;;;;;;;;;;;;;;;;10353:131:::0;;:::o;4744:107::-;4800:4;4824:14;:19;4839:3;4824:19;;;;;;;;;;;;;;;;;;;;;;;;;4817:26;;4744:107;;;:::o;87:179::-;145:7;165:9;181:1;177;:5;;;;:::i;:::-;165:17;;206:1;201;:6;;193:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;257:1;250:8;;;87:179;;;;:::o;418:190::-;504:7;537:1;532;:6;;540:12;524:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;564:9;580:1;576;:5;;;;:::i;:::-;564:17;;599:1;592:8;;;418:190;;;;;:::o;12068:1287::-;12160:4;12183:16;;;;;;;;;;;12179:73;;;12209:41;12224:6;12232:9;12243:6;12209:14;:41::i;:::-;12202:48;;;;12179:73;12269:14;:22;12284:6;12269:22;;;;;;;;;;;;;;;;;;;;;;;;;12268:23;:53;;;;;12296:14;:25;12311:9;12296:25;;;;;;;;;;;;;;;;;;;;;;;;;12295:26;12268:53;12264:130;;;12346:11;;;;;;;;;;;12338:44;;;;;;;;;;;;:::i;:::-;;;;;;;;;12264:130;12415:14;;;;;;;;;;;:40;;;;;12443:12;;12433:6;:22;;12415:40;12414:69;;;;12460:15;:23;12476:6;12460:23;;;;;;;;;;;;;;;;;;;;;;;;;12414:69;12406:99;;;;;;;;;;;;:::i;:::-;;;;;;;;;12536:4;;;;;;;;;;;12522:18;;:10;:18;;;;:42;;;;;12545:11;:19;12557:6;12545:19;;;;;;;;;;;;;;;;;;;;;;;;;12544:20;12522:42;:63;;;;;12569:16;;;;;;;;;;;12568:17;12522:63;:88;;;;;12589:21;;;;;;;;;;;12522:88;:133;;;;;12642:13;;12614:9;:24;12632:4;12614:24;;;;;;;;;;;;;;;;:41;;12522:133;12518:152;;;12658:10;:8;:10::i;:::-;12518:152;12687:10;:8;:10::i;:::-;12686:11;:32;;;;;12714:4;;;;;;;;;;;12701:17;;:9;:17;;;12686:32;12682:118;;;12763:1;12743:9;:17;12753:6;12743:17;;;;;;;;;;;;;;;;:21;12735:30;;;;;;12780:8;:6;:8::i;:::-;12682:118;12859:53;12881:6;12859:53;;;;;;;;;;;;;;;;;:9;:17;12869:6;12859:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;12839:9;:17;12849:6;12839:17;;;;;;;;;;;;;;;:73;;;;12930:15;:26;12946:9;12930:26;;;;;;;;;;;;;;;;;;;;;;;;;12929:27;:45;;;;;12960:14;;;;;;;;;;;12929:45;12925:142;;;13044:10;;13008:32;13033:6;13008:9;:20;13018:9;13008:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;:46;;13000:55;;;;;;12925:142;13079:19;13102:11;:19;13114:6;13102:19;;;;;;;;;;;;;;;;;;;;;;;;;13101:20;:47;;;;;13126:11;:22;13138:9;13126:22;;;;;;;;;;;;;;;;;;;;;;;;;13125:23;13101:47;:93;;13188:6;13101:93;;;13151:34;13159:6;13167:9;13178:6;13151:7;:34::i;:::-;13101:93;13079:115;;13230:37;13255:11;13230:9;:20;13240:9;13230:20;;;;;;;;;;;;;;;;:24;;:37;;;;:::i;:::-;13207:9;:20;13217:9;13207:20;;;;;;;;;;;;;;;:60;;;;13302:9;13285:40;;13294:6;13285:40;;;13313:11;13285:40;;;;;;:::i;:::-;;;;;;;;13343:4;13336:11;;;12068:1287;;;;;;:::o;274:136::-;332:7;359:43;363:1;366;359:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;352:50;;274:136;;;;:::o;9674:71::-;9725:12;9712:10;:25;;;;9674:71::o;13363:330::-;13456:4;13493:53;13515:6;13493:53;;;;;;;;;;;;;;;;;:9;:17;13503:6;13493:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;13473:9;:17;13483:6;13473:17;;;;;;;;;;;;;;;:73;;;;13580:32;13605:6;13580:9;:20;13590:9;13580:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;13557:9;:20;13567:9;13557:20;;;;;;;;;;;;;;;:55;;;;13645:9;13628:35;;13637:6;13628:35;;;13656:6;13628:35;;;;;;:::i;:::-;;;;;;;;13681:4;13674:11;;13363:330;;;;;:::o;14246:1503::-;6979:4;6960:16;;:23;;;;;;;;;;;;;;;;;;14298::::1;14324:9;:24;14342:4;14324:24;;;;;;;;;;;;;;;;14298:50;;14359:23;14385:54;14437:1;14385:47;14423:8;;14385:33;14405:12;;14385:15;:19;;:33;;;;:::i;:::-;:37;;:47;;;;:::i;:::-;:51;;:54;;;;:::i;:::-;14359:80;;14450:20;14473:36;14493:15;14473;:19;;:36;;;;:::i;:::-;14450:59;;14522:21;14560:1;14546:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14522:40;;14591:4;14573;14578:1;14573:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;14617:6;;;;;;;;;;;:11;;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14607:4;14612:1;14607:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;14643:6;;;;;;;;;;;:57;;;14715:12;14742:1;14758:4;14785;14805:15;14643:188;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;14844:17;14864:21;14844:41;;14898:19;14920:33;14933:19;14950:1;14933:12;;:16;;:19;;;;:::i;:::-;14920:8;;:12;;:33;;;;:::i;:::-;14898:55;;14966:26;14995:51;15044:1;14995:44;15027:11;14995:27;15009:12;;14995:9;:13;;:27;;;;:::i;:::-;:31;;:44;;;;:::i;:::-;:48;;:51;;;;:::i;:::-;14966:80;;15057:27;15087:42;15117:11;15087:25;15101:10;;15087:9;:13;;:25;;;;:::i;:::-;:29;;:42;;;;:::i;:::-;15057:72;;15140:26;15169:58;15207:19;15169:33;15183:18;15169:9;:13;;:33;;;;:::i;:::-;:37;;:58;;;;:::i;:::-;15140:87;;15241:15;15269;;;;;;;;;;;15261:29;;15299:18;15325:5;15261:74;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15240:95;;;15359:5;15346:18;;15399:1;15381:15;:19;15377:365;;;15417:6;;;;;;;;;;;:22;;;15448:18;15494:4;15518:15;15552:1;15572::::0;15592:21:::1;;;;;;;;;;;15632:15;15417:245;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;15682:48;15694:18;15714:15;15682:48;;;;;;;:::i;:::-;;;;;;;;15377:365;14287:1462;;;;;;;;;;7025:5:::0;7006:16;;:24;;;;;;;;;;;;;;;;;;14246:1503::o;9576:90::-;9619:4;9657:1;9643:10;;:15;;9636:22;;9576:90;:::o;13701:431::-;13787:7;13809:21;13841:9;13833:17;;:4;;;;;;;;;;;:17;;;:48;;13873:8;;13833:48;;;13853:17;;13833:48;13809:72;;13892:17;13912:34;13942:3;13912:25;13923:13;13912:6;:10;;:25;;;;:::i;:::-;:29;;:34;;;;:::i;:::-;13892:54;;13986:39;14015:9;13986;:24;14004:4;13986:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;13959:9;:24;13977:4;13959:24;;;;;;;;;;;;;;;:66;;;;14066:4;14041:42;;14050:6;14041:42;;;14073:9;14041:42;;;;;;:::i;:::-;;;;;;;;14103:21;14114:9;14103:6;:10;;:21;;;;:::i;:::-;14096:28;;;;13701:431;;;;;:::o;616:222::-;674:7;703:1;698;:6;694:23;;;714:1;707:8;;;;694:23;727:9;743:1;739;:5;;;;:::i;:::-;727:17;;772:1;767;763;:5;;;;:::i;:::-;:10;755:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;829:1;822:8;;;616:222;;;;;:::o;846:132::-;904:7;931:39;935:1;938;931:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;924:46;;846:132;;;;:::o;986:189::-;1072:7;1104:1;1100;:5;1107:12;1092:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1131:9;1147:1;1143;:5;;;;:::i;:::-;1131:17;;1166:1;1159:8;;;986:189;;;;;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;7:139;;;;:::o;152:143::-;209:5;240:6;234:13;225:22;;256:33;283:5;256:33;:::i;:::-;152:143;;;;:::o;301:155::-;355:5;393:6;380:20;371:29;;409:41;444:5;409:41;:::i;:::-;301:155;;;;:::o;462:133::-;505:5;543:6;530:20;521:29;;559:30;583:5;559:30;:::i;:::-;462:133;;;;:::o;601:137::-;655:5;686:6;680:13;671:22;;702:30;726:5;702:30;:::i;:::-;601:137;;;;:::o;744:139::-;790:5;828:6;815:20;806:29;;844:33;871:5;844:33;:::i;:::-;744:139;;;;:::o;889:143::-;946:5;977:6;971:13;962:22;;993:33;1020:5;993:33;:::i;:::-;889:143;;;;:::o;1038:329::-;1097:6;1146:2;1134:9;1125:7;1121:23;1117:32;1114:119;;;1152:79;;:::i;:::-;1114:119;1272:1;1297:53;1342:7;1333:6;1322:9;1318:22;1297:53;:::i;:::-;1287:63;;1243:117;1038:329;;;;:::o;1373:351::-;1443:6;1492:2;1480:9;1471:7;1467:23;1463:32;1460:119;;;1498:79;;:::i;:::-;1460:119;1618:1;1643:64;1699:7;1690:6;1679:9;1675:22;1643:64;:::i;:::-;1633:74;;1589:128;1373:351;;;;:::o;1730:345::-;1797:6;1846:2;1834:9;1825:7;1821:23;1817:32;1814:119;;;1852:79;;:::i;:::-;1814:119;1972:1;1997:61;2050:7;2041:6;2030:9;2026:22;1997:61;:::i;:::-;1987:71;;1943:125;1730:345;;;;:::o;2081:474::-;2149:6;2157;2206:2;2194:9;2185:7;2181:23;2177:32;2174:119;;;2212:79;;:::i;:::-;2174:119;2332:1;2357:53;2402:7;2393:6;2382:9;2378:22;2357:53;:::i;:::-;2347:63;;2303:117;2459:2;2485:53;2530:7;2521:6;2510:9;2506:22;2485:53;:::i;:::-;2475:63;;2430:118;2081:474;;;;;:::o;2561:619::-;2638:6;2646;2654;2703:2;2691:9;2682:7;2678:23;2674:32;2671:119;;;2709:79;;:::i;:::-;2671:119;2829:1;2854:53;2899:7;2890:6;2879:9;2875:22;2854:53;:::i;:::-;2844:63;;2800:117;2956:2;2982:53;3027:7;3018:6;3007:9;3003:22;2982:53;:::i;:::-;2972:63;;2927:118;3084:2;3110:53;3155:7;3146:6;3135:9;3131:22;3110:53;:::i;:::-;3100:63;;3055:118;2561:619;;;;;:::o;3186:::-;3263:6;3271;3279;3328:2;3316:9;3307:7;3303:23;3299:32;3296:119;;;3334:79;;:::i;:::-;3296:119;3454:1;3479:53;3524:7;3515:6;3504:9;3500:22;3479:53;:::i;:::-;3469:63;;3425:117;3581:2;3607:53;3652:7;3643:6;3632:9;3628:22;3607:53;:::i;:::-;3597:63;;3552:118;3709:2;3735:53;3780:7;3771:6;3760:9;3756:22;3735:53;:::i;:::-;3725:63;;3680:118;3186:619;;;;;:::o;3811:468::-;3876:6;3884;3933:2;3921:9;3912:7;3908:23;3904:32;3901:119;;;3939:79;;:::i;:::-;3901:119;4059:1;4084:53;4129:7;4120:6;4109:9;4105:22;4084:53;:::i;:::-;4074:63;;4030:117;4186:2;4212:50;4254:7;4245:6;4234:9;4230:22;4212:50;:::i;:::-;4202:60;;4157:115;3811:468;;;;;:::o;4285:474::-;4353:6;4361;4410:2;4398:9;4389:7;4385:23;4381:32;4378:119;;;4416:79;;:::i;:::-;4378:119;4536:1;4561:53;4606:7;4597:6;4586:9;4582:22;4561:53;:::i;:::-;4551:63;;4507:117;4663:2;4689:53;4734:7;4725:6;4714:9;4710:22;4689:53;:::i;:::-;4679:63;;4634:118;4285:474;;;;;:::o;4765:323::-;4821:6;4870:2;4858:9;4849:7;4845:23;4841:32;4838:119;;;4876:79;;:::i;:::-;4838:119;4996:1;5021:50;5063:7;5054:6;5043:9;5039:22;5021:50;:::i;:::-;5011:60;;4967:114;4765:323;;;;:::o;5094:345::-;5161:6;5210:2;5198:9;5189:7;5185:23;5181:32;5178:119;;;5216:79;;:::i;:::-;5178:119;5336:1;5361:61;5414:7;5405:6;5394:9;5390:22;5361:61;:::i;:::-;5351:71;;5307:125;5094:345;;;;:::o;5445:607::-;5516:6;5524;5532;5581:2;5569:9;5560:7;5556:23;5552:32;5549:119;;;5587:79;;:::i;:::-;5549:119;5707:1;5732:50;5774:7;5765:6;5754:9;5750:22;5732:50;:::i;:::-;5722:60;;5678:114;5831:2;5857:53;5902:7;5893:6;5882:9;5878:22;5857:53;:::i;:::-;5847:63;;5802:118;5959:2;5985:50;6027:7;6018:6;6007:9;6003:22;5985:50;:::i;:::-;5975:60;;5930:115;5445:607;;;;;:::o;6058:329::-;6117:6;6166:2;6154:9;6145:7;6141:23;6137:32;6134:119;;;6172:79;;:::i;:::-;6134:119;6292:1;6317:53;6362:7;6353:6;6342:9;6338:22;6317:53;:::i;:::-;6307:63;;6263:117;6058:329;;;;:::o;6393:663::-;6481:6;6489;6497;6546:2;6534:9;6525:7;6521:23;6517:32;6514:119;;;6552:79;;:::i;:::-;6514:119;6672:1;6697:64;6753:7;6744:6;6733:9;6729:22;6697:64;:::i;:::-;6687:74;;6643:128;6810:2;6836:64;6892:7;6883:6;6872:9;6868:22;6836:64;:::i;:::-;6826:74;;6781:129;6949:2;6975:64;7031:7;7022:6;7011:9;7007:22;6975:64;:::i;:::-;6965:74;;6920:129;6393:663;;;;;:::o;7062:765::-;7148:6;7156;7164;7172;7221:3;7209:9;7200:7;7196:23;7192:33;7189:120;;;7228:79;;:::i;:::-;7189:120;7348:1;7373:53;7418:7;7409:6;7398:9;7394:22;7373:53;:::i;:::-;7363:63;;7319:117;7475:2;7501:53;7546:7;7537:6;7526:9;7522:22;7501:53;:::i;:::-;7491:63;;7446:118;7603:2;7629:53;7674:7;7665:6;7654:9;7650:22;7629:53;:::i;:::-;7619:63;;7574:118;7731:2;7757:53;7802:7;7793:6;7782:9;7778:22;7757:53;:::i;:::-;7747:63;;7702:118;7062:765;;;;;;;:::o;7833:179::-;7902:10;7923:46;7965:3;7957:6;7923:46;:::i;:::-;8001:4;7996:3;7992:14;7978:28;;7833:179;;;;:::o;8018:147::-;8113:45;8152:5;8113:45;:::i;:::-;8108:3;8101:58;8018:147;;:::o;8171:108::-;8248:24;8266:5;8248:24;:::i;:::-;8243:3;8236:37;8171:108;;:::o;8285:118::-;8372:24;8390:5;8372:24;:::i;:::-;8367:3;8360:37;8285:118;;:::o;8439:732::-;8558:3;8587:54;8635:5;8587:54;:::i;:::-;8657:86;8736:6;8731:3;8657:86;:::i;:::-;8650:93;;8767:56;8817:5;8767:56;:::i;:::-;8846:7;8877:1;8862:284;8887:6;8884:1;8881:13;8862:284;;;8963:6;8957:13;8990:63;9049:3;9034:13;8990:63;:::i;:::-;8983:70;;9076:60;9129:6;9076:60;:::i;:::-;9066:70;;8922:224;8909:1;8906;8902:9;8897:14;;8862:284;;;8866:14;9162:3;9155:10;;8563:608;;;8439:732;;;;:::o;9177:109::-;9258:21;9273:5;9258:21;:::i;:::-;9253:3;9246:34;9177:109;;:::o;9292:167::-;9397:55;9446:5;9397:55;:::i;:::-;9392:3;9385:68;9292:167;;:::o;9465:147::-;9560:45;9599:5;9560:45;:::i;:::-;9555:3;9548:58;9465:147;;:::o;9618:364::-;9706:3;9734:39;9767:5;9734:39;:::i;:::-;9789:71;9853:6;9848:3;9789:71;:::i;:::-;9782:78;;9869:52;9914:6;9909:3;9902:4;9895:5;9891:16;9869:52;:::i;:::-;9946:29;9968:6;9946:29;:::i;:::-;9941:3;9937:39;9930:46;;9710:272;9618:364;;;;:::o;9988:366::-;10130:3;10151:67;10215:2;10210:3;10151:67;:::i;:::-;10144:74;;10227:93;10316:3;10227:93;:::i;:::-;10345:2;10340:3;10336:12;10329:19;;9988:366;;;:::o;10360:::-;10502:3;10523:67;10587:2;10582:3;10523:67;:::i;:::-;10516:74;;10599:93;10688:3;10599:93;:::i;:::-;10717:2;10712:3;10708:12;10701:19;;10360:366;;;:::o;10732:::-;10874:3;10895:67;10959:2;10954:3;10895:67;:::i;:::-;10888:74;;10971:93;11060:3;10971:93;:::i;:::-;11089:2;11084:3;11080:12;11073:19;;10732:366;;;:::o;11104:::-;11246:3;11267:67;11331:2;11326:3;11267:67;:::i;:::-;11260:74;;11343:93;11432:3;11343:93;:::i;:::-;11461:2;11456:3;11452:12;11445:19;;11104:366;;;:::o;11476:365::-;11618:3;11639:66;11703:1;11698:3;11639:66;:::i;:::-;11632:73;;11714:93;11803:3;11714:93;:::i;:::-;11832:2;11827:3;11823:12;11816:19;;11476:365;;;:::o;11847:398::-;12006:3;12027:83;12108:1;12103:3;12027:83;:::i;:::-;12020:90;;12119:93;12208:3;12119:93;:::i;:::-;12237:1;12232:3;12228:11;12221:18;;11847:398;;;:::o;12251:366::-;12393:3;12414:67;12478:2;12473:3;12414:67;:::i;:::-;12407:74;;12490:93;12579:3;12490:93;:::i;:::-;12608:2;12603:3;12599:12;12592:19;;12251:366;;;:::o;12623:::-;12765:3;12786:67;12850:2;12845:3;12786:67;:::i;:::-;12779:74;;12862:93;12951:3;12862:93;:::i;:::-;12980:2;12975:3;12971:12;12964:19;;12623:366;;;:::o;12995:118::-;13082:24;13100:5;13082:24;:::i;:::-;13077:3;13070:37;12995:118;;:::o;13119:112::-;13202:22;13218:5;13202:22;:::i;:::-;13197:3;13190:35;13119:112;;:::o;13237:379::-;13421:3;13443:147;13586:3;13443:147;:::i;:::-;13436:154;;13607:3;13600:10;;13237:379;;;:::o;13622:222::-;13715:4;13753:2;13742:9;13738:18;13730:26;;13766:71;13834:1;13823:9;13819:17;13810:6;13766:71;:::i;:::-;13622:222;;;;:::o;13850:238::-;13951:4;13989:2;13978:9;13974:18;13966:26;;14002:79;14078:1;14067:9;14063:17;14054:6;14002:79;:::i;:::-;13850:238;;;;:::o;14094:332::-;14215:4;14253:2;14242:9;14238:18;14230:26;;14266:71;14334:1;14323:9;14319:17;14310:6;14266:71;:::i;:::-;14347:72;14415:2;14404:9;14400:18;14391:6;14347:72;:::i;:::-;14094:332;;;;;:::o;14432:807::-;14681:4;14719:3;14708:9;14704:19;14696:27;;14733:71;14801:1;14790:9;14786:17;14777:6;14733:71;:::i;:::-;14814:72;14882:2;14871:9;14867:18;14858:6;14814:72;:::i;:::-;14896:80;14972:2;14961:9;14957:18;14948:6;14896:80;:::i;:::-;14986;15062:2;15051:9;15047:18;15038:6;14986:80;:::i;:::-;15076:73;15144:3;15133:9;15129:19;15120:6;15076:73;:::i;:::-;15159;15227:3;15216:9;15212:19;15203:6;15159:73;:::i;:::-;14432:807;;;;;;;;;:::o;15245:210::-;15332:4;15370:2;15359:9;15355:18;15347:26;;15383:65;15445:1;15434:9;15430:17;15421:6;15383:65;:::i;:::-;15245:210;;;;:::o;15461:258::-;15572:4;15610:2;15599:9;15595:18;15587:26;;15623:89;15709:1;15698:9;15694:17;15685:6;15623:89;:::i;:::-;15461:258;;;;:::o;15725:313::-;15838:4;15876:2;15865:9;15861:18;15853:26;;15925:9;15919:4;15915:20;15911:1;15900:9;15896:17;15889:47;15953:78;16026:4;16017:6;15953:78;:::i;:::-;15945:86;;15725:313;;;;:::o;16044:419::-;16210:4;16248:2;16237:9;16233:18;16225:26;;16297:9;16291:4;16287:20;16283:1;16272:9;16268:17;16261:47;16325:131;16451:4;16325:131;:::i;:::-;16317:139;;16044:419;;;:::o;16469:::-;16635:4;16673:2;16662:9;16658:18;16650:26;;16722:9;16716:4;16712:20;16708:1;16697:9;16693:17;16686:47;16750:131;16876:4;16750:131;:::i;:::-;16742:139;;16469:419;;;:::o;16894:::-;17060:4;17098:2;17087:9;17083:18;17075:26;;17147:9;17141:4;17137:20;17133:1;17122:9;17118:17;17111:47;17175:131;17301:4;17175:131;:::i;:::-;17167:139;;16894:419;;;:::o;17319:::-;17485:4;17523:2;17512:9;17508:18;17500:26;;17572:9;17566:4;17562:20;17558:1;17547:9;17543:17;17536:47;17600:131;17726:4;17600:131;:::i;:::-;17592:139;;17319:419;;;:::o;17744:::-;17910:4;17948:2;17937:9;17933:18;17925:26;;17997:9;17991:4;17987:20;17983:1;17972:9;17968:17;17961:47;18025:131;18151:4;18025:131;:::i;:::-;18017:139;;17744:419;;;:::o;18169:::-;18335:4;18373:2;18362:9;18358:18;18350:26;;18422:9;18416:4;18412:20;18408:1;18397:9;18393:17;18386:47;18450:131;18576:4;18450:131;:::i;:::-;18442:139;;18169:419;;;:::o;18594:::-;18760:4;18798:2;18787:9;18783:18;18775:26;;18847:9;18841:4;18837:20;18833:1;18822:9;18818:17;18811:47;18875:131;19001:4;18875:131;:::i;:::-;18867:139;;18594:419;;;:::o;19019:222::-;19112:4;19150:2;19139:9;19135:18;19127:26;;19163:71;19231:1;19220:9;19216:17;19207:6;19163:71;:::i;:::-;19019:222;;;;:::o;19247:831::-;19510:4;19548:3;19537:9;19533:19;19525:27;;19562:71;19630:1;19619:9;19615:17;19606:6;19562:71;:::i;:::-;19643:80;19719:2;19708:9;19704:18;19695:6;19643:80;:::i;:::-;19770:9;19764:4;19760:20;19755:2;19744:9;19740:18;19733:48;19798:108;19901:4;19892:6;19798:108;:::i;:::-;19790:116;;19916:72;19984:2;19973:9;19969:18;19960:6;19916:72;:::i;:::-;19998:73;20066:3;20055:9;20051:19;20042:6;19998:73;:::i;:::-;19247:831;;;;;;;;:::o;20084:332::-;20205:4;20243:2;20232:9;20228:18;20220:26;;20256:71;20324:1;20313:9;20309:17;20300:6;20256:71;:::i;:::-;20337:72;20405:2;20394:9;20390:18;20381:6;20337:72;:::i;:::-;20084:332;;;;;:::o;20422:214::-;20511:4;20549:2;20538:9;20534:18;20526:26;;20562:67;20626:1;20615:9;20611:17;20602:6;20562:67;:::i;:::-;20422:214;;;;:::o;20723:132::-;20790:4;20813:3;20805:11;;20843:4;20838:3;20834:14;20826:22;;20723:132;;;:::o;20861:114::-;20928:6;20962:5;20956:12;20946:22;;20861:114;;;:::o;20981:99::-;21033:6;21067:5;21061:12;21051:22;;20981:99;;;:::o;21086:113::-;21156:4;21188;21183:3;21179:14;21171:22;;21086:113;;;:::o;21205:184::-;21304:11;21338:6;21333:3;21326:19;21378:4;21373:3;21369:14;21354:29;;21205:184;;;;:::o;21395:147::-;21496:11;21533:3;21518:18;;21395:147;;;;:::o;21548:169::-;21632:11;21666:6;21661:3;21654:19;21706:4;21701:3;21697:14;21682:29;;21548:169;;;;:::o;21723:305::-;21763:3;21782:20;21800:1;21782:20;:::i;:::-;21777:25;;21816:20;21834:1;21816:20;:::i;:::-;21811:25;;21970:1;21902:66;21898:74;21895:1;21892:81;21889:107;;;21976:18;;:::i;:::-;21889:107;22020:1;22017;22013:9;22006:16;;21723:305;;;;:::o;22034:185::-;22074:1;22091:20;22109:1;22091:20;:::i;:::-;22086:25;;22125:20;22143:1;22125:20;:::i;:::-;22120:25;;22164:1;22154:35;;22169:18;;:::i;:::-;22154:35;22211:1;22208;22204:9;22199:14;;22034:185;;;;:::o;22225:348::-;22265:7;22288:20;22306:1;22288:20;:::i;:::-;22283:25;;22322:20;22340:1;22322:20;:::i;:::-;22317:25;;22510:1;22442:66;22438:74;22435:1;22432:81;22427:1;22420:9;22413:17;22409:105;22406:131;;;22517:18;;:::i;:::-;22406:131;22565:1;22562;22558:9;22547:20;;22225:348;;;;:::o;22579:191::-;22619:4;22639:20;22657:1;22639:20;:::i;:::-;22634:25;;22673:20;22691:1;22673:20;:::i;:::-;22668:25;;22712:1;22709;22706:8;22703:34;;;22717:18;;:::i;:::-;22703:34;22762:1;22759;22755:9;22747:17;;22579:191;;;;:::o;22776:96::-;22813:7;22842:24;22860:5;22842:24;:::i;:::-;22831:35;;22776:96;;;:::o;22878:104::-;22923:7;22952:24;22970:5;22952:24;:::i;:::-;22941:35;;22878:104;;;:::o;22988:90::-;23022:7;23065:5;23058:13;23051:21;23040:32;;22988:90;;;:::o;23084:126::-;23121:7;23161:42;23154:5;23150:54;23139:65;;23084:126;;;:::o;23216:77::-;23253:7;23282:5;23271:16;;23216:77;;;:::o;23299:86::-;23334:7;23374:4;23367:5;23363:16;23352:27;;23299:86;;;:::o;23391:134::-;23449:9;23482:37;23513:5;23482:37;:::i;:::-;23469:50;;23391:134;;;:::o;23531:144::-;23599:9;23632:37;23663:5;23632:37;:::i;:::-;23619:50;;23531:144;;;:::o;23681:121::-;23739:9;23772:24;23790:5;23772:24;:::i;:::-;23759:37;;23681:121;;;:::o;23808:126::-;23858:9;23891:37;23922:5;23891:37;:::i;:::-;23878:50;;23808:126;;;:::o;23940:113::-;23990:9;24023:24;24041:5;24023:24;:::i;:::-;24010:37;;23940:113;;;:::o;24059:307::-;24127:1;24137:113;24151:6;24148:1;24145:13;24137:113;;;24236:1;24231:3;24227:11;24221:18;24217:1;24212:3;24208:11;24201:39;24173:2;24170:1;24166:10;24161:15;;24137:113;;;24268:6;24265:1;24262:13;24259:101;;;24348:1;24339:6;24334:3;24330:16;24323:27;24259:101;24108:258;24059:307;;;:::o;24372:180::-;24420:77;24417:1;24410:88;24517:4;24514:1;24507:15;24541:4;24538:1;24531:15;24558:180;24606:77;24603:1;24596:88;24703:4;24700:1;24693:15;24727:4;24724:1;24717:15;24744:180;24792:77;24789:1;24782:88;24889:4;24886:1;24879:15;24913:4;24910:1;24903:15;24930:180;24978:77;24975:1;24968:88;25075:4;25072:1;25065:15;25099:4;25096:1;25089:15;25239:117;25348:1;25345;25338:12;25362:102;25403:6;25454:2;25450:7;25445:2;25438:5;25434:14;25430:28;25420:38;;25362:102;;;:::o;25470:167::-;25610:19;25606:1;25598:6;25594:14;25587:43;25470:167;:::o;25643:177::-;25783:29;25779:1;25771:6;25767:14;25760:53;25643:177;:::o;25826:170::-;25966:22;25962:1;25954:6;25950:14;25943:46;25826:170;:::o;26002:220::-;26142:34;26138:1;26130:6;26126:14;26119:58;26211:3;26206:2;26198:6;26194:15;26187:28;26002:220;:::o;26228:156::-;26368:8;26364:1;26356:6;26352:14;26345:32;26228:156;:::o;26390:114::-;;:::o;26510:173::-;26650:25;26646:1;26638:6;26634:14;26627:49;26510:173;:::o;26689:161::-;26829:13;26825:1;26817:6;26813:14;26806:37;26689:161;:::o;26856:122::-;26929:24;26947:5;26929:24;:::i;:::-;26922:5;26919:35;26909:63;;26968:1;26965;26958:12;26909:63;26856:122;:::o;26984:138::-;27065:32;27091:5;27065:32;:::i;:::-;27058:5;27055:43;27045:71;;27112:1;27109;27102:12;27045:71;26984:138;:::o;27128:116::-;27198:21;27213:5;27198:21;:::i;:::-;27191:5;27188:32;27178:60;;27234:1;27231;27224:12;27178:60;27128:116;:::o;27250:122::-;27323:24;27341:5;27323:24;:::i;:::-;27316:5;27313:35;27303:63;;27362:1;27359;27352:12;27303:63;27250:122;:::o
Swarm Source
ipfs://45a7c4cfaf8f6f289fcc95fe3bbc3f4d89dd308bea4b637433dfc769f5829442
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.