ERC-20
Overview
Max Total Supply
1,000,000 DWRLD
Holders
33
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 8 Decimals)
Balance
12,377.8333715 DWRLDValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
Dogeworld
Compiler Version
v0.8.11+commit.d7f03943
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-04-04 */ /** Welcome to Doge World, the future of Finance. $DWRLD is the dog token here to embrace the 2023 meme season. Doge World is the meme token here to ignite the meme season through community effort and decentralization. Website: https://dwrldtoken.com/ Telegram: https://t.me/dogeworlderc Twitter: https://twitter.com/dogeworlderc ▄ ▄ ▌▒█ ▄▀▒▌ ▌▒▒█ ▄▀▒▒▒▐ ▐▄▀▒▒▀▀▀▀▄▄▄▀▒▒▒▒▒▐ ▄▄▀▒░▒▒▒▒▒▒▒▒▒█▒▒▄█▒▐ ▄▀▒▒▒░░░▒▒▒░░░▒▒▒▀██▀▒▌ ▐▒▒▒▄▄▒▒▒▒░░░▒▒▒▒▒▒▒▀▄▒▒▌ ▌░░▌█▀▒▒▒▒▒▄▀█▄▒▒▒▒▒▒▒█▒▐ ▐░░░▒▒▒▒▒▒▒▒▌██▀▒▒░░░▒▒▒▀▄▌ ▌░▒▄██▄▒▒▒▒▒▒▒▒▒░░░░░░▒▒▒▒▌ ▌▒▀▐▄█▄█▌▄░▀▒▒░░░░░░░░░░▒▒▒▐ ▐▒▒▐▀▐▀▒░▄▄▒▄▒▒▒▒▒▒░▒░▒░▒▒▒▒▌ ▐▒▒▒▀▀▄▄▒▒▒▄▒▒▒▒▒▒▒▒░▒░▒░▒▒▐ ▌▒▒▒▒▒▒▀▀▀▒▒▒▒▒▒░▒░▒░▒░▒▒▒▌ ▐▒▒▒▒▒▒▒▒▒▒▒▒▒▒░▒░▒░▒▒▄▒▒▐ ▀▄▒▒▒▒▒▒▒▒▒▒▒░▒░▒░▒▄▒▒▒▒▌ ▀▄▒▒▒▒▒▒▒▒▒▒▄▄▄▀▒▒▒▒▄▀ ▀▄▄▄▄▄▄▀▀▀▒▒▒▒▒▄▄▀ ▒▒▒▒▒▒▒▒▒▒▀▀ **/ // SPDX-License-Identifier: MIT pragma solidity 0.8.11; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } } contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); } contract Dogeworld is Context, IERC20, Ownable { using SafeMath for uint256; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private _isExcludedFromFee; mapping (address => bool) private bots; mapping(address => uint256) private _holderLastTransferTimestamp; bool public transferDelayEnabled = true; address payable private _taxWallet; uint256 private _initialBuyTax=20; uint256 private _initialSellTax=30; uint256 private _finalBuyTax=5; uint256 private _finalSellTax=5; uint256 private _reduceBuyTaxAt=30; uint256 private _reduceSellTaxAt=30; uint256 private _preventSwapBefore=30; uint256 private _buyCount=0; uint8 private constant _decimals = 8; uint256 private constant _tTotal = 1000000 * 10**_decimals; string private constant _name = unicode"Doge World"; string private constant _symbol = unicode"DWRLD"; uint256 public _maxTxAmount = 12500 * 10**_decimals; uint256 public _maxWalletSize = 20000 * 10**_decimals; uint256 public _taxSwapThreshold=5000 * 10**_decimals; uint256 public _maxTaxSwap=20000 * 10**_decimals; IUniswapV2Router02 private uniswapV2Router; address private uniswapV2Pair; bool private tradingOpen; bool private inSwap = false; bool private swapEnabled = false; event MaxTxAmountUpdated(uint _maxTxAmount); modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor () { _taxWallet = payable(_msgSender()); _balances[_msgSender()] = _tTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[_taxWallet] = true; emit Transfer(address(0), _msgSender(), _tTotal); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); return true; } function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _transfer(address from, address to, uint256 amount) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); uint256 taxAmount=0; if (from != owner() && to != owner()) { require(!bots[from] && !bots[to]); taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100); if (transferDelayEnabled) { if (to != address(uniswapV2Router) && to != address(uniswapV2Pair)) { require( _holderLastTransferTimestamp[tx.origin] < block.number, "_transfer:: Transfer Delay enabled. Only one purchase per block allowed." ); _holderLastTransferTimestamp[tx.origin] = block.number; } } if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) { require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount."); require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize."); _buyCount++; } if(to == uniswapV2Pair && from!= address(this) ){ taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).div(100); } uint256 contractTokenBalance = balanceOf(address(this)); if (!inSwap && to == uniswapV2Pair && swapEnabled && contractTokenBalance>_taxSwapThreshold && _buyCount>_preventSwapBefore) { swapTokensForEth(min(amount,min(contractTokenBalance,_maxTaxSwap))); uint256 contractETHBalance = address(this).balance; if(contractETHBalance > 0) { sendETHToFee(address(this).balance); } } } if(taxAmount>0){ _balances[address(this)]=_balances[address(this)].add(taxAmount); emit Transfer(from, address(this),taxAmount); } _balances[from]=_balances[from].sub(amount); _balances[to]=_balances[to].add(amount.sub(taxAmount)); emit Transfer(from, to, amount.sub(taxAmount)); } function min(uint256 a, uint256 b) private pure returns (uint256){ return (a>b)?b:a; } function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function removeLimits() external onlyOwner{ _maxTxAmount = _tTotal; _maxWalletSize=_tTotal; transferDelayEnabled=false; emit MaxTxAmountUpdated(_tTotal); } function sendETHToFee(uint256 amount) private { _taxWallet.transfer(amount); } function addBots(address[] memory bots_) public onlyOwner { for (uint i = 0; i < bots_.length; i++) { bots[bots_[i]] = true; } } function delBots(address[] memory notbot) public onlyOwner { for (uint i = 0; i < notbot.length; i++) { bots[notbot[i]] = false; } } function isBot(address a) public view returns (bool){ return bots[a]; } function openTrading() external onlyOwner() { require(!tradingOpen,"trading is already open"); uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); _approve(address(this), address(uniswapV2Router), _tTotal); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH()); uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp); IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); swapEnabled = true; tradingOpen = true; } receive() external payable {} function manualSwap() external { require(_msgSender()==_taxWallet); uint256 tokenBalance=balanceOf(address(this)); if(tokenBalance>0){ swapTokensForEth(tokenBalance); } uint256 ethBalance=address(this).balance; if(ethBalance>0){ sendETHToFee(ethBalance); } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"addBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"notbot","type":"address[]"}],"name":"delBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040526001600660006101000a81548160ff0219169083151502179055506014600755601e60085560056009556005600a55601e600b55601e600c55601e600d556000600e556008600a62000057919062000625565b6130d462000066919062000676565b600f556008600a62000079919062000625565b614e2062000088919062000676565b6010556008600a6200009b919062000625565b611388620000aa919062000676565b6011556008600a620000bd919062000625565b614e20620000cc919062000676565b6012556000601460156101000a81548160ff0219169083151502179055506000601460166101000a81548160ff0219169083151502179055503480156200011257600080fd5b506000620001256200045a60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350620001d36200045a60201b60201c565b600660016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506008600a62000223919062000625565b620f424062000233919062000676565b60016000620002476200045a60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600360006200029b6200046260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600360003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160036000600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620003ce6200045a60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6008600a6200042d919062000625565b620f42406200043d919062000676565b6040516200044c9190620006e8565b60405180910390a362000705565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156200051957808604811115620004f157620004f06200048b565b5b6001851615620005015780820291505b80810290506200051185620004ba565b9450620004d1565b94509492505050565b60008262000534576001905062000607565b8162000544576000905062000607565b81600181146200055d576002811462000568576200059e565b600191505062000607565b60ff8411156200057d576200057c6200048b565b5b8360020a9150848211156200059757620005966200048b565b5b5062000607565b5060208310610133831016604e8410600b8410161715620005d85782820a905083811115620005d257620005d16200048b565b5b62000607565b620005e78484846001620004c7565b925090508184048111156200060157620006006200048b565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b600062000632826200060e565b91506200063f8362000618565b92506200066e7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000522565b905092915050565b600062000683826200060e565b915062000690836200060e565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620006cc57620006cb6200048b565b5b828202905092915050565b620006e2816200060e565b82525050565b6000602082019050620006ff6000830184620006d7565b92915050565b61361f80620007156000396000f3fe6080604052600436106101395760003560e01c8063751039fc116100ab578063a9059cbb1161006f578063a9059cbb146103ff578063bf474bed1461043c578063c876d0b914610467578063c9567bf914610492578063d34628cc146104a9578063dd62ed3e146104d257610140565b8063751039fc1461033c5780637d1db4a5146103535780638da5cb5b1461037e5780638f9a55c0146103a957806395d89b41146103d457610140565b8063313ce567116100fd578063313ce5671461024057806331c2d8471461026b5780633bbac5791461029457806351bc3c85146102d157806370a08231146102e8578063715018a61461032557610140565b806306fdde0314610145578063095ea7b3146101705780630faee56f146101ad57806318160ddd146101d857806323b872dd1461020357610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a61050f565b60405161016791906124e9565b60405180910390f35b34801561017c57600080fd5b50610197600480360381019061019291906125b3565b61054c565b6040516101a4919061260e565b60405180910390f35b3480156101b957600080fd5b506101c261056a565b6040516101cf9190612638565b60405180910390f35b3480156101e457600080fd5b506101ed610570565b6040516101fa9190612638565b60405180910390f35b34801561020f57600080fd5b5061022a60048036038101906102259190612653565b610593565b604051610237919061260e565b60405180910390f35b34801561024c57600080fd5b5061025561066c565b60405161026291906126c2565b60405180910390f35b34801561027757600080fd5b50610292600480360381019061028d9190612825565b610675565b005b3480156102a057600080fd5b506102bb60048036038101906102b6919061286e565b61079f565b6040516102c8919061260e565b60405180910390f35b3480156102dd57600080fd5b506102e66107f5565b005b3480156102f457600080fd5b5061030f600480360381019061030a919061286e565b610892565b60405161031c9190612638565b60405180910390f35b34801561033157600080fd5b5061033a6108db565b005b34801561034857600080fd5b50610351610a2e565b005b34801561035f57600080fd5b50610368610b76565b6040516103759190612638565b60405180910390f35b34801561038a57600080fd5b50610393610b7c565b6040516103a091906128aa565b60405180910390f35b3480156103b557600080fd5b506103be610ba5565b6040516103cb9190612638565b60405180910390f35b3480156103e057600080fd5b506103e9610bab565b6040516103f691906124e9565b60405180910390f35b34801561040b57600080fd5b50610426600480360381019061042191906125b3565b610be8565b604051610433919061260e565b60405180910390f35b34801561044857600080fd5b50610451610c06565b60405161045e9190612638565b60405180910390f35b34801561047357600080fd5b5061047c610c0c565b604051610489919061260e565b60405180910390f35b34801561049e57600080fd5b506104a7610c1f565b005b3480156104b557600080fd5b506104d060048036038101906104cb9190612825565b611153565b005b3480156104de57600080fd5b506104f960048036038101906104f491906128c5565b61127d565b6040516105069190612638565b60405180910390f35b60606040518060400160405280600a81526020017f446f676520576f726c6400000000000000000000000000000000000000000000815250905090565b6000610560610559611304565b848461130c565b6001905092915050565b60125481565b60006008600a6105809190612a67565b620f424061058e9190612ab2565b905090565b60006105a08484846114d7565b610661846105ac611304565b61065c856040518060600160405280602881526020016135c260289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610612611304565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f1e9092919063ffffffff16565b61130c565b600190509392505050565b60006008905090565b61067d611304565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461070a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161070190612b58565b60405180910390fd5b60005b815181101561079b5760006004600084848151811061072f5761072e612b78565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061079390612ba7565b91505061070d565b5050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610836611304565b73ffffffffffffffffffffffffffffffffffffffff161461085657600080fd5b600061086130610892565b905060008111156108765761087581611f82565b5b6000479050600081111561088e5761088d816121fb565b5b5050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6108e3611304565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610970576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161096790612b58565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610a36611304565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ac3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aba90612b58565b60405180910390fd5b6008600a610ad19190612a67565b620f4240610adf9190612ab2565b600f819055506008600a610af39190612a67565b620f4240610b019190612ab2565b6010819055506000600660006101000a81548160ff0219169083151502179055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6008600a610b519190612a67565b620f4240610b5f9190612ab2565b604051610b6c9190612638565b60405180910390a1565b600f5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60105481565b60606040518060400160405280600581526020017f4457524c44000000000000000000000000000000000000000000000000000000815250905090565b6000610bfc610bf5611304565b84846114d7565b6001905092915050565b60115481565b600660009054906101000a900460ff1681565b610c27611304565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610cb4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cab90612b58565b60405180910390fd5b60148054906101000a900460ff1615610d02576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cf990612c3c565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610d9f30601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166008600a610d8c9190612a67565b620f4240610d9a9190612ab2565b61130c565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e0c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e309190612c71565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612c71565b6040518363ffffffff1660e01b8152600401610efa929190612c9e565b6020604051808303816000875af1158015610f19573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f3d9190612c71565b601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610fc630610892565b600080610fd1610b7c565b426040518863ffffffff1660e01b8152600401610ff396959493929190612d0c565b60606040518083038185885af1158015611011573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906110369190612d82565b505050601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016110d8929190612dd5565b6020604051808303816000875af11580156110f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061111b9190612e2a565b506001601460166101000a81548160ff02191690831515021790555060016014806101000a81548160ff021916908315150217905550565b61115b611304565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111df90612b58565b60405180910390fd5b60005b81518110156112795760016004600084848151811061120d5761120c612b78565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061127190612ba7565b9150506111eb565b5050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561137c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137390612ec9565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156113ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113e390612f5b565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516114ca9190612638565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611547576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161153e90612fed565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156115b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115ae9061307f565b60405180910390fd5b600081116115fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115f190613111565b60405180910390fd5b6000611604610b7c565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156116725750611642610b7c565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611c6157600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561171b5750600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b61172457600080fd5b6117606064611752600b54600e541161173f57600754611743565b6009545b8561226790919063ffffffff16565b6122e290919063ffffffff16565b9050600660009054906101000a900460ff16156118ef57601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156118235750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156118ee5743600560003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054106118a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118a0906131c9565b60405180910390fd5b43600560003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614801561199a5750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156119f05750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611aab57600f54821115611a3a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a3190613235565b60405180910390fd5b60105482611a4785610892565b611a519190613255565b1115611a92576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a89906132f7565b60405180910390fd5b600e6000815480929190611aa590612ba7565b91905055505b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611b3457503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611b7857611b756064611b67600c54600e5411611b5457600854611b58565b600a545b8561226790919063ffffffff16565b6122e290919063ffffffff16565b90505b6000611b8330610892565b9050601460159054906101000a900460ff16158015611bef5750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015611c075750601460169054906101000a900460ff165b8015611c14575060115481115b8015611c235750600d54600e54115b15611c5f57611c45611c4084611c3b8460125461232c565b61232c565b611f82565b60004790506000811115611c5d57611c5c476121fb565b5b505b505b6000811115611d6557611cbc81600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461234590919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611d5c9190612638565b60405180910390a35b611db782600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123a390919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611e5e611e1082846123a390919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461234590919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611f0384866123a390919063ffffffff16565b604051611f109190612638565b60405180910390a350505050565b6000838311158290611f66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f5d91906124e9565b60405180910390fd5b5060008385611f759190613317565b9050809150509392505050565b6001601460156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611fba57611fb96126e2565b5b604051908082528060200260200182016040528015611fe85781602001602082028036833780820191505090505b509050308160008151811061200057611fff612b78565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156120a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120cb9190612c71565b816001815181106120df576120de612b78565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061214630601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461130c565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016121aa959493929190613409565b600060405180830381600087803b1580156121c457600080fd5b505af11580156121d8573d6000803e3d6000fd5b50505050506000601460156101000a81548160ff02191690831515021790555050565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612263573d6000803e3d6000fd5b5050565b60008083141561227a57600090506122dc565b600082846122889190612ab2565b90508284826122979190613492565b146122d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122ce90613535565b60405180910390fd5b809150505b92915050565b600061232483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506123ed565b905092915050565b600081831161233b578261233d565b815b905092915050565b60008082846123549190613255565b905083811015612399576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612390906135a1565b60405180910390fd5b8091505092915050565b60006123e583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611f1e565b905092915050565b60008083118290612434576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161242b91906124e9565b60405180910390fd5b50600083856124439190613492565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561248a57808201518184015260208101905061246f565b83811115612499576000848401525b50505050565b6000601f19601f8301169050919050565b60006124bb82612450565b6124c5818561245b565b93506124d581856020860161246c565b6124de8161249f565b840191505092915050565b6000602082019050818103600083015261250381846124b0565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061254a8261251f565b9050919050565b61255a8161253f565b811461256557600080fd5b50565b60008135905061257781612551565b92915050565b6000819050919050565b6125908161257d565b811461259b57600080fd5b50565b6000813590506125ad81612587565b92915050565b600080604083850312156125ca576125c9612515565b5b60006125d885828601612568565b92505060206125e98582860161259e565b9150509250929050565b60008115159050919050565b612608816125f3565b82525050565b600060208201905061262360008301846125ff565b92915050565b6126328161257d565b82525050565b600060208201905061264d6000830184612629565b92915050565b60008060006060848603121561266c5761266b612515565b5b600061267a86828701612568565b935050602061268b86828701612568565b925050604061269c8682870161259e565b9150509250925092565b600060ff82169050919050565b6126bc816126a6565b82525050565b60006020820190506126d760008301846126b3565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61271a8261249f565b810181811067ffffffffffffffff82111715612739576127386126e2565b5b80604052505050565b600061274c61250b565b90506127588282612711565b919050565b600067ffffffffffffffff821115612778576127776126e2565b5b602082029050602081019050919050565b600080fd5b60006127a161279c8461275d565b612742565b905080838252602082019050602084028301858111156127c4576127c3612789565b5b835b818110156127ed57806127d98882612568565b8452602084019350506020810190506127c6565b5050509392505050565b600082601f83011261280c5761280b6126dd565b5b813561281c84826020860161278e565b91505092915050565b60006020828403121561283b5761283a612515565b5b600082013567ffffffffffffffff8111156128595761285861251a565b5b612865848285016127f7565b91505092915050565b60006020828403121561288457612883612515565b5b600061289284828501612568565b91505092915050565b6128a48161253f565b82525050565b60006020820190506128bf600083018461289b565b92915050565b600080604083850312156128dc576128db612515565b5b60006128ea85828601612568565b92505060206128fb85828601612568565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111561298b5780860481111561296757612966612905565b5b60018516156129765780820291505b808102905061298485612934565b945061294b565b94509492505050565b6000826129a45760019050612a60565b816129b25760009050612a60565b81600181146129c857600281146129d257612a01565b6001915050612a60565b60ff8411156129e4576129e3612905565b5b8360020a9150848211156129fb576129fa612905565b5b50612a60565b5060208310610133831016604e8410600b8410161715612a365782820a905083811115612a3157612a30612905565b5b612a60565b612a438484846001612941565b92509050818404811115612a5a57612a59612905565b5b81810290505b9392505050565b6000612a728261257d565b9150612a7d836126a6565b9250612aaa7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612994565b905092915050565b6000612abd8261257d565b9150612ac88361257d565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612b0157612b00612905565b5b828202905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612b4260208361245b565b9150612b4d82612b0c565b602082019050919050565b60006020820190508181036000830152612b7181612b35565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000612bb28261257d565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612be557612be4612905565b5b600182019050919050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b6000612c2660178361245b565b9150612c3182612bf0565b602082019050919050565b60006020820190508181036000830152612c5581612c19565b9050919050565b600081519050612c6b81612551565b92915050565b600060208284031215612c8757612c86612515565b5b6000612c9584828501612c5c565b91505092915050565b6000604082019050612cb3600083018561289b565b612cc0602083018461289b565b9392505050565b6000819050919050565b6000819050919050565b6000612cf6612cf1612cec84612cc7565b612cd1565b61257d565b9050919050565b612d0681612cdb565b82525050565b600060c082019050612d21600083018961289b565b612d2e6020830188612629565b612d3b6040830187612cfd565b612d486060830186612cfd565b612d55608083018561289b565b612d6260a0830184612629565b979650505050505050565b600081519050612d7c81612587565b92915050565b600080600060608486031215612d9b57612d9a612515565b5b6000612da986828701612d6d565b9350506020612dba86828701612d6d565b9250506040612dcb86828701612d6d565b9150509250925092565b6000604082019050612dea600083018561289b565b612df76020830184612629565b9392505050565b612e07816125f3565b8114612e1257600080fd5b50565b600081519050612e2481612dfe565b92915050565b600060208284031215612e4057612e3f612515565b5b6000612e4e84828501612e15565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612eb360248361245b565b9150612ebe82612e57565b604082019050919050565b60006020820190508181036000830152612ee281612ea6565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612f4560228361245b565b9150612f5082612ee9565b604082019050919050565b60006020820190508181036000830152612f7481612f38565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612fd760258361245b565b9150612fe282612f7b565b604082019050919050565b6000602082019050818103600083015261300681612fca565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061306960238361245b565b91506130748261300d565b604082019050919050565b600060208201905081810360008301526130988161305c565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b60006130fb60298361245b565b91506131068261309f565b604082019050919050565b6000602082019050818103600083015261312a816130ee565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60008201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b60006131b360498361245b565b91506131be82613131565b606082019050919050565b600060208201905081810360008301526131e2816131a6565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b600061321f60198361245b565b915061322a826131e9565b602082019050919050565b6000602082019050818103600083015261324e81613212565b9050919050565b60006132608261257d565b915061326b8361257d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156132a05761329f612905565b5b828201905092915050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b60006132e1601a8361245b565b91506132ec826132ab565b602082019050919050565b60006020820190508181036000830152613310816132d4565b9050919050565b60006133228261257d565b915061332d8361257d565b9250828210156133405761333f612905565b5b828203905092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6133808161253f565b82525050565b60006133928383613377565b60208301905092915050565b6000602082019050919050565b60006133b68261334b565b6133c08185613356565b93506133cb83613367565b8060005b838110156133fc5781516133e38882613386565b97506133ee8361339e565b9250506001810190506133cf565b5085935050505092915050565b600060a08201905061341e6000830188612629565b61342b6020830187612cfd565b818103604083015261343d81866133ab565b905061344c606083018561289b565b6134596080830184612629565b9695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061349d8261257d565b91506134a88361257d565b9250826134b8576134b7613463565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061351f60218361245b565b915061352a826134c3565b604082019050919050565b6000602082019050818103600083015261354e81613512565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b600061358b601b8361245b565b915061359682613555565b602082019050919050565b600060208201905081810360008301526135ba8161357e565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220f0e2b3b42c1d694605e8c5795edfd3e1e41df454b5940cad51d314ade782b3f964736f6c634300080b0033
Deployed Bytecode
0x6080604052600436106101395760003560e01c8063751039fc116100ab578063a9059cbb1161006f578063a9059cbb146103ff578063bf474bed1461043c578063c876d0b914610467578063c9567bf914610492578063d34628cc146104a9578063dd62ed3e146104d257610140565b8063751039fc1461033c5780637d1db4a5146103535780638da5cb5b1461037e5780638f9a55c0146103a957806395d89b41146103d457610140565b8063313ce567116100fd578063313ce5671461024057806331c2d8471461026b5780633bbac5791461029457806351bc3c85146102d157806370a08231146102e8578063715018a61461032557610140565b806306fdde0314610145578063095ea7b3146101705780630faee56f146101ad57806318160ddd146101d857806323b872dd1461020357610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a61050f565b60405161016791906124e9565b60405180910390f35b34801561017c57600080fd5b50610197600480360381019061019291906125b3565b61054c565b6040516101a4919061260e565b60405180910390f35b3480156101b957600080fd5b506101c261056a565b6040516101cf9190612638565b60405180910390f35b3480156101e457600080fd5b506101ed610570565b6040516101fa9190612638565b60405180910390f35b34801561020f57600080fd5b5061022a60048036038101906102259190612653565b610593565b604051610237919061260e565b60405180910390f35b34801561024c57600080fd5b5061025561066c565b60405161026291906126c2565b60405180910390f35b34801561027757600080fd5b50610292600480360381019061028d9190612825565b610675565b005b3480156102a057600080fd5b506102bb60048036038101906102b6919061286e565b61079f565b6040516102c8919061260e565b60405180910390f35b3480156102dd57600080fd5b506102e66107f5565b005b3480156102f457600080fd5b5061030f600480360381019061030a919061286e565b610892565b60405161031c9190612638565b60405180910390f35b34801561033157600080fd5b5061033a6108db565b005b34801561034857600080fd5b50610351610a2e565b005b34801561035f57600080fd5b50610368610b76565b6040516103759190612638565b60405180910390f35b34801561038a57600080fd5b50610393610b7c565b6040516103a091906128aa565b60405180910390f35b3480156103b557600080fd5b506103be610ba5565b6040516103cb9190612638565b60405180910390f35b3480156103e057600080fd5b506103e9610bab565b6040516103f691906124e9565b60405180910390f35b34801561040b57600080fd5b50610426600480360381019061042191906125b3565b610be8565b604051610433919061260e565b60405180910390f35b34801561044857600080fd5b50610451610c06565b60405161045e9190612638565b60405180910390f35b34801561047357600080fd5b5061047c610c0c565b604051610489919061260e565b60405180910390f35b34801561049e57600080fd5b506104a7610c1f565b005b3480156104b557600080fd5b506104d060048036038101906104cb9190612825565b611153565b005b3480156104de57600080fd5b506104f960048036038101906104f491906128c5565b61127d565b6040516105069190612638565b60405180910390f35b60606040518060400160405280600a81526020017f446f676520576f726c6400000000000000000000000000000000000000000000815250905090565b6000610560610559611304565b848461130c565b6001905092915050565b60125481565b60006008600a6105809190612a67565b620f424061058e9190612ab2565b905090565b60006105a08484846114d7565b610661846105ac611304565b61065c856040518060600160405280602881526020016135c260289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610612611304565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f1e9092919063ffffffff16565b61130c565b600190509392505050565b60006008905090565b61067d611304565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461070a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161070190612b58565b60405180910390fd5b60005b815181101561079b5760006004600084848151811061072f5761072e612b78565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061079390612ba7565b91505061070d565b5050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610836611304565b73ffffffffffffffffffffffffffffffffffffffff161461085657600080fd5b600061086130610892565b905060008111156108765761087581611f82565b5b6000479050600081111561088e5761088d816121fb565b5b5050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6108e3611304565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610970576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161096790612b58565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610a36611304565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ac3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aba90612b58565b60405180910390fd5b6008600a610ad19190612a67565b620f4240610adf9190612ab2565b600f819055506008600a610af39190612a67565b620f4240610b019190612ab2565b6010819055506000600660006101000a81548160ff0219169083151502179055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6008600a610b519190612a67565b620f4240610b5f9190612ab2565b604051610b6c9190612638565b60405180910390a1565b600f5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60105481565b60606040518060400160405280600581526020017f4457524c44000000000000000000000000000000000000000000000000000000815250905090565b6000610bfc610bf5611304565b84846114d7565b6001905092915050565b60115481565b600660009054906101000a900460ff1681565b610c27611304565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610cb4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cab90612b58565b60405180910390fd5b60148054906101000a900460ff1615610d02576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cf990612c3c565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610d9f30601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166008600a610d8c9190612a67565b620f4240610d9a9190612ab2565b61130c565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e0c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e309190612c71565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612c71565b6040518363ffffffff1660e01b8152600401610efa929190612c9e565b6020604051808303816000875af1158015610f19573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f3d9190612c71565b601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610fc630610892565b600080610fd1610b7c565b426040518863ffffffff1660e01b8152600401610ff396959493929190612d0c565b60606040518083038185885af1158015611011573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906110369190612d82565b505050601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016110d8929190612dd5565b6020604051808303816000875af11580156110f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061111b9190612e2a565b506001601460166101000a81548160ff02191690831515021790555060016014806101000a81548160ff021916908315150217905550565b61115b611304565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111df90612b58565b60405180910390fd5b60005b81518110156112795760016004600084848151811061120d5761120c612b78565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061127190612ba7565b9150506111eb565b5050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561137c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137390612ec9565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156113ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113e390612f5b565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516114ca9190612638565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611547576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161153e90612fed565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156115b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115ae9061307f565b60405180910390fd5b600081116115fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115f190613111565b60405180910390fd5b6000611604610b7c565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156116725750611642610b7c565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611c6157600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561171b5750600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b61172457600080fd5b6117606064611752600b54600e541161173f57600754611743565b6009545b8561226790919063ffffffff16565b6122e290919063ffffffff16565b9050600660009054906101000a900460ff16156118ef57601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156118235750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156118ee5743600560003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054106118a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118a0906131c9565b60405180910390fd5b43600560003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614801561199a5750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156119f05750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611aab57600f54821115611a3a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a3190613235565b60405180910390fd5b60105482611a4785610892565b611a519190613255565b1115611a92576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a89906132f7565b60405180910390fd5b600e6000815480929190611aa590612ba7565b91905055505b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611b3457503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611b7857611b756064611b67600c54600e5411611b5457600854611b58565b600a545b8561226790919063ffffffff16565b6122e290919063ffffffff16565b90505b6000611b8330610892565b9050601460159054906101000a900460ff16158015611bef5750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015611c075750601460169054906101000a900460ff165b8015611c14575060115481115b8015611c235750600d54600e54115b15611c5f57611c45611c4084611c3b8460125461232c565b61232c565b611f82565b60004790506000811115611c5d57611c5c476121fb565b5b505b505b6000811115611d6557611cbc81600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461234590919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611d5c9190612638565b60405180910390a35b611db782600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123a390919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611e5e611e1082846123a390919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461234590919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611f0384866123a390919063ffffffff16565b604051611f109190612638565b60405180910390a350505050565b6000838311158290611f66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f5d91906124e9565b60405180910390fd5b5060008385611f759190613317565b9050809150509392505050565b6001601460156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611fba57611fb96126e2565b5b604051908082528060200260200182016040528015611fe85781602001602082028036833780820191505090505b509050308160008151811061200057611fff612b78565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156120a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120cb9190612c71565b816001815181106120df576120de612b78565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061214630601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461130c565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016121aa959493929190613409565b600060405180830381600087803b1580156121c457600080fd5b505af11580156121d8573d6000803e3d6000fd5b50505050506000601460156101000a81548160ff02191690831515021790555050565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612263573d6000803e3d6000fd5b5050565b60008083141561227a57600090506122dc565b600082846122889190612ab2565b90508284826122979190613492565b146122d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122ce90613535565b60405180910390fd5b809150505b92915050565b600061232483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506123ed565b905092915050565b600081831161233b578261233d565b815b905092915050565b60008082846123549190613255565b905083811015612399576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612390906135a1565b60405180910390fd5b8091505092915050565b60006123e583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611f1e565b905092915050565b60008083118290612434576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161242b91906124e9565b60405180910390fd5b50600083856124439190613492565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561248a57808201518184015260208101905061246f565b83811115612499576000848401525b50505050565b6000601f19601f8301169050919050565b60006124bb82612450565b6124c5818561245b565b93506124d581856020860161246c565b6124de8161249f565b840191505092915050565b6000602082019050818103600083015261250381846124b0565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061254a8261251f565b9050919050565b61255a8161253f565b811461256557600080fd5b50565b60008135905061257781612551565b92915050565b6000819050919050565b6125908161257d565b811461259b57600080fd5b50565b6000813590506125ad81612587565b92915050565b600080604083850312156125ca576125c9612515565b5b60006125d885828601612568565b92505060206125e98582860161259e565b9150509250929050565b60008115159050919050565b612608816125f3565b82525050565b600060208201905061262360008301846125ff565b92915050565b6126328161257d565b82525050565b600060208201905061264d6000830184612629565b92915050565b60008060006060848603121561266c5761266b612515565b5b600061267a86828701612568565b935050602061268b86828701612568565b925050604061269c8682870161259e565b9150509250925092565b600060ff82169050919050565b6126bc816126a6565b82525050565b60006020820190506126d760008301846126b3565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61271a8261249f565b810181811067ffffffffffffffff82111715612739576127386126e2565b5b80604052505050565b600061274c61250b565b90506127588282612711565b919050565b600067ffffffffffffffff821115612778576127776126e2565b5b602082029050602081019050919050565b600080fd5b60006127a161279c8461275d565b612742565b905080838252602082019050602084028301858111156127c4576127c3612789565b5b835b818110156127ed57806127d98882612568565b8452602084019350506020810190506127c6565b5050509392505050565b600082601f83011261280c5761280b6126dd565b5b813561281c84826020860161278e565b91505092915050565b60006020828403121561283b5761283a612515565b5b600082013567ffffffffffffffff8111156128595761285861251a565b5b612865848285016127f7565b91505092915050565b60006020828403121561288457612883612515565b5b600061289284828501612568565b91505092915050565b6128a48161253f565b82525050565b60006020820190506128bf600083018461289b565b92915050565b600080604083850312156128dc576128db612515565b5b60006128ea85828601612568565b92505060206128fb85828601612568565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111561298b5780860481111561296757612966612905565b5b60018516156129765780820291505b808102905061298485612934565b945061294b565b94509492505050565b6000826129a45760019050612a60565b816129b25760009050612a60565b81600181146129c857600281146129d257612a01565b6001915050612a60565b60ff8411156129e4576129e3612905565b5b8360020a9150848211156129fb576129fa612905565b5b50612a60565b5060208310610133831016604e8410600b8410161715612a365782820a905083811115612a3157612a30612905565b5b612a60565b612a438484846001612941565b92509050818404811115612a5a57612a59612905565b5b81810290505b9392505050565b6000612a728261257d565b9150612a7d836126a6565b9250612aaa7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612994565b905092915050565b6000612abd8261257d565b9150612ac88361257d565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612b0157612b00612905565b5b828202905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612b4260208361245b565b9150612b4d82612b0c565b602082019050919050565b60006020820190508181036000830152612b7181612b35565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000612bb28261257d565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612be557612be4612905565b5b600182019050919050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b6000612c2660178361245b565b9150612c3182612bf0565b602082019050919050565b60006020820190508181036000830152612c5581612c19565b9050919050565b600081519050612c6b81612551565b92915050565b600060208284031215612c8757612c86612515565b5b6000612c9584828501612c5c565b91505092915050565b6000604082019050612cb3600083018561289b565b612cc0602083018461289b565b9392505050565b6000819050919050565b6000819050919050565b6000612cf6612cf1612cec84612cc7565b612cd1565b61257d565b9050919050565b612d0681612cdb565b82525050565b600060c082019050612d21600083018961289b565b612d2e6020830188612629565b612d3b6040830187612cfd565b612d486060830186612cfd565b612d55608083018561289b565b612d6260a0830184612629565b979650505050505050565b600081519050612d7c81612587565b92915050565b600080600060608486031215612d9b57612d9a612515565b5b6000612da986828701612d6d565b9350506020612dba86828701612d6d565b9250506040612dcb86828701612d6d565b9150509250925092565b6000604082019050612dea600083018561289b565b612df76020830184612629565b9392505050565b612e07816125f3565b8114612e1257600080fd5b50565b600081519050612e2481612dfe565b92915050565b600060208284031215612e4057612e3f612515565b5b6000612e4e84828501612e15565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612eb360248361245b565b9150612ebe82612e57565b604082019050919050565b60006020820190508181036000830152612ee281612ea6565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612f4560228361245b565b9150612f5082612ee9565b604082019050919050565b60006020820190508181036000830152612f7481612f38565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612fd760258361245b565b9150612fe282612f7b565b604082019050919050565b6000602082019050818103600083015261300681612fca565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061306960238361245b565b91506130748261300d565b604082019050919050565b600060208201905081810360008301526130988161305c565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b60006130fb60298361245b565b91506131068261309f565b604082019050919050565b6000602082019050818103600083015261312a816130ee565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60008201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b60006131b360498361245b565b91506131be82613131565b606082019050919050565b600060208201905081810360008301526131e2816131a6565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b600061321f60198361245b565b915061322a826131e9565b602082019050919050565b6000602082019050818103600083015261324e81613212565b9050919050565b60006132608261257d565b915061326b8361257d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156132a05761329f612905565b5b828201905092915050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b60006132e1601a8361245b565b91506132ec826132ab565b602082019050919050565b60006020820190508181036000830152613310816132d4565b9050919050565b60006133228261257d565b915061332d8361257d565b9250828210156133405761333f612905565b5b828203905092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6133808161253f565b82525050565b60006133928383613377565b60208301905092915050565b6000602082019050919050565b60006133b68261334b565b6133c08185613356565b93506133cb83613367565b8060005b838110156133fc5781516133e38882613386565b97506133ee8361339e565b9250506001810190506133cf565b5085935050505092915050565b600060a08201905061341e6000830188612629565b61342b6020830187612cfd565b818103604083015261343d81866133ab565b905061344c606083018561289b565b6134596080830184612629565b9695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061349d8261257d565b91506134a88361257d565b9250826134b8576134b7613463565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061351f60218361245b565b915061352a826134c3565b604082019050919050565b6000602082019050818103600083015261354e81613512565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b600061358b601b8361245b565b915061359682613555565b602082019050919050565b600060208201905081810360008301526135ba8161357e565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220f0e2b3b42c1d694605e8c5795edfd3e1e41df454b5940cad51d314ade782b3f964736f6c634300080b0033
Deployed Bytecode Sourcemap
5204:8452:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7125:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7958:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6404:48;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7402:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8127:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7311:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12320:162;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;12490:83;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13305:348;;;;;;;;;;;;;:::i;:::-;;7505:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4285:148;;;;;;;;;;;;;:::i;:::-;;11844:196;;;;;;;;;;;;;:::i;:::-;;6224:53;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4071:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6284:53;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7216:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7632:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6344:53;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5595:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12581:671;;;;;;;;;;;;;:::i;:::-;;12148:164;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7807:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7125:83;7162:13;7195:5;;;;;;;;;;;;;;;;;7188:12;;7125:83;:::o;7958:161::-;8033:4;8050:39;8059:12;:10;:12::i;:::-;8073:7;8082:6;8050:8;:39::i;:::-;8107:4;8100:11;;7958:161;;;;:::o;6404:48::-;;;;:::o;7402:95::-;7455:7;6038:1;6091:2;:13;;;;:::i;:::-;6081:7;:23;;;;:::i;:::-;7475:14;;7402:95;:::o;8127:313::-;8225:4;8242:36;8252:6;8260:9;8271:6;8242:9;:36::i;:::-;8289:121;8298:6;8306:12;:10;:12::i;:::-;8320:89;8358:6;8320:89;;;;;;;;;;;;;;;;;:11;:19;8332:6;8320:19;;;;;;;;;;;;;;;:33;8340:12;:10;:12::i;:::-;8320:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;8289:8;:121::i;:::-;8428:4;8421:11;;8127:313;;;;;:::o;7311:83::-;7352:5;6038:1;7370:16;;7311:83;:::o;12320:162::-;4208:12;:10;:12::i;:::-;4198:22;;:6;;;;;;;;;;:22;;;4190:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12393:6:::1;12388:87;12409:6;:13;12405:1;:17;12388:87;;;12460:5;12442:4;:15;12447:6;12454:1;12447:9;;;;;;;;:::i;:::-;;;;;;;;12442:15;;;;;;;;;;;;;;;;:23;;;;;;;;;;;;;;;;;;12424:3;;;;;:::i;:::-;;;;12388:87;;;;12320:162:::0;:::o;12490:83::-;12537:4;12558;:7;12563:1;12558:7;;;;;;;;;;;;;;;;;;;;;;;;;12551:14;;12490:83;;;:::o;13305:348::-;13369:10;;;;;;;;;;;13355:24;;:12;:10;:12::i;:::-;:24;;;13347:33;;;;;;13391:20;13412:24;13430:4;13412:9;:24::i;:::-;13391:45;;13463:1;13450:12;:14;13447:73;;;13478:30;13495:12;13478:16;:30::i;:::-;13447:73;13530:18;13549:21;13530:40;;13595:1;13584:10;:12;13581:65;;;13610:24;13623:10;13610:12;:24::i;:::-;13581:65;13336:317;;13305:348::o;7505:119::-;7571:7;7598:9;:18;7608:7;7598:18;;;;;;;;;;;;;;;;7591:25;;7505:119;;;:::o;4285:148::-;4208:12;:10;:12::i;:::-;4198:22;;:6;;;;;;;;;;:22;;;4190:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;4392:1:::1;4355:40;;4376:6;::::0;::::1;;;;;;;;4355:40;;;;;;;;;;;;4423:1;4406:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;4285:148::o:0;11844:196::-;4208:12;:10;:12::i;:::-;4198:22;;:6;;;;;;;;;;:22;;;4190:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;6038:1:::1;6091:2;:13;;;;:::i;:::-;6081:7;:23;;;;:::i;:::-;11897:12;:22;;;;6038:1;6091:2;:13;;;;:::i;:::-;6081:7;:23;;;;:::i;:::-;11930:14;:22;;;;11984:5;11963:20;;:26;;;;;;;;;;;;;;;;;;12005:27;6038:1;6091:2;:13;;;;:::i;:::-;6081:7;:23;;;;:::i;:::-;12005:27;;;;;;:::i;:::-;;;;;;;;11844:196::o:0;6224:53::-;;;;:::o;4071:79::-;4109:7;4136:6;;;;;;;;;;;4129:13;;4071:79;:::o;6284:53::-;;;;:::o;7216:87::-;7255:13;7288:7;;;;;;;;;;;;;;;;;7281:14;;7216:87;:::o;7632:167::-;7710:4;7727:42;7737:12;:10;:12::i;:::-;7751:9;7762:6;7727:9;:42::i;:::-;7787:4;7780:11;;7632:167;;;;:::o;6344:53::-;;;;:::o;5595:39::-;;;;;;;;;;;;;:::o;12581:671::-;4208:12;:10;:12::i;:::-;4198:22;;:6;;;;;;;;;;:22;;;4190:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12645:11:::1;::::0;::::1;;;;;;;;12644:12;12636:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;12731:42;12694:15;;:80;;;;;;;;;;;;;;;;;;12785:58;12802:4;12817:15;;;;;;;;;;;6038:1;6091:2;:13;;;;:::i;:::-;6081:7;:23;;;;:::i;:::-;12785:8;:58::i;:::-;12888:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12870:55;;;12934:4;12941:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12870:94;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12854:13;;:110;;;;;;;;;;;;;;;;;;12975:15;;;;;;;;;;;:31;;;13014:21;13045:4;13051:24;13069:4;13051:9;:24::i;:::-;13076:1;13078::::0;13080:7:::1;:5;:7::i;:::-;13088:15;12975:129;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;13122:13;;;;;;;;;;;13115:29;;;13153:15;;;;;;;;;;;13171:14;13115:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;13211:4;13197:11;;:18;;;;;;;;;;;;;;;;;;13240:4;13226:11;::::0;:18:::1;;;;;;;;;;;;;;;;;;12581:671::o:0;12148:164::-;4208:12;:10;:12::i;:::-;4198:22;;:6;;;;;;;;;;:22;;;4190:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12222:6:::1;12217:88;12238:5;:12;12234:1;:16;12217:88;;;12289:4;12272;:14;12277:5;12283:1;12277:8;;;;;;;;:::i;:::-;;;;;;;;12272:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;12252:3;;;;;:::i;:::-;;;;12217:88;;;;12148:164:::0;:::o;7807:143::-;7888:7;7915:11;:18;7927:5;7915:18;;;;;;;;;;;;;;;:27;7934:7;7915:27;;;;;;;;;;;;;;;;7908:34;;7807:143;;;;:::o;1826:98::-;1879:7;1906:10;1899:17;;1826:98;:::o;8448:335::-;8558:1;8541:19;;:5;:19;;;;8533:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8639:1;8620:21;;:7;:21;;;;8612:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8721:6;8691:11;:18;8703:5;8691:18;;;;;;;;;;;;;;;:27;8710:7;8691:27;;;;;;;;;;;;;;;:36;;;;8759:7;8743:32;;8752:5;8743:32;;;8768:6;8743:32;;;;;;:::i;:::-;;;;;;;;8448:335;;;:::o;8791:2446::-;8895:1;8879:18;;:4;:18;;;;8871:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8972:1;8958:16;;:2;:16;;;;8950:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;9042:1;9033:6;:10;9025:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;9100:17;9142:7;:5;:7::i;:::-;9134:15;;:4;:15;;;;:32;;;;;9159:7;:5;:7::i;:::-;9153:13;;:2;:13;;;;9134:32;9130:1751;;;9192:4;:10;9197:4;9192:10;;;;;;;;;;;;;;;;;;;;;;;;;9191:11;:24;;;;;9207:4;:8;9212:2;9207:8;;;;;;;;;;;;;;;;;;;;;;;;;9206:9;9191:24;9183:33;;;;;;9243:76;9315:3;9243:67;9265:15;;9255:9;;:25;9254:55;;9295:14;;9254:55;;;9282:12;;9254:55;9243:6;:10;;:67;;;;:::i;:::-;:71;;:76;;;;:::i;:::-;9231:88;;9340:20;;;;;;;;;;;9336:508;;;9401:15;;;;;;;;;;;9387:30;;:2;:30;;;;:62;;;;;9435:13;;;;;;;;;;;9421:28;;:2;:28;;;;9387:62;9383:444;;;9585:12;9512:28;:39;9541:9;9512:39;;;;;;;;;;;;;;;;:85;9476:250;;;;;;;;;;;;:::i;:::-;;;;;;;;;9793:12;9751:28;:39;9780:9;9751:39;;;;;;;;;;;;;;;:54;;;;9383:444;9336:508;9872:13;;;;;;;;;;;9864:21;;:4;:21;;;:55;;;;;9903:15;;;;;;;;;;;9889:30;;:2;:30;;;;9864:55;:83;;;;;9925:18;:22;9944:2;9925:22;;;;;;;;;;;;;;;;;;;;;;;;;9923:24;9864:83;9860:313;;;9987:12;;9977:6;:22;;9969:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;10082:14;;10072:6;10056:13;10066:2;10056:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;10048:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;10146:9;;:11;;;;;;;;;:::i;:::-;;;;;;9860:313;10198:13;;;;;;;;;;;10192:19;;:2;:19;;;:43;;;;;10230:4;10215:20;;:4;:20;;;;10192:43;10189:174;;;10268:79;10343:3;10268:70;10290:16;;10280:9;;:26;10279:58;;10322:15;;10279:58;;;10308:13;;10279:58;10268:6;:10;;:70;;;;:::i;:::-;:74;;:79;;;;:::i;:::-;10256:91;;10189:174;10379:28;10410:24;10428:4;10410:9;:24::i;:::-;10379:55;;10454:6;;;;;;;;;;;10453:7;:32;;;;;10472:13;;;;;;;;;;;10464:21;;:2;:21;;;10453:32;:47;;;;;10489:11;;;;;;;;;;;10453:47;:89;;;;;10525:17;;10504:20;:38;10453:89;:121;;;;;10556:18;;10546:9;;:28;10453:121;10449:421;;;10595:67;10612:49;10616:6;10623:37;10627:20;10648:11;;10623:3;:37::i;:::-;10612:3;:49::i;:::-;10595:16;:67::i;:::-;10681:26;10710:21;10681:50;;10774:1;10753:18;:22;10750:105;;;10800:35;10813:21;10800:12;:35::i;:::-;10750:105;10576:294;10449:421;9168:1713;9130:1751;10906:1;10896:9;:11;10893:161;;;10946:39;10975:9;10946;:24;10964:4;10946:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;10921:9;:24;10939:4;10921:24;;;;;;;;;;;;;;;:64;;;;11026:4;11003:39;;11012:4;11003:39;;;11032:9;11003:39;;;;;;:::i;:::-;;;;;;;;10893:161;11080:27;11100:6;11080:9;:15;11090:4;11080:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;11064:9;:15;11074:4;11064:15;;;;;;;;;;;;;;;:43;;;;11132:40;11150:21;11161:9;11150:6;:10;;:21;;;;:::i;:::-;11132:9;:13;11142:2;11132:13;;;;;;;;;;;;;;;;:17;;:40;;;;:::i;:::-;11118:9;:13;11128:2;11118:13;;;;;;;;;;;;;;;:54;;;;11203:2;11188:41;;11197:4;11188:41;;;11207:21;11218:9;11207:6;:10;;:21;;;;:::i;:::-;11188:41;;;;;;:::i;:::-;;;;;;;;8860:2377;8791:2446;;;:::o;2963:190::-;3049:7;3082:1;3077;:6;;3085:12;3069:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;3109:9;3125:1;3121;:5;;;;:::i;:::-;3109:17;;3144:1;3137:8;;;2963:190;;;;;:::o;11353:483::-;6743:4;6734:6;;:13;;;;;;;;;;;;;;;;;;11431:21:::1;11469:1;11455:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11431:40;;11500:4;11482;11487:1;11482:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;11526:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11516:4;11521:1;11516:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;11559:62;11576:4;11591:15;;;;;;;;;;;11609:11;11559:8;:62::i;:::-;11632:15;;;;;;;;;;;:66;;;11713:11;11739:1;11755:4;11782;11802:15;11632:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;11420:416;6779:5:::0;6770:6;;:14;;;;;;;;;;;;;;;;;;11353:483;:::o;12048:92::-;12105:10;;;;;;;;;;;:19;;:27;12125:6;12105:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12048:92;:::o;3161:246::-;3219:7;3248:1;3243;:6;3239:47;;;3273:1;3266:8;;;;3239:47;3296:9;3312:1;3308;:5;;;;:::i;:::-;3296:17;;3341:1;3336;3332;:5;;;;:::i;:::-;:10;3324:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;3398:1;3391:8;;;3161:246;;;;;:::o;3415:132::-;3473:7;3500:39;3504:1;3507;3500:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;3493:46;;3415:132;;;;:::o;11247:98::-;11304:7;11331:1;11329;:3;11328:9;;11336:1;11328:9;;;11334:1;11328:9;11321:16;;11247:98;;;;:::o;2632:179::-;2690:7;2710:9;2726:1;2722;:5;;;;:::i;:::-;2710:17;;2751:1;2746;:6;;2738:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;2802:1;2795:8;;;2632:179;;;;:::o;2819:136::-;2877:7;2904:43;2908:1;2911;2904:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;2897:50;;2819:136;;;;:::o;3555:189::-;3641:7;3673:1;3669;:5;3676:12;3661:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;3700:9;3716:1;3712;:5;;;;:::i;:::-;3700:17;;3735:1;3728:8;;;3555:189;;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:307::-;355:1;365:113;379:6;376:1;373:13;365:113;;;464:1;459:3;455:11;449:18;445:1;440:3;436:11;429:39;401:2;398:1;394:10;389:15;;365:113;;;496:6;493:1;490:13;487:101;;;576:1;567:6;562:3;558:16;551:27;487:101;336:258;287:307;;;:::o;600:102::-;641:6;692:2;688:7;683:2;676:5;672:14;668:28;658:38;;600:102;;;:::o;708:364::-;796:3;824:39;857:5;824:39;:::i;:::-;879:71;943:6;938:3;879:71;:::i;:::-;872:78;;959:52;1004:6;999:3;992:4;985:5;981:16;959:52;:::i;:::-;1036:29;1058:6;1036:29;:::i;:::-;1031:3;1027:39;1020:46;;800:272;708:364;;;;:::o;1078:313::-;1191:4;1229:2;1218:9;1214:18;1206:26;;1278:9;1272:4;1268:20;1264:1;1253:9;1249:17;1242:47;1306:78;1379:4;1370:6;1306:78;:::i;:::-;1298:86;;1078:313;;;;:::o;1397:75::-;1430:6;1463:2;1457:9;1447:19;;1397:75;:::o;1478:117::-;1587:1;1584;1577:12;1601:117;1710:1;1707;1700:12;1724:126;1761:7;1801:42;1794:5;1790:54;1779:65;;1724:126;;;:::o;1856:96::-;1893:7;1922:24;1940:5;1922:24;:::i;:::-;1911:35;;1856:96;;;:::o;1958:122::-;2031:24;2049:5;2031:24;:::i;:::-;2024:5;2021:35;2011:63;;2070:1;2067;2060:12;2011:63;1958:122;:::o;2086:139::-;2132:5;2170:6;2157:20;2148:29;;2186:33;2213:5;2186:33;:::i;:::-;2086:139;;;;:::o;2231:77::-;2268:7;2297:5;2286:16;;2231:77;;;:::o;2314:122::-;2387:24;2405:5;2387:24;:::i;:::-;2380:5;2377:35;2367:63;;2426:1;2423;2416:12;2367:63;2314:122;:::o;2442:139::-;2488:5;2526:6;2513:20;2504:29;;2542:33;2569:5;2542:33;:::i;:::-;2442:139;;;;:::o;2587:474::-;2655:6;2663;2712:2;2700:9;2691:7;2687:23;2683:32;2680:119;;;2718:79;;:::i;:::-;2680:119;2838:1;2863:53;2908:7;2899:6;2888:9;2884:22;2863:53;:::i;:::-;2853:63;;2809:117;2965:2;2991:53;3036:7;3027:6;3016:9;3012:22;2991:53;:::i;:::-;2981:63;;2936:118;2587:474;;;;;:::o;3067:90::-;3101:7;3144:5;3137:13;3130:21;3119:32;;3067:90;;;:::o;3163:109::-;3244:21;3259:5;3244:21;:::i;:::-;3239:3;3232:34;3163:109;;:::o;3278:210::-;3365:4;3403:2;3392:9;3388:18;3380:26;;3416:65;3478:1;3467:9;3463:17;3454:6;3416:65;:::i;:::-;3278:210;;;;:::o;3494:118::-;3581:24;3599:5;3581:24;:::i;:::-;3576:3;3569:37;3494:118;;:::o;3618:222::-;3711:4;3749:2;3738:9;3734:18;3726:26;;3762:71;3830:1;3819:9;3815:17;3806:6;3762:71;:::i;:::-;3618:222;;;;:::o;3846:619::-;3923:6;3931;3939;3988:2;3976:9;3967:7;3963:23;3959:32;3956:119;;;3994:79;;:::i;:::-;3956:119;4114:1;4139:53;4184:7;4175:6;4164:9;4160:22;4139:53;:::i;:::-;4129:63;;4085:117;4241:2;4267:53;4312:7;4303:6;4292:9;4288:22;4267:53;:::i;:::-;4257:63;;4212:118;4369:2;4395:53;4440:7;4431:6;4420:9;4416:22;4395:53;:::i;:::-;4385:63;;4340:118;3846:619;;;;;:::o;4471:86::-;4506:7;4546:4;4539:5;4535:16;4524:27;;4471:86;;;:::o;4563:112::-;4646:22;4662:5;4646:22;:::i;:::-;4641:3;4634:35;4563:112;;:::o;4681:214::-;4770:4;4808:2;4797:9;4793:18;4785:26;;4821:67;4885:1;4874:9;4870:17;4861:6;4821:67;:::i;:::-;4681:214;;;;:::o;4901:117::-;5010:1;5007;5000:12;5024:180;5072:77;5069:1;5062:88;5169:4;5166:1;5159:15;5193:4;5190:1;5183:15;5210:281;5293:27;5315:4;5293:27;:::i;:::-;5285:6;5281:40;5423:6;5411:10;5408:22;5387:18;5375:10;5372:34;5369:62;5366:88;;;5434:18;;:::i;:::-;5366:88;5474:10;5470:2;5463:22;5253:238;5210:281;;:::o;5497:129::-;5531:6;5558:20;;:::i;:::-;5548:30;;5587:33;5615:4;5607:6;5587:33;:::i;:::-;5497:129;;;:::o;5632:311::-;5709:4;5799:18;5791:6;5788:30;5785:56;;;5821:18;;:::i;:::-;5785:56;5871:4;5863:6;5859:17;5851:25;;5931:4;5925;5921:15;5913:23;;5632:311;;;:::o;5949:117::-;6058:1;6055;6048:12;6089:710;6185:5;6210:81;6226:64;6283:6;6226:64;:::i;:::-;6210:81;:::i;:::-;6201:90;;6311:5;6340:6;6333:5;6326:21;6374:4;6367:5;6363:16;6356:23;;6427:4;6419:6;6415:17;6407:6;6403:30;6456:3;6448:6;6445:15;6442:122;;;6475:79;;:::i;:::-;6442:122;6590:6;6573:220;6607:6;6602:3;6599:15;6573:220;;;6682:3;6711:37;6744:3;6732:10;6711:37;:::i;:::-;6706:3;6699:50;6778:4;6773:3;6769:14;6762:21;;6649:144;6633:4;6628:3;6624:14;6617:21;;6573:220;;;6577:21;6191:608;;6089:710;;;;;:::o;6822:370::-;6893:5;6942:3;6935:4;6927:6;6923:17;6919:27;6909:122;;6950:79;;:::i;:::-;6909:122;7067:6;7054:20;7092:94;7182:3;7174:6;7167:4;7159:6;7155:17;7092:94;:::i;:::-;7083:103;;6899:293;6822:370;;;;:::o;7198:539::-;7282:6;7331:2;7319:9;7310:7;7306:23;7302:32;7299:119;;;7337:79;;:::i;:::-;7299:119;7485:1;7474:9;7470:17;7457:31;7515:18;7507:6;7504:30;7501:117;;;7537:79;;:::i;:::-;7501:117;7642:78;7712:7;7703:6;7692:9;7688:22;7642:78;:::i;:::-;7632:88;;7428:302;7198:539;;;;:::o;7743:329::-;7802:6;7851:2;7839:9;7830:7;7826:23;7822:32;7819:119;;;7857:79;;:::i;:::-;7819:119;7977:1;8002:53;8047:7;8038:6;8027:9;8023:22;8002:53;:::i;:::-;7992:63;;7948:117;7743:329;;;;:::o;8078:118::-;8165:24;8183:5;8165:24;:::i;:::-;8160:3;8153:37;8078:118;;:::o;8202:222::-;8295:4;8333:2;8322:9;8318:18;8310:26;;8346:71;8414:1;8403:9;8399:17;8390:6;8346:71;:::i;:::-;8202:222;;;;:::o;8430:474::-;8498:6;8506;8555:2;8543:9;8534:7;8530:23;8526:32;8523:119;;;8561:79;;:::i;:::-;8523:119;8681:1;8706:53;8751:7;8742:6;8731:9;8727:22;8706:53;:::i;:::-;8696:63;;8652:117;8808:2;8834:53;8879:7;8870:6;8859:9;8855:22;8834:53;:::i;:::-;8824:63;;8779:118;8430:474;;;;;:::o;8910:180::-;8958:77;8955:1;8948:88;9055:4;9052:1;9045:15;9079:4;9076:1;9069:15;9096:102;9138:8;9185:5;9182:1;9178:13;9157:34;;9096:102;;;:::o;9204:848::-;9265:5;9272:4;9296:6;9287:15;;9320:5;9311:14;;9334:712;9355:1;9345:8;9342:15;9334:712;;;9450:4;9445:3;9441:14;9435:4;9432:24;9429:50;;;9459:18;;:::i;:::-;9429:50;9509:1;9499:8;9495:16;9492:451;;;9924:4;9917:5;9913:16;9904:25;;9492:451;9974:4;9968;9964:15;9956:23;;10004:32;10027:8;10004:32;:::i;:::-;9992:44;;9334:712;;;9204:848;;;;;;;:::o;10058:1073::-;10112:5;10303:8;10293:40;;10324:1;10315:10;;10326:5;;10293:40;10352:4;10342:36;;10369:1;10360:10;;10371:5;;10342:36;10438:4;10486:1;10481:27;;;;10522:1;10517:191;;;;10431:277;;10481:27;10499:1;10490:10;;10501:5;;;10517:191;10562:3;10552:8;10549:17;10546:43;;;10569:18;;:::i;:::-;10546:43;10618:8;10615:1;10611:16;10602:25;;10653:3;10646:5;10643:14;10640:40;;;10660:18;;:::i;:::-;10640:40;10693:5;;;10431:277;;10817:2;10807:8;10804:16;10798:3;10792:4;10789:13;10785:36;10767:2;10757:8;10754:16;10749:2;10743:4;10740:12;10736:35;10720:111;10717:246;;;10873:8;10867:4;10863:19;10854:28;;10908:3;10901:5;10898:14;10895:40;;;10915:18;;:::i;:::-;10895:40;10948:5;;10717:246;10988:42;11026:3;11016:8;11010:4;11007:1;10988:42;:::i;:::-;10973:57;;;;11062:4;11057:3;11053:14;11046:5;11043:25;11040:51;;;11071:18;;:::i;:::-;11040:51;11120:4;11113:5;11109:16;11100:25;;10058:1073;;;;;;:::o;11137:281::-;11195:5;11219:23;11237:4;11219:23;:::i;:::-;11211:31;;11263:25;11279:8;11263:25;:::i;:::-;11251:37;;11307:104;11344:66;11334:8;11328:4;11307:104;:::i;:::-;11298:113;;11137:281;;;;:::o;11424:348::-;11464:7;11487:20;11505:1;11487:20;:::i;:::-;11482:25;;11521:20;11539:1;11521:20;:::i;:::-;11516:25;;11709:1;11641:66;11637:74;11634:1;11631:81;11626:1;11619:9;11612:17;11608:105;11605:131;;;11716:18;;:::i;:::-;11605:131;11764:1;11761;11757:9;11746:20;;11424:348;;;;:::o;11778:182::-;11918:34;11914:1;11906:6;11902:14;11895:58;11778:182;:::o;11966:366::-;12108:3;12129:67;12193:2;12188:3;12129:67;:::i;:::-;12122:74;;12205:93;12294:3;12205:93;:::i;:::-;12323:2;12318:3;12314:12;12307:19;;11966:366;;;:::o;12338:419::-;12504:4;12542:2;12531:9;12527:18;12519:26;;12591:9;12585:4;12581:20;12577:1;12566:9;12562:17;12555:47;12619:131;12745:4;12619:131;:::i;:::-;12611:139;;12338:419;;;:::o;12763:180::-;12811:77;12808:1;12801:88;12908:4;12905:1;12898:15;12932:4;12929:1;12922:15;12949:233;12988:3;13011:24;13029:5;13011:24;:::i;:::-;13002:33;;13057:66;13050:5;13047:77;13044:103;;;13127:18;;:::i;:::-;13044:103;13174:1;13167:5;13163:13;13156:20;;12949:233;;;:::o;13188:173::-;13328:25;13324:1;13316:6;13312:14;13305:49;13188:173;:::o;13367:366::-;13509:3;13530:67;13594:2;13589:3;13530:67;:::i;:::-;13523:74;;13606:93;13695:3;13606:93;:::i;:::-;13724:2;13719:3;13715:12;13708:19;;13367:366;;;:::o;13739:419::-;13905:4;13943:2;13932:9;13928:18;13920:26;;13992:9;13986:4;13982:20;13978:1;13967:9;13963:17;13956:47;14020:131;14146:4;14020:131;:::i;:::-;14012:139;;13739:419;;;:::o;14164:143::-;14221:5;14252:6;14246:13;14237:22;;14268:33;14295:5;14268:33;:::i;:::-;14164:143;;;;:::o;14313:351::-;14383:6;14432:2;14420:9;14411:7;14407:23;14403:32;14400:119;;;14438:79;;:::i;:::-;14400:119;14558:1;14583:64;14639:7;14630:6;14619:9;14615:22;14583:64;:::i;:::-;14573:74;;14529:128;14313:351;;;;:::o;14670:332::-;14791:4;14829:2;14818:9;14814:18;14806:26;;14842:71;14910:1;14899:9;14895:17;14886:6;14842:71;:::i;:::-;14923:72;14991:2;14980:9;14976:18;14967:6;14923:72;:::i;:::-;14670:332;;;;;:::o;15008:85::-;15053:7;15082:5;15071:16;;15008:85;;;:::o;15099:60::-;15127:3;15148:5;15141:12;;15099:60;;;:::o;15165:158::-;15223:9;15256:61;15274:42;15283:32;15309:5;15283:32;:::i;:::-;15274:42;:::i;:::-;15256:61;:::i;:::-;15243:74;;15165:158;;;:::o;15329:147::-;15424:45;15463:5;15424:45;:::i;:::-;15419:3;15412:58;15329:147;;:::o;15482:807::-;15731:4;15769:3;15758:9;15754:19;15746:27;;15783:71;15851:1;15840:9;15836:17;15827:6;15783:71;:::i;:::-;15864:72;15932:2;15921:9;15917:18;15908:6;15864:72;:::i;:::-;15946:80;16022:2;16011:9;16007:18;15998:6;15946:80;:::i;:::-;16036;16112:2;16101:9;16097:18;16088:6;16036:80;:::i;:::-;16126:73;16194:3;16183:9;16179:19;16170:6;16126:73;:::i;:::-;16209;16277:3;16266:9;16262:19;16253:6;16209:73;:::i;:::-;15482:807;;;;;;;;;:::o;16295:143::-;16352:5;16383:6;16377:13;16368:22;;16399:33;16426:5;16399:33;:::i;:::-;16295:143;;;;:::o;16444:663::-;16532:6;16540;16548;16597:2;16585:9;16576:7;16572:23;16568:32;16565:119;;;16603:79;;:::i;:::-;16565:119;16723:1;16748:64;16804:7;16795:6;16784:9;16780:22;16748:64;:::i;:::-;16738:74;;16694:128;16861:2;16887:64;16943:7;16934:6;16923:9;16919:22;16887:64;:::i;:::-;16877:74;;16832:129;17000:2;17026:64;17082:7;17073:6;17062:9;17058:22;17026:64;:::i;:::-;17016:74;;16971:129;16444:663;;;;;:::o;17113:332::-;17234:4;17272:2;17261:9;17257:18;17249:26;;17285:71;17353:1;17342:9;17338:17;17329:6;17285:71;:::i;:::-;17366:72;17434:2;17423:9;17419:18;17410:6;17366:72;:::i;:::-;17113:332;;;;;:::o;17451:116::-;17521:21;17536:5;17521:21;:::i;:::-;17514:5;17511:32;17501:60;;17557:1;17554;17547:12;17501:60;17451:116;:::o;17573:137::-;17627:5;17658:6;17652:13;17643:22;;17674:30;17698:5;17674:30;:::i;:::-;17573:137;;;;:::o;17716:345::-;17783:6;17832:2;17820:9;17811:7;17807:23;17803:32;17800:119;;;17838:79;;:::i;:::-;17800:119;17958:1;17983:61;18036:7;18027:6;18016:9;18012:22;17983:61;:::i;:::-;17973:71;;17929:125;17716:345;;;;:::o;18067:223::-;18207:34;18203:1;18195:6;18191:14;18184:58;18276:6;18271:2;18263:6;18259:15;18252:31;18067:223;:::o;18296:366::-;18438:3;18459:67;18523:2;18518:3;18459:67;:::i;:::-;18452:74;;18535:93;18624:3;18535:93;:::i;:::-;18653:2;18648:3;18644:12;18637:19;;18296:366;;;:::o;18668:419::-;18834:4;18872:2;18861:9;18857:18;18849:26;;18921:9;18915:4;18911:20;18907:1;18896:9;18892:17;18885:47;18949:131;19075:4;18949:131;:::i;:::-;18941:139;;18668:419;;;:::o;19093:221::-;19233:34;19229:1;19221:6;19217:14;19210:58;19302:4;19297:2;19289:6;19285:15;19278:29;19093:221;:::o;19320:366::-;19462:3;19483:67;19547:2;19542:3;19483:67;:::i;:::-;19476:74;;19559:93;19648:3;19559:93;:::i;:::-;19677:2;19672:3;19668:12;19661:19;;19320:366;;;:::o;19692:419::-;19858:4;19896:2;19885:9;19881:18;19873:26;;19945:9;19939:4;19935:20;19931:1;19920:9;19916:17;19909:47;19973:131;20099:4;19973:131;:::i;:::-;19965:139;;19692:419;;;:::o;20117:224::-;20257:34;20253:1;20245:6;20241:14;20234:58;20326:7;20321:2;20313:6;20309:15;20302:32;20117:224;:::o;20347:366::-;20489:3;20510:67;20574:2;20569:3;20510:67;:::i;:::-;20503:74;;20586:93;20675:3;20586:93;:::i;:::-;20704:2;20699:3;20695:12;20688:19;;20347:366;;;:::o;20719:419::-;20885:4;20923:2;20912:9;20908:18;20900:26;;20972:9;20966:4;20962:20;20958:1;20947:9;20943:17;20936:47;21000:131;21126:4;21000:131;:::i;:::-;20992:139;;20719:419;;;:::o;21144:222::-;21284:34;21280:1;21272:6;21268:14;21261:58;21353:5;21348:2;21340:6;21336:15;21329:30;21144:222;:::o;21372:366::-;21514:3;21535:67;21599:2;21594:3;21535:67;:::i;:::-;21528:74;;21611:93;21700:3;21611:93;:::i;:::-;21729:2;21724:3;21720:12;21713:19;;21372:366;;;:::o;21744:419::-;21910:4;21948:2;21937:9;21933:18;21925:26;;21997:9;21991:4;21987:20;21983:1;21972:9;21968:17;21961:47;22025:131;22151:4;22025:131;:::i;:::-;22017:139;;21744:419;;;:::o;22169:228::-;22309:34;22305:1;22297:6;22293:14;22286:58;22378:11;22373:2;22365:6;22361:15;22354:36;22169:228;:::o;22403:366::-;22545:3;22566:67;22630:2;22625:3;22566:67;:::i;:::-;22559:74;;22642:93;22731:3;22642:93;:::i;:::-;22760:2;22755:3;22751:12;22744:19;;22403:366;;;:::o;22775:419::-;22941:4;22979:2;22968:9;22964:18;22956:26;;23028:9;23022:4;23018:20;23014:1;23003:9;22999:17;22992:47;23056:131;23182:4;23056:131;:::i;:::-;23048:139;;22775:419;;;:::o;23200:297::-;23340:34;23336:1;23328:6;23324:14;23317:58;23409:34;23404:2;23396:6;23392:15;23385:59;23478:11;23473:2;23465:6;23461:15;23454:36;23200:297;:::o;23503:366::-;23645:3;23666:67;23730:2;23725:3;23666:67;:::i;:::-;23659:74;;23742:93;23831:3;23742:93;:::i;:::-;23860:2;23855:3;23851:12;23844:19;;23503:366;;;:::o;23875:419::-;24041:4;24079:2;24068:9;24064:18;24056:26;;24128:9;24122:4;24118:20;24114:1;24103:9;24099:17;24092:47;24156:131;24282:4;24156:131;:::i;:::-;24148:139;;23875:419;;;:::o;24300:175::-;24440:27;24436:1;24428:6;24424:14;24417:51;24300:175;:::o;24481:366::-;24623:3;24644:67;24708:2;24703:3;24644:67;:::i;:::-;24637:74;;24720:93;24809:3;24720:93;:::i;:::-;24838:2;24833:3;24829:12;24822:19;;24481:366;;;:::o;24853:419::-;25019:4;25057:2;25046:9;25042:18;25034:26;;25106:9;25100:4;25096:20;25092:1;25081:9;25077:17;25070:47;25134:131;25260:4;25134:131;:::i;:::-;25126:139;;24853:419;;;:::o;25278:305::-;25318:3;25337:20;25355:1;25337:20;:::i;:::-;25332:25;;25371:20;25389:1;25371:20;:::i;:::-;25366:25;;25525:1;25457:66;25453:74;25450:1;25447:81;25444:107;;;25531:18;;:::i;:::-;25444:107;25575:1;25572;25568:9;25561:16;;25278:305;;;;:::o;25589:176::-;25729:28;25725:1;25717:6;25713:14;25706:52;25589:176;:::o;25771:366::-;25913:3;25934:67;25998:2;25993:3;25934:67;:::i;:::-;25927:74;;26010:93;26099:3;26010:93;:::i;:::-;26128:2;26123:3;26119:12;26112:19;;25771:366;;;:::o;26143:419::-;26309:4;26347:2;26336:9;26332:18;26324:26;;26396:9;26390:4;26386:20;26382:1;26371:9;26367:17;26360:47;26424:131;26550:4;26424:131;:::i;:::-;26416:139;;26143:419;;;:::o;26568:191::-;26608:4;26628:20;26646:1;26628:20;:::i;:::-;26623:25;;26662:20;26680:1;26662:20;:::i;:::-;26657:25;;26701:1;26698;26695:8;26692:34;;;26706:18;;:::i;:::-;26692:34;26751:1;26748;26744:9;26736:17;;26568:191;;;;:::o;26765:114::-;26832:6;26866:5;26860:12;26850:22;;26765:114;;;:::o;26885:184::-;26984:11;27018:6;27013:3;27006:19;27058:4;27053:3;27049:14;27034:29;;26885:184;;;;:::o;27075:132::-;27142:4;27165:3;27157:11;;27195:4;27190:3;27186:14;27178:22;;27075:132;;;:::o;27213:108::-;27290:24;27308:5;27290:24;:::i;:::-;27285:3;27278:37;27213:108;;:::o;27327:179::-;27396:10;27417:46;27459:3;27451:6;27417:46;:::i;:::-;27495:4;27490:3;27486:14;27472:28;;27327:179;;;;:::o;27512:113::-;27582:4;27614;27609:3;27605:14;27597:22;;27512:113;;;:::o;27661:732::-;27780:3;27809:54;27857:5;27809:54;:::i;:::-;27879:86;27958:6;27953:3;27879:86;:::i;:::-;27872:93;;27989:56;28039:5;27989:56;:::i;:::-;28068:7;28099:1;28084:284;28109:6;28106:1;28103:13;28084:284;;;28185:6;28179:13;28212:63;28271:3;28256:13;28212:63;:::i;:::-;28205:70;;28298:60;28351:6;28298:60;:::i;:::-;28288:70;;28144:224;28131:1;28128;28124:9;28119:14;;28084:284;;;28088:14;28384:3;28377:10;;27785:608;;;27661:732;;;;:::o;28399:831::-;28662:4;28700:3;28689:9;28685:19;28677:27;;28714:71;28782:1;28771:9;28767:17;28758:6;28714:71;:::i;:::-;28795:80;28871:2;28860:9;28856:18;28847:6;28795:80;:::i;:::-;28922:9;28916:4;28912:20;28907:2;28896:9;28892:18;28885:48;28950:108;29053:4;29044:6;28950:108;:::i;:::-;28942:116;;29068:72;29136:2;29125:9;29121:18;29112:6;29068:72;:::i;:::-;29150:73;29218:3;29207:9;29203:19;29194:6;29150:73;:::i;:::-;28399:831;;;;;;;;:::o;29236:180::-;29284:77;29281:1;29274:88;29381:4;29378:1;29371:15;29405:4;29402:1;29395:15;29422:185;29462:1;29479:20;29497:1;29479:20;:::i;:::-;29474:25;;29513:20;29531:1;29513:20;:::i;:::-;29508:25;;29552:1;29542:35;;29557:18;;:::i;:::-;29542:35;29599:1;29596;29592:9;29587:14;;29422:185;;;;:::o;29613:220::-;29753:34;29749:1;29741:6;29737:14;29730:58;29822:3;29817:2;29809:6;29805:15;29798:28;29613:220;:::o;29839:366::-;29981:3;30002:67;30066:2;30061:3;30002:67;:::i;:::-;29995:74;;30078:93;30167:3;30078:93;:::i;:::-;30196:2;30191:3;30187:12;30180:19;;29839:366;;;:::o;30211:419::-;30377:4;30415:2;30404:9;30400:18;30392:26;;30464:9;30458:4;30454:20;30450:1;30439:9;30435:17;30428:47;30492:131;30618:4;30492:131;:::i;:::-;30484:139;;30211:419;;;:::o;30636:177::-;30776:29;30772:1;30764:6;30760:14;30753:53;30636:177;:::o;30819:366::-;30961:3;30982:67;31046:2;31041:3;30982:67;:::i;:::-;30975:74;;31058:93;31147:3;31058:93;:::i;:::-;31176:2;31171:3;31167:12;31160:19;;30819:366;;;:::o;31191:419::-;31357:4;31395:2;31384:9;31380:18;31372:26;;31444:9;31438:4;31434:20;31430:1;31419:9;31415:17;31408:47;31472:131;31598:4;31472:131;:::i;:::-;31464:139;;31191:419;;;:::o
Swarm Source
ipfs://f0e2b3b42c1d694605e8c5795edfd3e1e41df454b5940cad51d314ade782b3f9
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.