ERC-20
Overview
Max Total Supply
888,888 GLICK
Holders
50
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
16,981.316352 GLICKValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
Glowstick
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-07-11 */ /* $$$$$$\ $$\ $$\ $$\ $$\ $$ __$$\ $$ | $$ | \__| $$ | $$ / \__|$$ | $$$$$$\ $$\ $$\ $$\ $$$$$$$\ $$$$$$\ $$\ $$$$$$$\ $$ | $$\ $$ |$$$$\ $$ |$$ __$$\ $$ | $$ | $$ |$$ _____|\_$$ _| $$ |$$ _____|$$ | $$ | $$ |\_$$ |$$ |$$ / $$ |$$ | $$ | $$ |\$$$$$$\ $$ | $$ |$$ / $$$$$$ / $$ | $$ |$$ |$$ | $$ |$$ | $$ | $$ | \____$$\ $$ |$$\ $$ |$$ | $$ _$$< \$$$$$$ |$$ |\$$$$$$ |\$$$$$\$$$$ |$$$$$$$ | \$$$$ |$$ |\$$$$$$$\ $$ | \$$\ \______/ \__| \______/ \_____\____/ \_______/ \____/ \__| \_______|\__| \__| Glowstick is a cutting-edge application that bridges the gap between complex crypto markets and users. Leveraging powerful AI algorithms, we offer real-time tracking and performance predictions for new Ethereum token launches. We categorize tokens into meaningful classes, making it simple for users to discover and track tokens relevant to their interests. Real-time Tracking and Categorization With Glowstick, you gain access to an advanced AI algorithm that constantly monitors and categorizes new token launches. Our algorithm intelligently analyzes and classifies tokens into categories such as 'Memes,' 'Shitposts,' 'Analytics,' 'Bots,' 'Gaming,' and more. This categorization system helps you identify tokens that align with your interests and investment strategies. User-Friendly Interface and Notifications Glowstick offers a seamless and intuitive user interface, making it easy for you to navigate and access the information you need. You can customize your preferences and receive real-time notifications about new token launches, category updates, and performance predictions. Stay informed and seize promising investment opportunities as they emerge. In-depth Performance Predictions Our AI-driven platform goes beyond categorization. It harnesses the power of predictive analytics to forecast how tokens in each category are likely to perform. By leveraging historical data, market trends, and machine learning algorithms, Glowstick provides you with comprehensive predictions, empowering you to make data-backed investment choices. Community Collaboration and Insights Our platform fosters an engaged community of crypto enthusiasts. Connect with like-minded individuals, share insights, and discuss emerging trends. Glowstick encourages collaboration and collective wisdom, creating a vibrant ecosystem where members can pool their knowledge and enhance their investment strategies. Website: https://www.glowstick.tech/ Twitter: https://twitter.com/glowsticktech Telegram: https://t.me/glowsticktech Manifest: https://medium.com/@glowsticktech/glowstick-tech-9adccd32fe76 */ // SPDX-License-Identifier: MIT pragma solidity 0.8.19; 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 ERC20 { 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); } abstract contract Ownable { address internal owner; constructor(address _owner) { owner = _owner; } modifier onlyOwner() { require(isOwner(msg.sender), "!OWNER"); _; } function isOwner(address account) public view returns (bool) { return account == owner; } function renounceOwnership() public onlyOwner { owner = address(0); emit OwnershipTransferred(address(0)); } event OwnershipTransferred(address owner); } 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; } contract Glowstick is ERC20, Ownable { using SafeMath for uint256; address routerAdress = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D; address DEAD = 0x000000000000000000000000000000000000dEaD; string constant _name = "Glowstick"; string constant _symbol = "GLICK"; uint8 constant _decimals = 9; uint256 _totalSupply = 888_888 * (10 ** _decimals); uint256 public _maxWalletAmount = (_totalSupply * 4) / 100; uint256 public _maxTxAmount = _totalSupply.mul(4).div(100); mapping (address => uint256) _balances; mapping (address => mapping (address => uint256)) _allowances; mapping (address => bool) isFeeExempt; mapping (address => bool) isTxLimitExempt; uint256 liquidityFee = 0; uint256 marketingFee = 4; uint256 totalFee = liquidityFee + marketingFee; uint256 feeDenominator = 100; address public marketingFeeReceiver = 0xf68F0d3553e601d3F95665fBEa6E23a09adB1230; IDEXRouter public router; address public pair; bool public swapEnabled = true; uint256 public swapThreshold = _totalSupply / 1000 * 5; // 0.5% bool inSwap; modifier swapping() { inSwap = true; _; inSwap = false; } constructor () Ownable(msg.sender) { router = IDEXRouter(routerAdress); pair = IDEXFactory(router.factory()).createPair(router.WETH(), address(this)); _allowances[address(this)][address(router)] = type(uint256).max; address _owner = owner; isFeeExempt[0xf68F0d3553e601d3F95665fBEa6E23a09adB1230] = true; isTxLimitExempt[_owner] = true; isTxLimitExempt[0xf68F0d3553e601d3F95665fBEa6E23a09adB1230] = true; isTxLimitExempt[DEAD] = true; _balances[_owner] = _totalSupply; emit Transfer(address(0), _owner, _totalSupply); } receive() external payable { } function totalSupply() external view override returns (uint256) { return _totalSupply; } function decimals() external pure override returns (uint8) { return _decimals; } function symbol() external pure override returns (string memory) { return _symbol; } function name() external pure override returns (string memory) { return _name; } function getOwner() external view override returns (address) { return owner; } 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 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(inSwap){ return _basicTransfer(sender, recipient, amount); } if (recipient != pair && recipient != DEAD) { require(isTxLimitExempt[recipient] || _balances[recipient] + amount <= _maxWalletAmount, "Transfer amount exceeds the bag size."); } if(shouldSwapBack()){ swapBack(); } _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); uint256 amountReceived = shouldTakeFee(sender) ? takeFee(sender, amount) : amount; _balances[recipient] = _balances[recipient].add(amountReceived); emit Transfer(sender, recipient, amountReceived); 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 shouldTakeFee(address sender) internal view returns (bool) { return !isFeeExempt[sender]; } function takeFee(address sender, uint256 amount) internal returns (uint256) { uint256 feeAmount = amount.mul(totalFee).div(feeDenominator); _balances[address(this)] = _balances[address(this)].add(feeAmount); emit Transfer(sender, address(this), feeAmount); return amount.sub(feeAmount); } function shouldSwapBack() internal view returns (bool) { return msg.sender != pair && !inSwap && swapEnabled && _balances[address(this)] >= swapThreshold; } function swapBack() internal swapping { uint256 contractTokenBalance = swapThreshold; uint256 amountToLiquify = contractTokenBalance.mul(liquidityFee).div(totalFee).div(2); uint256 amountToSwap = contractTokenBalance.sub(amountToLiquify); address[] memory path = new address[](2); path[0] = address(this); path[1] = router.WETH(); uint256 balanceBefore = address(this).balance; router.swapExactTokensForETHSupportingFeeOnTransferTokens( amountToSwap, 0, path, address(this), block.timestamp ); uint256 amountETH = address(this).balance.sub(balanceBefore); uint256 totalETHFee = totalFee.sub(liquidityFee.div(2)); uint256 amountETHLiquidity = amountETH.mul(liquidityFee).div(totalETHFee).div(2); uint256 amountETHMarketing = amountETH.mul(marketingFee).div(totalETHFee); (bool MarketingSuccess, /* bytes memory data */) = payable(marketingFeeReceiver).call{value: amountETHMarketing, gas: 30000}(""); require(MarketingSuccess, "receiver rejected ETH transfer"); if(amountToLiquify > 0){ router.addLiquidityETH{value: amountETHLiquidity}( address(this), amountToLiquify, 0, 0, 0xf68F0d3553e601d3F95665fBEa6E23a09adB1230, block.timestamp ); emit AutoLiquify(amountETHLiquidity, amountToLiquify); } } function buyTokens(uint256 amount, address to) internal swapping { address[] memory path = new address[](2); path[0] = router.WETH(); path[1] = address(this); router.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}( 0, path, to, block.timestamp ); } function clearStuckBalance() external { payable(marketingFeeReceiver).transfer(address(this).balance); } function setWalletLimit(uint256 amountPercent) external onlyOwner { _maxWalletAmount = (_totalSupply * amountPercent ) / 1000; } function setFee(uint256 _liquidityFee, uint256 _marketingFee) external onlyOwner { liquidityFee = _liquidityFee; marketingFee = _marketingFee; totalFee = liquidityFee + marketingFee; } event AutoLiquify(uint256 amountETH, uint256 amountBOG); }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"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":"_maxWalletAmount","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":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"clearStuckBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingFeeReceiver","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":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_liquidityFee","type":"uint256"},{"internalType":"uint256","name":"_marketingFee","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountPercent","type":"uint256"}],"name":"setWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","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":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052737a250d5630b4cf539739df2c5dacb4c659f2488d600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061dead600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a620000ac919062000a85565b620d9038620000bc919062000ad6565b60035560646004600354620000d2919062000ad6565b620000de919062000b50565b6004556200010e6064620000ff6004600354620007ae60201b90919060201c565b6200083160201b90919060201c565b6005556000600a556004600b55600b54600a546200012d919062000b88565b600c556064600d5573f68f0d3553e601d3f95665fbea6e23a09adb1230600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001601060146101000a81548160ff02191690831515021790555060056103e8600354620001b9919062000b50565b620001c5919062000ad6565b601155348015620001d557600080fd5b5033806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002e9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200030f919062000c2d565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000398573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003be919062000c2d565b306040518363ffffffff1660e01b8152600401620003de92919062000c70565b6020604051808303816000875af1158015620003fe573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000424919062000c2d565b601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600760003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905060016008600073f68f0d3553e601d3f95665fbea6e23a09adb123073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060016009600073f68f0d3553e601d3f95665fbea6e23a09adb123073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160096000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600354600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6003546040516200079f919062000cae565b60405180910390a35062000e21565b6000808303620007c257600090506200082b565b60008284620007d2919062000ad6565b9050828482620007e3919062000b50565b1462000826576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200081d9062000d52565b60405180910390fd5b809150505b92915050565b60006200087b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506200088360201b60201c565b905092915050565b60008083118290620008cd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620008c4919062000dfd565b60405180910390fd5b5060008385620008de919062000b50565b9050809150509392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156200097957808604811115620009515762000950620008eb565b5b6001851615620009615780820291505b808102905062000971856200091a565b945062000931565b94509492505050565b60008262000994576001905062000a67565b81620009a4576000905062000a67565b8160018114620009bd5760028114620009c857620009fe565b600191505062000a67565b60ff841115620009dd57620009dc620008eb565b5b8360020a915084821115620009f757620009f6620008eb565b5b5062000a67565b5060208310610133831016604e8410600b841016171562000a385782820a90508381111562000a325762000a31620008eb565b5b62000a67565b62000a47848484600162000927565b9250905081840481111562000a615762000a60620008eb565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b600062000a928262000a6e565b915062000a9f8362000a78565b925062000ace7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000982565b905092915050565b600062000ae38262000a6e565b915062000af08362000a6e565b925082820262000b008162000a6e565b9150828204841483151762000b1a5762000b19620008eb565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062000b5d8262000a6e565b915062000b6a8362000a6e565b92508262000b7d5762000b7c62000b21565b5b828204905092915050565b600062000b958262000a6e565b915062000ba28362000a6e565b925082820190508082111562000bbd5762000bbc620008eb565b5b92915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000bf58262000bc8565b9050919050565b62000c078162000be8565b811462000c1357600080fd5b50565b60008151905062000c278162000bfc565b92915050565b60006020828403121562000c465762000c4562000bc3565b5b600062000c568482850162000c16565b91505092915050565b62000c6a8162000be8565b82525050565b600060408201905062000c87600083018562000c5f565b62000c96602083018462000c5f565b9392505050565b62000ca88162000a6e565b82525050565b600060208201905062000cc5600083018462000c9d565b92915050565b600082825260208201905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600062000d3a60218362000ccb565b915062000d478262000cdc565b604082019050919050565b6000602082019050818103600083015262000d6d8162000d2b565b9050919050565b600081519050919050565b60005b8381101562000d9f57808201518184015260208101905062000d82565b60008484015250505050565b6000601f19601f8301169050919050565b600062000dc98262000d74565b62000dd5818562000ccb565b935062000de781856020860162000d7f565b62000df28162000dab565b840191505092915050565b6000602082019050818103600083015262000e19818462000dbc565b905092915050565b6127ab8062000e316000396000f3fe6080604052600436106101445760003560e01c80636ddd1713116100b6578063a8aa1b311161006f578063a8aa1b311461045b578063a9059cbb14610486578063dd62ed3e146104c3578063e96fada214610500578063f1d5f5171461052b578063f887ea40146105545761014b565b80636ddd17131461035b57806370a0823114610386578063715018a6146103c35780637d1db4a5146103da578063893d20e81461040557806395d89b41146104305761014b565b80632f54bf6e116101085780632f54bf6e1461024b578063313ce56714610288578063364333f4146102b357806352f7c988146102ca578063571ac8b0146102f35780636c0a24eb146103305761014b565b80630445b6671461015057806306fdde031461017b578063095ea7b3146101a657806318160ddd146101e357806323b872dd1461020e5761014b565b3661014b57005b600080fd5b34801561015c57600080fd5b5061016561057f565b6040516101729190611ccf565b60405180910390f35b34801561018757600080fd5b50610190610585565b60405161019d9190611d7a565b60405180910390f35b3480156101b257600080fd5b506101cd60048036038101906101c89190611e2b565b6105c2565b6040516101da9190611e86565b60405180910390f35b3480156101ef57600080fd5b506101f86106b4565b6040516102059190611ccf565b60405180910390f35b34801561021a57600080fd5b5061023560048036038101906102309190611ea1565b6106be565b6040516102429190611e86565b60405180910390f35b34801561025757600080fd5b50610272600480360381019061026d9190611ef4565b6108be565b60405161027f9190611e86565b60405180910390f35b34801561029457600080fd5b5061029d610917565b6040516102aa9190611f3d565b60405180910390f35b3480156102bf57600080fd5b506102c8610920565b005b3480156102d657600080fd5b506102f160048036038101906102ec9190611f58565b61098b565b005b3480156102ff57600080fd5b5061031a60048036038101906103159190611ef4565b6109fb565b6040516103279190611e86565b60405180910390f35b34801561033c57600080fd5b50610345610a2e565b6040516103529190611ccf565b60405180910390f35b34801561036757600080fd5b50610370610a34565b60405161037d9190611e86565b60405180910390f35b34801561039257600080fd5b506103ad60048036038101906103a89190611ef4565b610a47565b6040516103ba9190611ccf565b60405180910390f35b3480156103cf57600080fd5b506103d8610a90565b005b3480156103e657600080fd5b506103ef610b53565b6040516103fc9190611ccf565b60405180910390f35b34801561041157600080fd5b5061041a610b59565b6040516104279190611fa7565b60405180910390f35b34801561043c57600080fd5b50610445610b82565b6040516104529190611d7a565b60405180910390f35b34801561046757600080fd5b50610470610bbf565b60405161047d9190611fa7565b60405180910390f35b34801561049257600080fd5b506104ad60048036038101906104a89190611e2b565b610be5565b6040516104ba9190611e86565b60405180910390f35b3480156104cf57600080fd5b506104ea60048036038101906104e59190611fc2565b610bfa565b6040516104f79190611ccf565b60405180910390f35b34801561050c57600080fd5b50610515610c81565b6040516105229190611fa7565b60405180910390f35b34801561053757600080fd5b50610552600480360381019061054d9190612002565b610ca7565b005b34801561056057600080fd5b50610569610d13565b604051610576919061208e565b60405180910390f35b60115481565b60606040518060400160405280600981526020017f476c6f77737469636b0000000000000000000000000000000000000000000000815250905090565b600081600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516106a29190611ccf565b60405180910390a36001905092915050565b6000600354905090565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146108aa57610829826040518060400160405280601681526020017f496e73756666696369656e7420416c6c6f77616e636500000000000000000000815250600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d399092919063ffffffff16565b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6108b5848484610d9d565b90509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b60006009905090565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050158015610988573d6000803e3d6000fd5b50565b610994336108be565b6109d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109ca906120f5565b60405180910390fd5b81600a8190555080600b81905550600b54600a546109f19190612144565b600c819055505050565b6000610a27827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6105c2565b9050919050565b60045481565b601060149054906101000a900460ff1681565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a99336108be565b610ad8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610acf906120f5565b60405180910390fd5b60008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861636000604051610b499190611fa7565b60405180910390a1565b60055481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600581526020017f474c49434b000000000000000000000000000000000000000000000000000000815250905090565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610bf2338484610d9d565b905092915050565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610cb0336108be565b610cef576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ce6906120f5565b60405180910390fd5b6103e881600354610d009190612178565b610d0a91906121e9565b60048190555050565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000838311158290610d81576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d789190611d7a565b60405180910390fd5b5060008385610d90919061221a565b9050809150509392505050565b6000601260009054906101000a900460ff1615610dc657610dbf848484611166565b905061115f565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015610e725750600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15610f5b57600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610f1b575060045482600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f189190612144565b11155b610f5a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f51906122c0565b60405180910390fd5b5b610f63611339565b15610f7157610f70611410565b5b610ffa826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d399092919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060006110488561194c565b611052578261105d565b61105c85846119a3565b5b90506110b181600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ae790919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516111519190611ccf565b60405180910390a360019150505b9392505050565b60006111f1826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d399092919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061128682600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ae790919063ffffffff16565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516113269190611ccf565b60405180910390a3600190509392505050565b6000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156113a65750601260009054906101000a900460ff16155b80156113be5750601060149054906101000a900460ff165b801561140b5750601154600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b905090565b6001601260006101000a81548160ff0219169083151502179055506000601154905060006114706002611462600c54611454600a5487611b4590919063ffffffff16565b611bbf90919063ffffffff16565b611bbf90919063ffffffff16565b905060006114878284611c0990919063ffffffff16565b90506000600267ffffffffffffffff8111156114a6576114a56122e0565b5b6040519080825280602002602001820160405280156114d45781602001602082028036833780820191505090505b50905030816000815181106114ec576114eb61230f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611593573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115b79190612353565b816001815181106115cb576115ca61230f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506000479050600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008530426040518663ffffffff1660e01b815260040161166e959493929190612479565b600060405180830381600087803b15801561168857600080fd5b505af115801561169c573d6000803e3d6000fd5b5050505060006116b58247611c0990919063ffffffff16565b905060006116e36116d26002600a54611bbf90919063ffffffff16565b600c54611c0990919063ffffffff16565b90506000611721600261171384611705600a5488611b4590919063ffffffff16565b611bbf90919063ffffffff16565b611bbf90919063ffffffff16565b9050600061174c8361173e600b5487611b4590919063ffffffff16565b611bbf90919063ffffffff16565b90506000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16826175309060405161179a90612504565b600060405180830381858888f193505050503d80600081146117d8576040519150601f19603f3d011682016040523d82523d6000602084013e6117dd565b606091505b5050905080611821576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161181890612565565b60405180910390fd5b600089111561192557600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71984308c60008073f68f0d3553e601d3f95665fbea6e23a09adb1230426040518863ffffffff1660e01b81526004016118a596959493929190612585565b60606040518083038185885af11580156118c3573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906118e891906125fb565b5050507f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b4506838a60405161191c92919061264e565b60405180910390a15b505050505050505050506000601260006101000a81548160ff021916908315150217905550565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16159050919050565b6000806119cf600d546119c1600c5486611b4590919063ffffffff16565b611bbf90919063ffffffff16565b9050611a2381600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ae790919063ffffffff16565b600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611ac39190611ccf565b60405180910390a3611ade8184611c0990919063ffffffff16565b91505092915050565b6000808284611af69190612144565b905083811015611b3b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b32906126c3565b60405180910390fd5b8091505092915050565b6000808303611b575760009050611bb9565b60008284611b659190612178565b9050828482611b7491906121e9565b14611bb4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bab90612755565b60405180910390fd5b809150505b92915050565b6000611c0183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c53565b905092915050565b6000611c4b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d39565b905092915050565b60008083118290611c9a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c919190611d7a565b60405180910390fd5b5060008385611ca991906121e9565b9050809150509392505050565b6000819050919050565b611cc981611cb6565b82525050565b6000602082019050611ce46000830184611cc0565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611d24578082015181840152602081019050611d09565b60008484015250505050565b6000601f19601f8301169050919050565b6000611d4c82611cea565b611d568185611cf5565b9350611d66818560208601611d06565b611d6f81611d30565b840191505092915050565b60006020820190508181036000830152611d948184611d41565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611dcc82611da1565b9050919050565b611ddc81611dc1565b8114611de757600080fd5b50565b600081359050611df981611dd3565b92915050565b611e0881611cb6565b8114611e1357600080fd5b50565b600081359050611e2581611dff565b92915050565b60008060408385031215611e4257611e41611d9c565b5b6000611e5085828601611dea565b9250506020611e6185828601611e16565b9150509250929050565b60008115159050919050565b611e8081611e6b565b82525050565b6000602082019050611e9b6000830184611e77565b92915050565b600080600060608486031215611eba57611eb9611d9c565b5b6000611ec886828701611dea565b9350506020611ed986828701611dea565b9250506040611eea86828701611e16565b9150509250925092565b600060208284031215611f0a57611f09611d9c565b5b6000611f1884828501611dea565b91505092915050565b600060ff82169050919050565b611f3781611f21565b82525050565b6000602082019050611f526000830184611f2e565b92915050565b60008060408385031215611f6f57611f6e611d9c565b5b6000611f7d85828601611e16565b9250506020611f8e85828601611e16565b9150509250929050565b611fa181611dc1565b82525050565b6000602082019050611fbc6000830184611f98565b92915050565b60008060408385031215611fd957611fd8611d9c565b5b6000611fe785828601611dea565b9250506020611ff885828601611dea565b9150509250929050565b60006020828403121561201857612017611d9c565b5b600061202684828501611e16565b91505092915050565b6000819050919050565b600061205461204f61204a84611da1565b61202f565b611da1565b9050919050565b600061206682612039565b9050919050565b60006120788261205b565b9050919050565b6120888161206d565b82525050565b60006020820190506120a3600083018461207f565b92915050565b7f214f574e45520000000000000000000000000000000000000000000000000000600082015250565b60006120df600683611cf5565b91506120ea826120a9565b602082019050919050565b6000602082019050818103600083015261210e816120d2565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061214f82611cb6565b915061215a83611cb6565b925082820190508082111561217257612171612115565b5b92915050565b600061218382611cb6565b915061218e83611cb6565b925082820261219c81611cb6565b915082820484148315176121b3576121b2612115565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006121f482611cb6565b91506121ff83611cb6565b92508261220f5761220e6121ba565b5b828204905092915050565b600061222582611cb6565b915061223083611cb6565b925082820390508181111561224857612247612115565b5b92915050565b7f5472616e7366657220616d6f756e74206578636565647320746865206261672060008201527f73697a652e000000000000000000000000000000000000000000000000000000602082015250565b60006122aa602583611cf5565b91506122b58261224e565b604082019050919050565b600060208201905081810360008301526122d98161229d565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008151905061234d81611dd3565b92915050565b60006020828403121561236957612368611d9c565b5b60006123778482850161233e565b91505092915050565b6000819050919050565b60006123a56123a061239b84612380565b61202f565b611cb6565b9050919050565b6123b58161238a565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6123f081611dc1565b82525050565b600061240283836123e7565b60208301905092915050565b6000602082019050919050565b6000612426826123bb565b61243081856123c6565b935061243b836123d7565b8060005b8381101561246c57815161245388826123f6565b975061245e8361240e565b92505060018101905061243f565b5085935050505092915050565b600060a08201905061248e6000830188611cc0565b61249b60208301876123ac565b81810360408301526124ad818661241b565b90506124bc6060830185611f98565b6124c96080830184611cc0565b9695505050505050565b600081905092915050565b50565b60006124ee6000836124d3565b91506124f9826124de565b600082019050919050565b600061250f826124e1565b9150819050919050565b7f72656365697665722072656a656374656420455448207472616e736665720000600082015250565b600061254f601e83611cf5565b915061255a82612519565b602082019050919050565b6000602082019050818103600083015261257e81612542565b9050919050565b600060c08201905061259a6000830189611f98565b6125a76020830188611cc0565b6125b460408301876123ac565b6125c160608301866123ac565b6125ce6080830185611f98565b6125db60a0830184611cc0565b979650505050505050565b6000815190506125f581611dff565b92915050565b60008060006060848603121561261457612613611d9c565b5b6000612622868287016125e6565b9350506020612633868287016125e6565b9250506040612644868287016125e6565b9150509250925092565b60006040820190506126636000830185611cc0565b6126706020830184611cc0565b9392505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006126ad601b83611cf5565b91506126b882612677565b602082019050919050565b600060208201905081810360008301526126dc816126a0565b9050919050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061273f602183611cf5565b915061274a826126e3565b604082019050919050565b6000602082019050818103600083015261276e81612732565b905091905056fea26469706673582212202f9bf4188210f2567f472e35b5d9ae46a8f389d44509a0f75be079b5d7d165f664736f6c63430008130033
Deployed Bytecode
0x6080604052600436106101445760003560e01c80636ddd1713116100b6578063a8aa1b311161006f578063a8aa1b311461045b578063a9059cbb14610486578063dd62ed3e146104c3578063e96fada214610500578063f1d5f5171461052b578063f887ea40146105545761014b565b80636ddd17131461035b57806370a0823114610386578063715018a6146103c35780637d1db4a5146103da578063893d20e81461040557806395d89b41146104305761014b565b80632f54bf6e116101085780632f54bf6e1461024b578063313ce56714610288578063364333f4146102b357806352f7c988146102ca578063571ac8b0146102f35780636c0a24eb146103305761014b565b80630445b6671461015057806306fdde031461017b578063095ea7b3146101a657806318160ddd146101e357806323b872dd1461020e5761014b565b3661014b57005b600080fd5b34801561015c57600080fd5b5061016561057f565b6040516101729190611ccf565b60405180910390f35b34801561018757600080fd5b50610190610585565b60405161019d9190611d7a565b60405180910390f35b3480156101b257600080fd5b506101cd60048036038101906101c89190611e2b565b6105c2565b6040516101da9190611e86565b60405180910390f35b3480156101ef57600080fd5b506101f86106b4565b6040516102059190611ccf565b60405180910390f35b34801561021a57600080fd5b5061023560048036038101906102309190611ea1565b6106be565b6040516102429190611e86565b60405180910390f35b34801561025757600080fd5b50610272600480360381019061026d9190611ef4565b6108be565b60405161027f9190611e86565b60405180910390f35b34801561029457600080fd5b5061029d610917565b6040516102aa9190611f3d565b60405180910390f35b3480156102bf57600080fd5b506102c8610920565b005b3480156102d657600080fd5b506102f160048036038101906102ec9190611f58565b61098b565b005b3480156102ff57600080fd5b5061031a60048036038101906103159190611ef4565b6109fb565b6040516103279190611e86565b60405180910390f35b34801561033c57600080fd5b50610345610a2e565b6040516103529190611ccf565b60405180910390f35b34801561036757600080fd5b50610370610a34565b60405161037d9190611e86565b60405180910390f35b34801561039257600080fd5b506103ad60048036038101906103a89190611ef4565b610a47565b6040516103ba9190611ccf565b60405180910390f35b3480156103cf57600080fd5b506103d8610a90565b005b3480156103e657600080fd5b506103ef610b53565b6040516103fc9190611ccf565b60405180910390f35b34801561041157600080fd5b5061041a610b59565b6040516104279190611fa7565b60405180910390f35b34801561043c57600080fd5b50610445610b82565b6040516104529190611d7a565b60405180910390f35b34801561046757600080fd5b50610470610bbf565b60405161047d9190611fa7565b60405180910390f35b34801561049257600080fd5b506104ad60048036038101906104a89190611e2b565b610be5565b6040516104ba9190611e86565b60405180910390f35b3480156104cf57600080fd5b506104ea60048036038101906104e59190611fc2565b610bfa565b6040516104f79190611ccf565b60405180910390f35b34801561050c57600080fd5b50610515610c81565b6040516105229190611fa7565b60405180910390f35b34801561053757600080fd5b50610552600480360381019061054d9190612002565b610ca7565b005b34801561056057600080fd5b50610569610d13565b604051610576919061208e565b60405180910390f35b60115481565b60606040518060400160405280600981526020017f476c6f77737469636b0000000000000000000000000000000000000000000000815250905090565b600081600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516106a29190611ccf565b60405180910390a36001905092915050565b6000600354905090565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146108aa57610829826040518060400160405280601681526020017f496e73756666696369656e7420416c6c6f77616e636500000000000000000000815250600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d399092919063ffffffff16565b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6108b5848484610d9d565b90509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b60006009905090565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050158015610988573d6000803e3d6000fd5b50565b610994336108be565b6109d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109ca906120f5565b60405180910390fd5b81600a8190555080600b81905550600b54600a546109f19190612144565b600c819055505050565b6000610a27827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6105c2565b9050919050565b60045481565b601060149054906101000a900460ff1681565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a99336108be565b610ad8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610acf906120f5565b60405180910390fd5b60008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861636000604051610b499190611fa7565b60405180910390a1565b60055481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600581526020017f474c49434b000000000000000000000000000000000000000000000000000000815250905090565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610bf2338484610d9d565b905092915050565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610cb0336108be565b610cef576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ce6906120f5565b60405180910390fd5b6103e881600354610d009190612178565b610d0a91906121e9565b60048190555050565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000838311158290610d81576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d789190611d7a565b60405180910390fd5b5060008385610d90919061221a565b9050809150509392505050565b6000601260009054906101000a900460ff1615610dc657610dbf848484611166565b905061115f565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015610e725750600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15610f5b57600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610f1b575060045482600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f189190612144565b11155b610f5a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f51906122c0565b60405180910390fd5b5b610f63611339565b15610f7157610f70611410565b5b610ffa826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d399092919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060006110488561194c565b611052578261105d565b61105c85846119a3565b5b90506110b181600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ae790919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516111519190611ccf565b60405180910390a360019150505b9392505050565b60006111f1826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d399092919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061128682600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ae790919063ffffffff16565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516113269190611ccf565b60405180910390a3600190509392505050565b6000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156113a65750601260009054906101000a900460ff16155b80156113be5750601060149054906101000a900460ff165b801561140b5750601154600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b905090565b6001601260006101000a81548160ff0219169083151502179055506000601154905060006114706002611462600c54611454600a5487611b4590919063ffffffff16565b611bbf90919063ffffffff16565b611bbf90919063ffffffff16565b905060006114878284611c0990919063ffffffff16565b90506000600267ffffffffffffffff8111156114a6576114a56122e0565b5b6040519080825280602002602001820160405280156114d45781602001602082028036833780820191505090505b50905030816000815181106114ec576114eb61230f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611593573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115b79190612353565b816001815181106115cb576115ca61230f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506000479050600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008530426040518663ffffffff1660e01b815260040161166e959493929190612479565b600060405180830381600087803b15801561168857600080fd5b505af115801561169c573d6000803e3d6000fd5b5050505060006116b58247611c0990919063ffffffff16565b905060006116e36116d26002600a54611bbf90919063ffffffff16565b600c54611c0990919063ffffffff16565b90506000611721600261171384611705600a5488611b4590919063ffffffff16565b611bbf90919063ffffffff16565b611bbf90919063ffffffff16565b9050600061174c8361173e600b5487611b4590919063ffffffff16565b611bbf90919063ffffffff16565b90506000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16826175309060405161179a90612504565b600060405180830381858888f193505050503d80600081146117d8576040519150601f19603f3d011682016040523d82523d6000602084013e6117dd565b606091505b5050905080611821576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161181890612565565b60405180910390fd5b600089111561192557600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71984308c60008073f68f0d3553e601d3f95665fbea6e23a09adb1230426040518863ffffffff1660e01b81526004016118a596959493929190612585565b60606040518083038185885af11580156118c3573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906118e891906125fb565b5050507f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b4506838a60405161191c92919061264e565b60405180910390a15b505050505050505050506000601260006101000a81548160ff021916908315150217905550565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16159050919050565b6000806119cf600d546119c1600c5486611b4590919063ffffffff16565b611bbf90919063ffffffff16565b9050611a2381600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ae790919063ffffffff16565b600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611ac39190611ccf565b60405180910390a3611ade8184611c0990919063ffffffff16565b91505092915050565b6000808284611af69190612144565b905083811015611b3b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b32906126c3565b60405180910390fd5b8091505092915050565b6000808303611b575760009050611bb9565b60008284611b659190612178565b9050828482611b7491906121e9565b14611bb4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bab90612755565b60405180910390fd5b809150505b92915050565b6000611c0183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c53565b905092915050565b6000611c4b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d39565b905092915050565b60008083118290611c9a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c919190611d7a565b60405180910390fd5b5060008385611ca991906121e9565b9050809150509392505050565b6000819050919050565b611cc981611cb6565b82525050565b6000602082019050611ce46000830184611cc0565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611d24578082015181840152602081019050611d09565b60008484015250505050565b6000601f19601f8301169050919050565b6000611d4c82611cea565b611d568185611cf5565b9350611d66818560208601611d06565b611d6f81611d30565b840191505092915050565b60006020820190508181036000830152611d948184611d41565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611dcc82611da1565b9050919050565b611ddc81611dc1565b8114611de757600080fd5b50565b600081359050611df981611dd3565b92915050565b611e0881611cb6565b8114611e1357600080fd5b50565b600081359050611e2581611dff565b92915050565b60008060408385031215611e4257611e41611d9c565b5b6000611e5085828601611dea565b9250506020611e6185828601611e16565b9150509250929050565b60008115159050919050565b611e8081611e6b565b82525050565b6000602082019050611e9b6000830184611e77565b92915050565b600080600060608486031215611eba57611eb9611d9c565b5b6000611ec886828701611dea565b9350506020611ed986828701611dea565b9250506040611eea86828701611e16565b9150509250925092565b600060208284031215611f0a57611f09611d9c565b5b6000611f1884828501611dea565b91505092915050565b600060ff82169050919050565b611f3781611f21565b82525050565b6000602082019050611f526000830184611f2e565b92915050565b60008060408385031215611f6f57611f6e611d9c565b5b6000611f7d85828601611e16565b9250506020611f8e85828601611e16565b9150509250929050565b611fa181611dc1565b82525050565b6000602082019050611fbc6000830184611f98565b92915050565b60008060408385031215611fd957611fd8611d9c565b5b6000611fe785828601611dea565b9250506020611ff885828601611dea565b9150509250929050565b60006020828403121561201857612017611d9c565b5b600061202684828501611e16565b91505092915050565b6000819050919050565b600061205461204f61204a84611da1565b61202f565b611da1565b9050919050565b600061206682612039565b9050919050565b60006120788261205b565b9050919050565b6120888161206d565b82525050565b60006020820190506120a3600083018461207f565b92915050565b7f214f574e45520000000000000000000000000000000000000000000000000000600082015250565b60006120df600683611cf5565b91506120ea826120a9565b602082019050919050565b6000602082019050818103600083015261210e816120d2565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061214f82611cb6565b915061215a83611cb6565b925082820190508082111561217257612171612115565b5b92915050565b600061218382611cb6565b915061218e83611cb6565b925082820261219c81611cb6565b915082820484148315176121b3576121b2612115565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006121f482611cb6565b91506121ff83611cb6565b92508261220f5761220e6121ba565b5b828204905092915050565b600061222582611cb6565b915061223083611cb6565b925082820390508181111561224857612247612115565b5b92915050565b7f5472616e7366657220616d6f756e74206578636565647320746865206261672060008201527f73697a652e000000000000000000000000000000000000000000000000000000602082015250565b60006122aa602583611cf5565b91506122b58261224e565b604082019050919050565b600060208201905081810360008301526122d98161229d565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008151905061234d81611dd3565b92915050565b60006020828403121561236957612368611d9c565b5b60006123778482850161233e565b91505092915050565b6000819050919050565b60006123a56123a061239b84612380565b61202f565b611cb6565b9050919050565b6123b58161238a565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6123f081611dc1565b82525050565b600061240283836123e7565b60208301905092915050565b6000602082019050919050565b6000612426826123bb565b61243081856123c6565b935061243b836123d7565b8060005b8381101561246c57815161245388826123f6565b975061245e8361240e565b92505060018101905061243f565b5085935050505092915050565b600060a08201905061248e6000830188611cc0565b61249b60208301876123ac565b81810360408301526124ad818661241b565b90506124bc6060830185611f98565b6124c96080830184611cc0565b9695505050505050565b600081905092915050565b50565b60006124ee6000836124d3565b91506124f9826124de565b600082019050919050565b600061250f826124e1565b9150819050919050565b7f72656365697665722072656a656374656420455448207472616e736665720000600082015250565b600061254f601e83611cf5565b915061255a82612519565b602082019050919050565b6000602082019050818103600083015261257e81612542565b9050919050565b600060c08201905061259a6000830189611f98565b6125a76020830188611cc0565b6125b460408301876123ac565b6125c160608301866123ac565b6125ce6080830185611f98565b6125db60a0830184611cc0565b979650505050505050565b6000815190506125f581611dff565b92915050565b60008060006060848603121561261457612613611d9c565b5b6000612622868287016125e6565b9350506020612633868287016125e6565b9250506040612644868287016125e6565b9150509250925092565b60006040820190506126636000830185611cc0565b6126706020830184611cc0565b9392505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006126ad601b83611cf5565b91506126b882612677565b602082019050919050565b600060208201905081810360008301526126dc816126a0565b9050919050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061273f602183611cf5565b915061274a826126e3565b604082019050919050565b6000602082019050818103600083015261276e81612732565b905091905056fea26469706673582212202f9bf4188210f2567f472e35b5d9ae46a8f389d44509a0f75be079b5d7d165f664736f6c63430008130033
Deployed Bytecode Sourcemap
7101:7808:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8171:54;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9256:80;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9678:216;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8986:88;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10196:370;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5339:103;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9080:80;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14338:118;;;;;;;;;;;;;:::i;:::-;;14614:220;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9902:122;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7492:58;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8134:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9426:105;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5448:131;;;;;;;;;;;;;:::i;:::-;;7557:58;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9342:78;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9166:84;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8106:19;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10032:156;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9537:133;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7986:80;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14464:142;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8075:24;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8171:54;;;;:::o;9256:80::-;9304:13;9328:5;;;;;;;;;;;;;;;;;9321:12;;9256:80;:::o;9678:216::-;9753:4;9805:6;9770:11;:23;9782:10;9770:23;;;;;;;;;;;;;;;:32;9794:7;9770:32;;;;;;;;;;;;;;;:41;;;;9848:7;9827:37;;9836:10;9827:37;;;9857:6;9827:37;;;;;;:::i;:::-;;;;;;;;9882:4;9875:11;;9678:216;;;;:::o;8986:88::-;9041:7;9059:12;;9052:19;;8986:88;:::o;10196:370::-;10296:4;10351:17;10316:11;:19;10328:6;10316:19;;;;;;;;;;;;;;;:31;10336:10;10316:31;;;;;;;;;;;;;;;;:52;10313:186;;10418:69;10454:6;10418:69;;;;;;;;;;;;;;;;;:11;:19;10430:6;10418:19;;;;;;;;;;;;;;;:31;10438:10;10418:31;;;;;;;;;;;;;;;;:35;;:69;;;;;:::i;:::-;10384:11;:19;10396:6;10384:19;;;;;;;;;;;;;;;:31;10404:10;10384:31;;;;;;;;;;;;;;;:103;;;;10313:186;10518:40;10532:6;10540:9;10551:6;10518:13;:40::i;:::-;10511:47;;10196:370;;;;;:::o;5339:103::-;5394:4;5429:5;;;;;;;;;;;5418:16;;:7;:16;;;5411:23;;5339:103;;;:::o;9080:80::-;9132:5;7425:1;9141:16;;9080:80;:::o;14338:118::-;14395:20;;;;;;;;;;;14387:38;;:61;14426:21;14387:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14338:118::o;14614:220::-;5292:19;5300:10;5292:7;:19::i;:::-;5284:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;14722:13:::1;14707:12;:28;;;;14763:13;14748:12;:28;;;;14814:12;;14799;;:27;;;;:::i;:::-;14788:8;:38;;;;14614:220:::0;;:::o;9902:122::-;9957:4;9981:35;9989:7;9998:17;9981:7;:35::i;:::-;9974:42;;9902:122;;;:::o;7492:58::-;;;;:::o;8134:30::-;;;;;;;;;;;;;:::o;9426:105::-;9492:7;9510:9;:18;9520:7;9510:18;;;;;;;;;;;;;;;;9503:25;;9426:105;;;:::o;5448:131::-;5292:19;5300:10;5292:7;:19::i;:::-;5284:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;5521:1:::1;5505:5:::0;::::1;:18;;;;;;;;;;;;;;;;;;5539:32;5568:1;5539:32;;;;;;:::i;:::-;;;;;;;;5448:131::o:0;7557:58::-;;;;:::o;9342:78::-;9394:7;9412:5;;;;;;;;;;;9405:12;;9342:78;:::o;9166:84::-;9216:13;9240:7;;;;;;;;;;;;;;;;;9233:14;;9166:84;:::o;8106:19::-;;;;;;;;;;;;;:::o;10032:156::-;10112:4;10136:44;10150:10;10162:9;10173:6;10136:13;:44::i;:::-;10129:51;;10032:156;;;;:::o;9537:133::-;9621:7;9639:11;:19;9651:6;9639:19;;;;;;;;;;;;;;;:28;9659:7;9639:28;;;;;;;;;;;;;;;;9632:35;;9537:133;;;;:::o;7986:80::-;;;;;;;;;;;;;:::o;14464:142::-;5292:19;5300:10;5292:7;:19::i;:::-;5284:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;14594:4:::1;14576:13;14561:12;;:28;;;;:::i;:::-;14560:38;;;;:::i;:::-;14541:16;:57;;;;14464:142:::0;:::o;8075:24::-;;;;;;;;;;;;;:::o;3428:190::-;3514:7;3547:1;3542;:6;;3550:12;3534:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;3574:9;3590:1;3586;:5;;;;:::i;:::-;3574:17;;3609:1;3602:8;;;3428:190;;;;;:::o;10574:792::-;10666:4;10686:6;;;;;;;;;;;10683:63;;;10702:41;10717:6;10725:9;10736:6;10702:14;:41::i;:::-;10695:48;;;;10683:63;10783:4;;;;;;;;;;;10770:17;;:9;:17;;;;:38;;;;;10804:4;;;;;;;;;;;10791:17;;:9;:17;;;;10770:38;10766:200;;;10833:15;:26;10849:9;10833:26;;;;;;;;;;;;;;;;;;;;;;;;;:79;;;;10896:16;;10886:6;10863:9;:20;10873:9;10863:20;;;;;;;;;;;;;;;;:29;;;;:::i;:::-;:49;;10833:79;10825:129;;;;;;;;;;;;:::i;:::-;;;;;;;;;10766:200;10989:16;:14;:16::i;:::-;10986:35;;;11008:10;:8;:10::i;:::-;10986:35;11054:53;11076:6;11054:53;;;;;;;;;;;;;;;;;:9;:17;11064:6;11054:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;11034:9;:17;11044:6;11034:17;;;;;;;;;;;;;;;:73;;;;11120:22;11145:21;11159:6;11145:13;:21::i;:::-;:56;;11195:6;11145:56;;;11169:23;11177:6;11185;11169:7;:23::i;:::-;11145:56;11120:81;;11235:40;11260:14;11235:9;:20;11245:9;11235:20;;;;;;;;;;;;;;;;:24;;:40;;;;:::i;:::-;11212:9;:20;11222:9;11212:20;;;;;;;;;;;;;;;:63;;;;11310:9;11293:43;;11302:6;11293:43;;;11321:14;11293:43;;;;;;:::i;:::-;;;;;;;;11354:4;11347:11;;;10574:792;;;;;;:::o;11378:330::-;11471:4;11508:53;11530:6;11508:53;;;;;;;;;;;;;;;;;:9;:17;11518:6;11508:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;11488:9;:17;11498:6;11488:17;;;;;;;;;;;;;;;:73;;;;11595:32;11620:6;11595:9;:20;11605:9;11595:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;11572:9;:20;11582:9;11572:20;;;;;;;;;;;;;;;:55;;;;11660:9;11643:35;;11652:6;11643:35;;;11671:6;11643:35;;;;;;:::i;:::-;;;;;;;;11696:4;11689:11;;11378:330;;;;;:::o;12175:197::-;12224:4;12262;;;;;;;;;;;12248:18;;:10;:18;;;;:38;;;;;12280:6;;;;;;;;;;;12279:7;12248:38;:62;;;;;12299:11;;;;;;;;;;;12248:62;:116;;;;;12351:13;;12323:9;:24;12341:4;12323:24;;;;;;;;;;;;;;;;:41;;12248:116;12241:123;;12175:197;:::o;12380:1572::-;8289:4;8280:6;;:13;;;;;;;;;;;;;;;;;;12429:28:::1;12460:13;;12429:44;;12484:23;12510:59;12567:1;12510:52;12553:8;;12510:38;12535:12;;12510:20;:24;;:38;;;;:::i;:::-;:42;;:52;;;;:::i;:::-;:56;;:59;;;;:::i;:::-;12484:85;;12580:20;12603:41;12628:15;12603:20;:24;;:41;;;;:::i;:::-;12580:64;;12657:21;12695:1;12681:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12657:40;;12726:4;12708;12713:1;12708:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;12752:6;;;;;;;;;;;:11;;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12742:4;12747:1;12742:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;12778:21;12802;12778:45;;12836:6;;;;;;;;;;;:57;;;12908:12;12935:1;12951:4;12978;12998:15;12836:188;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;13035:17;13055:40;13081:13;13055:21;:25;;:40;;;;:::i;:::-;13035:60;;13106:19;13128:33;13141:19;13158:1;13141:12;;:16;;:19;;;;:::i;:::-;13128:8;;:12;;:33;;;;:::i;:::-;13106:55;;13172:26;13201:51;13250:1;13201:44;13233:11;13201:27;13215:12;;13201:9;:13;;:27;;;;:::i;:::-;:31;;:44;;;;:::i;:::-;:48;;:51;;;;:::i;:::-;13172:80;;13263:26;13292:44;13324:11;13292:27;13306:12;;13292:9;:13;;:27;;;;:::i;:::-;:31;;:44;;;;:::i;:::-;13263:73;;13352:21;13410:20;;;;;;;;;;;13402:34;;13444:18;13469:5;13402:77;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13351:128;;;13498:16;13490:59;;;;;;;;;;;;:::i;:::-;;;;;;;;;13583:1;13565:15;:19;13562:383;;;13600:6;;;;;;;;;;;:22;;;13630:18;13676:4;13700:15;13734:1;13754::::0;13774:42:::1;13835:15;13600:265;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;13885:48;13897:18;13917:15;13885:48;;;;;;;:::i;:::-;;;;;;;;13562:383;12418:1534;;;;;;;;;;8307:5:::0;8298:6;;:14;;;;;;;;;;;;;;;;;;12380:1572::o;11716:114::-;11778:4;11803:11;:19;11815:6;11803:19;;;;;;;;;;;;;;;;;;;;;;;;;11802:20;11795:27;;11716:114;;;:::o;11838:329::-;11905:7;11925:17;11945:40;11970:14;;11945:20;11956:8;;11945:6;:10;;:20;;;;:::i;:::-;:24;;:40;;;;:::i;:::-;11925:60;;12023:39;12052:9;12023;:24;12041:4;12023:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;11996:9;:24;12014:4;11996:24;;;;;;;;;;;;;;;:66;;;;12103:4;12078:42;;12087:6;12078:42;;;12110:9;12078:42;;;;;;:::i;:::-;;;;;;;;12138:21;12149:9;12138:6;:10;;:21;;;;:::i;:::-;12131:28;;;11838:329;;;;:::o;3101:179::-;3159:7;3179:9;3195:1;3191;:5;;;;:::i;:::-;3179:17;;3220:1;3215;:6;;3207:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;3271:1;3264:8;;;3101:179;;;;:::o;3624:246::-;3682:7;3711:1;3706;:6;3702:47;;3736:1;3729:8;;;;3702:47;3759:9;3775:1;3771;:5;;;;:::i;:::-;3759:17;;3804:1;3799;3795;:5;;;;:::i;:::-;:10;3787:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;3861:1;3854:8;;;3624:246;;;;;:::o;3876:132::-;3934:7;3961:39;3965:1;3968;3961:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;3954:46;;3876:132;;;;:::o;3286:136::-;3344:7;3371:43;3375:1;3378;3371:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;3364:50;;3286:136;;;;:::o;4014:189::-;4100:7;4132:1;4128;:5;4135:12;4120:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;4159:9;4175:1;4171;:5;;;;:::i;:::-;4159:17;;4194:1;4187:8;;;4014:189;;;;;:::o;7:77:1:-;44:7;73:5;62:16;;7:77;;;:::o;90:118::-;177:24;195:5;177:24;:::i;:::-;172:3;165:37;90:118;;:::o;214:222::-;307:4;345:2;334:9;330:18;322:26;;358:71;426:1;415:9;411:17;402:6;358:71;:::i;:::-;214:222;;;;:::o;442:99::-;494:6;528:5;522:12;512:22;;442:99;;;:::o;547:169::-;631:11;665:6;660:3;653:19;705:4;700:3;696:14;681:29;;547:169;;;;:::o;722:246::-;803:1;813:113;827:6;824:1;821:13;813:113;;;912:1;907:3;903:11;897:18;893:1;888:3;884:11;877:39;849:2;846:1;842:10;837:15;;813:113;;;960:1;951:6;946:3;942:16;935:27;784:184;722:246;;;:::o;974:102::-;1015:6;1066:2;1062:7;1057:2;1050:5;1046:14;1042:28;1032:38;;974:102;;;:::o;1082:377::-;1170:3;1198:39;1231:5;1198:39;:::i;:::-;1253:71;1317:6;1312:3;1253:71;:::i;:::-;1246:78;;1333:65;1391:6;1386:3;1379:4;1372:5;1368:16;1333:65;:::i;:::-;1423:29;1445:6;1423:29;:::i;:::-;1418:3;1414:39;1407:46;;1174:285;1082:377;;;;:::o;1465:313::-;1578:4;1616:2;1605:9;1601:18;1593:26;;1665:9;1659:4;1655:20;1651:1;1640:9;1636:17;1629:47;1693:78;1766:4;1757:6;1693:78;:::i;:::-;1685:86;;1465:313;;;;:::o;1865:117::-;1974:1;1971;1964:12;2111:126;2148:7;2188:42;2181:5;2177:54;2166:65;;2111:126;;;:::o;2243:96::-;2280:7;2309:24;2327:5;2309:24;:::i;:::-;2298:35;;2243:96;;;:::o;2345:122::-;2418:24;2436:5;2418:24;:::i;:::-;2411:5;2408:35;2398:63;;2457:1;2454;2447:12;2398:63;2345:122;:::o;2473:139::-;2519:5;2557:6;2544:20;2535:29;;2573:33;2600:5;2573:33;:::i;:::-;2473:139;;;;:::o;2618:122::-;2691:24;2709:5;2691:24;:::i;:::-;2684:5;2681:35;2671:63;;2730:1;2727;2720:12;2671:63;2618:122;:::o;2746:139::-;2792:5;2830:6;2817:20;2808:29;;2846:33;2873:5;2846:33;:::i;:::-;2746:139;;;;:::o;2891:474::-;2959:6;2967;3016:2;3004:9;2995:7;2991:23;2987:32;2984:119;;;3022:79;;:::i;:::-;2984:119;3142:1;3167:53;3212:7;3203:6;3192:9;3188:22;3167:53;:::i;:::-;3157:63;;3113:117;3269:2;3295:53;3340:7;3331:6;3320:9;3316:22;3295:53;:::i;:::-;3285:63;;3240:118;2891:474;;;;;:::o;3371:90::-;3405:7;3448:5;3441:13;3434:21;3423:32;;3371:90;;;:::o;3467:109::-;3548:21;3563:5;3548:21;:::i;:::-;3543:3;3536:34;3467:109;;:::o;3582:210::-;3669:4;3707:2;3696:9;3692:18;3684:26;;3720:65;3782:1;3771:9;3767:17;3758:6;3720:65;:::i;:::-;3582:210;;;;:::o;3798:619::-;3875:6;3883;3891;3940:2;3928:9;3919:7;3915:23;3911:32;3908:119;;;3946:79;;:::i;:::-;3908:119;4066:1;4091:53;4136:7;4127:6;4116:9;4112:22;4091:53;:::i;:::-;4081:63;;4037:117;4193:2;4219:53;4264:7;4255:6;4244:9;4240:22;4219:53;:::i;:::-;4209:63;;4164:118;4321:2;4347:53;4392:7;4383:6;4372:9;4368:22;4347:53;:::i;:::-;4337:63;;4292:118;3798:619;;;;;:::o;4423:329::-;4482:6;4531:2;4519:9;4510:7;4506:23;4502:32;4499:119;;;4537:79;;:::i;:::-;4499:119;4657:1;4682:53;4727:7;4718:6;4707:9;4703:22;4682:53;:::i;:::-;4672:63;;4628:117;4423:329;;;;:::o;4758:86::-;4793:7;4833:4;4826:5;4822:16;4811:27;;4758:86;;;:::o;4850:112::-;4933:22;4949:5;4933:22;:::i;:::-;4928:3;4921:35;4850:112;;:::o;4968:214::-;5057:4;5095:2;5084:9;5080:18;5072:26;;5108:67;5172:1;5161:9;5157:17;5148:6;5108:67;:::i;:::-;4968:214;;;;:::o;5188:474::-;5256:6;5264;5313:2;5301:9;5292:7;5288:23;5284:32;5281:119;;;5319:79;;:::i;:::-;5281:119;5439:1;5464:53;5509:7;5500:6;5489:9;5485:22;5464:53;:::i;:::-;5454:63;;5410:117;5566:2;5592:53;5637:7;5628:6;5617:9;5613:22;5592:53;:::i;:::-;5582:63;;5537:118;5188:474;;;;;:::o;5668:118::-;5755:24;5773:5;5755:24;:::i;:::-;5750:3;5743:37;5668:118;;:::o;5792:222::-;5885:4;5923:2;5912:9;5908:18;5900:26;;5936:71;6004:1;5993:9;5989:17;5980:6;5936:71;:::i;:::-;5792:222;;;;:::o;6020:474::-;6088:6;6096;6145:2;6133:9;6124:7;6120:23;6116:32;6113:119;;;6151:79;;:::i;:::-;6113:119;6271:1;6296:53;6341:7;6332:6;6321:9;6317:22;6296:53;:::i;:::-;6286:63;;6242:117;6398:2;6424:53;6469:7;6460:6;6449:9;6445:22;6424:53;:::i;:::-;6414:63;;6369:118;6020:474;;;;;:::o;6500:329::-;6559:6;6608:2;6596:9;6587:7;6583:23;6579:32;6576:119;;;6614:79;;:::i;:::-;6576:119;6734:1;6759:53;6804:7;6795:6;6784:9;6780:22;6759:53;:::i;:::-;6749:63;;6705:117;6500:329;;;;:::o;6835:60::-;6863:3;6884:5;6877:12;;6835:60;;;:::o;6901:142::-;6951:9;6984:53;7002:34;7011:24;7029:5;7011:24;:::i;:::-;7002:34;:::i;:::-;6984:53;:::i;:::-;6971:66;;6901:142;;;:::o;7049:126::-;7099:9;7132:37;7163:5;7132:37;:::i;:::-;7119:50;;7049:126;;;:::o;7181:144::-;7249:9;7282:37;7313:5;7282:37;:::i;:::-;7269:50;;7181:144;;;:::o;7331:167::-;7436:55;7485:5;7436:55;:::i;:::-;7431:3;7424:68;7331:167;;:::o;7504:258::-;7615:4;7653:2;7642:9;7638:18;7630:26;;7666:89;7752:1;7741:9;7737:17;7728:6;7666:89;:::i;:::-;7504:258;;;;:::o;7768:156::-;7908:8;7904:1;7896:6;7892:14;7885:32;7768:156;:::o;7930:365::-;8072:3;8093:66;8157:1;8152:3;8093:66;:::i;:::-;8086:73;;8168:93;8257:3;8168:93;:::i;:::-;8286:2;8281:3;8277:12;8270:19;;7930:365;;;:::o;8301:419::-;8467:4;8505:2;8494:9;8490:18;8482:26;;8554:9;8548:4;8544:20;8540:1;8529:9;8525:17;8518:47;8582:131;8708:4;8582:131;:::i;:::-;8574:139;;8301:419;;;:::o;8726:180::-;8774:77;8771:1;8764:88;8871:4;8868:1;8861:15;8895:4;8892:1;8885:15;8912:191;8952:3;8971:20;8989:1;8971:20;:::i;:::-;8966:25;;9005:20;9023:1;9005:20;:::i;:::-;9000:25;;9048:1;9045;9041:9;9034:16;;9069:3;9066:1;9063:10;9060:36;;;9076:18;;:::i;:::-;9060:36;8912:191;;;;:::o;9109:410::-;9149:7;9172:20;9190:1;9172:20;:::i;:::-;9167:25;;9206:20;9224:1;9206:20;:::i;:::-;9201:25;;9261:1;9258;9254:9;9283:30;9301:11;9283:30;:::i;:::-;9272:41;;9462:1;9453:7;9449:15;9446:1;9443:22;9423:1;9416:9;9396:83;9373:139;;9492:18;;:::i;:::-;9373:139;9157:362;9109:410;;;;:::o;9525:180::-;9573:77;9570:1;9563:88;9670:4;9667:1;9660:15;9694:4;9691:1;9684:15;9711:185;9751:1;9768:20;9786:1;9768:20;:::i;:::-;9763:25;;9802:20;9820:1;9802:20;:::i;:::-;9797:25;;9841:1;9831:35;;9846:18;;:::i;:::-;9831:35;9888:1;9885;9881:9;9876:14;;9711:185;;;;:::o;9902:194::-;9942:4;9962:20;9980:1;9962:20;:::i;:::-;9957:25;;9996:20;10014:1;9996:20;:::i;:::-;9991:25;;10040:1;10037;10033:9;10025:17;;10064:1;10058:4;10055:11;10052:37;;;10069:18;;:::i;:::-;10052:37;9902:194;;;;:::o;10102:224::-;10242:34;10238:1;10230:6;10226:14;10219:58;10311:7;10306:2;10298:6;10294:15;10287:32;10102:224;:::o;10332:366::-;10474:3;10495:67;10559:2;10554:3;10495:67;:::i;:::-;10488:74;;10571:93;10660:3;10571:93;:::i;:::-;10689:2;10684:3;10680:12;10673:19;;10332:366;;;:::o;10704:419::-;10870:4;10908:2;10897:9;10893:18;10885:26;;10957:9;10951:4;10947:20;10943:1;10932:9;10928:17;10921:47;10985:131;11111:4;10985:131;:::i;:::-;10977:139;;10704:419;;;:::o;11129:180::-;11177:77;11174:1;11167:88;11274:4;11271:1;11264:15;11298:4;11295:1;11288:15;11315:180;11363:77;11360:1;11353:88;11460:4;11457:1;11450:15;11484:4;11481:1;11474:15;11501:143;11558:5;11589:6;11583:13;11574:22;;11605:33;11632:5;11605:33;:::i;:::-;11501:143;;;;:::o;11650:351::-;11720:6;11769:2;11757:9;11748:7;11744:23;11740:32;11737:119;;;11775:79;;:::i;:::-;11737:119;11895:1;11920:64;11976:7;11967:6;11956:9;11952:22;11920:64;:::i;:::-;11910:74;;11866:128;11650:351;;;;:::o;12007:85::-;12052:7;12081:5;12070:16;;12007:85;;;:::o;12098:158::-;12156:9;12189:61;12207:42;12216:32;12242:5;12216:32;:::i;:::-;12207:42;:::i;:::-;12189:61;:::i;:::-;12176:74;;12098:158;;;:::o;12262:147::-;12357:45;12396:5;12357:45;:::i;:::-;12352:3;12345:58;12262:147;;:::o;12415:114::-;12482:6;12516:5;12510:12;12500:22;;12415:114;;;:::o;12535:184::-;12634:11;12668:6;12663:3;12656:19;12708:4;12703:3;12699:14;12684:29;;12535:184;;;;:::o;12725:132::-;12792:4;12815:3;12807:11;;12845:4;12840:3;12836:14;12828:22;;12725:132;;;:::o;12863:108::-;12940:24;12958:5;12940:24;:::i;:::-;12935:3;12928:37;12863:108;;:::o;12977:179::-;13046:10;13067:46;13109:3;13101:6;13067:46;:::i;:::-;13145:4;13140:3;13136:14;13122:28;;12977:179;;;;:::o;13162:113::-;13232:4;13264;13259:3;13255:14;13247:22;;13162:113;;;:::o;13311:732::-;13430:3;13459:54;13507:5;13459:54;:::i;:::-;13529:86;13608:6;13603:3;13529:86;:::i;:::-;13522:93;;13639:56;13689:5;13639:56;:::i;:::-;13718:7;13749:1;13734:284;13759:6;13756:1;13753:13;13734:284;;;13835:6;13829:13;13862:63;13921:3;13906:13;13862:63;:::i;:::-;13855:70;;13948:60;14001:6;13948:60;:::i;:::-;13938:70;;13794:224;13781:1;13778;13774:9;13769:14;;13734:284;;;13738:14;14034:3;14027:10;;13435:608;;;13311:732;;;;:::o;14049:831::-;14312:4;14350:3;14339:9;14335:19;14327:27;;14364:71;14432:1;14421:9;14417:17;14408:6;14364:71;:::i;:::-;14445:80;14521:2;14510:9;14506:18;14497:6;14445:80;:::i;:::-;14572:9;14566:4;14562:20;14557:2;14546:9;14542:18;14535:48;14600:108;14703:4;14694:6;14600:108;:::i;:::-;14592:116;;14718:72;14786:2;14775:9;14771:18;14762:6;14718:72;:::i;:::-;14800:73;14868:3;14857:9;14853:19;14844:6;14800:73;:::i;:::-;14049:831;;;;;;;;:::o;14886:147::-;14987:11;15024:3;15009:18;;14886:147;;;;:::o;15039:114::-;;:::o;15159:398::-;15318:3;15339:83;15420:1;15415:3;15339:83;:::i;:::-;15332:90;;15431:93;15520:3;15431:93;:::i;:::-;15549:1;15544:3;15540:11;15533:18;;15159:398;;;:::o;15563:379::-;15747:3;15769:147;15912:3;15769:147;:::i;:::-;15762:154;;15933:3;15926:10;;15563:379;;;:::o;15948:180::-;16088:32;16084:1;16076:6;16072:14;16065:56;15948:180;:::o;16134:366::-;16276:3;16297:67;16361:2;16356:3;16297:67;:::i;:::-;16290:74;;16373:93;16462:3;16373:93;:::i;:::-;16491:2;16486:3;16482:12;16475:19;;16134:366;;;:::o;16506:419::-;16672:4;16710:2;16699:9;16695:18;16687:26;;16759:9;16753:4;16749:20;16745:1;16734:9;16730:17;16723:47;16787:131;16913:4;16787:131;:::i;:::-;16779:139;;16506:419;;;:::o;16931:807::-;17180:4;17218:3;17207:9;17203:19;17195:27;;17232:71;17300:1;17289:9;17285:17;17276:6;17232:71;:::i;:::-;17313:72;17381:2;17370:9;17366:18;17357:6;17313:72;:::i;:::-;17395:80;17471:2;17460:9;17456:18;17447:6;17395:80;:::i;:::-;17485;17561:2;17550:9;17546:18;17537:6;17485:80;:::i;:::-;17575:73;17643:3;17632:9;17628:19;17619:6;17575:73;:::i;:::-;17658;17726:3;17715:9;17711:19;17702:6;17658:73;:::i;:::-;16931:807;;;;;;;;;:::o;17744:143::-;17801:5;17832:6;17826:13;17817:22;;17848:33;17875:5;17848:33;:::i;:::-;17744:143;;;;:::o;17893:663::-;17981:6;17989;17997;18046:2;18034:9;18025:7;18021:23;18017:32;18014:119;;;18052:79;;:::i;:::-;18014:119;18172:1;18197:64;18253:7;18244:6;18233:9;18229:22;18197:64;:::i;:::-;18187:74;;18143:128;18310:2;18336:64;18392:7;18383:6;18372:9;18368:22;18336:64;:::i;:::-;18326:74;;18281:129;18449:2;18475:64;18531:7;18522:6;18511:9;18507:22;18475:64;:::i;:::-;18465:74;;18420:129;17893:663;;;;;:::o;18562:332::-;18683:4;18721:2;18710:9;18706:18;18698:26;;18734:71;18802:1;18791:9;18787:17;18778:6;18734:71;:::i;:::-;18815:72;18883:2;18872:9;18868:18;18859:6;18815:72;:::i;:::-;18562:332;;;;;:::o;18900:177::-;19040:29;19036:1;19028:6;19024:14;19017:53;18900:177;:::o;19083:366::-;19225:3;19246:67;19310:2;19305:3;19246:67;:::i;:::-;19239:74;;19322:93;19411:3;19322:93;:::i;:::-;19440:2;19435:3;19431:12;19424:19;;19083:366;;;:::o;19455:419::-;19621:4;19659:2;19648:9;19644:18;19636:26;;19708:9;19702:4;19698:20;19694:1;19683:9;19679:17;19672:47;19736:131;19862:4;19736:131;:::i;:::-;19728:139;;19455:419;;;:::o;19880:220::-;20020:34;20016:1;20008:6;20004:14;19997:58;20089:3;20084:2;20076:6;20072:15;20065:28;19880:220;:::o;20106:366::-;20248:3;20269:67;20333:2;20328:3;20269:67;:::i;:::-;20262:74;;20345:93;20434:3;20345:93;:::i;:::-;20463:2;20458:3;20454:12;20447:19;;20106:366;;;:::o;20478:419::-;20644:4;20682:2;20671:9;20667:18;20659:26;;20731:9;20725:4;20721:20;20717:1;20706:9;20702:17;20695:47;20759:131;20885:4;20759:131;:::i;:::-;20751:139;;20478:419;;;:::o
Swarm Source
ipfs://2f9bf4188210f2567f472e35b5d9ae46a8f389d44509a0f75be079b5d7d165f6
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.