Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
100,000,000,000 TWCKEN
Holders
12
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Filtered by Token Holder
Balance
0.000000026 TWCKENValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
TWKEN
Compiler Version
v0.8.17+commit.8df45f5f
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-10-30 */ // SPDX-License-Identifier: UNLICENSED /* https://t.me/tweetgemprotal https://twitter.com/elonmusk/status/1586690742151307264 */ pragma solidity 0.8.17; 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; address private _previousOwner; 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 TWKEN is Context, IERC20, Ownable { using SafeMath for uint256; mapping (address => uint256) private _rOwned; mapping (address => uint256) private _tOwned; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private _isExcludedFromFee; mapping (address => uint) private cooldown; uint256 private constant MAX = ~uint256(0); uint256 private constant _tTotal = 100000000000 * 10**9; uint256 private _rTotal = (MAX - (MAX % _tTotal)); uint256 private _tFeeTotal; uint256 private _feeAddr1; uint256 private _feeAddr2; uint256 private _standardTax; address payable private _feeAddrWallet; string private constant _name = "Twitter Chicken"; string private constant _symbol = "TWCKEN"; uint8 private constant _decimals = 9; uint256 newtax = 100; IUniswapV2Router02 private uniswapV2Router; address private uniswapV2Pair; bool private tradingOpen; bool private inSwap = false; bool private swapEnabled = false; bool private cooldownEnabled = false; uint256 private _maxTxAmount = _tTotal.mul(2).div(100); uint256 private _maxWalletSize = _tTotal.mul(2).div(100); event MaxTxAmountUpdated(uint _maxTxAmount); modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor () { _feeAddrWallet = payable(_msgSender()); _rOwned[_msgSender()] = _rTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[_feeAddrWallet] = true; _standardTax=5; 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 tokenFromReflection(_rOwned[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 setCooldownEnabled(bool onoff) external onlyOwner() { cooldownEnabled = onoff; } function tokenFromReflection(uint256 rAmount) private view returns(uint256) { require(rAmount <= _rTotal, "Amount must be less than total reflections"); uint256 currentRate = _getRate(); return rAmount.div(currentRate); } 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"); if (from != owner() && to != owner()) { _feeAddr1 = 0; _feeAddr2 = _standardTax; if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] && cooldownEnabled) { // Cooldown require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount."); require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize."); } uint256 contractTokenBalance = balanceOf(address(this)); if (!inSwap && from != uniswapV2Pair && swapEnabled && contractTokenBalance>0) { swapTokensForEth(contractTokenBalance); uint256 contractETHBalance = address(this).balance; if(contractETHBalance > 0) { sendETHToFee(address(this).balance); } } }else{ _feeAddr1 = 0; _feeAddr2 = 0; } _tokenTransfer(from,to,amount); } 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 standardTax(uint256 tax) external onlyOwner{ _standardTax=tax; } function removeLimits() external onlyOwner{ _maxTxAmount = _tTotal; _maxWalletSize = _tTotal; } function sendETHToFee(uint256 amount) private { _feeAddrWallet.transfer(amount); } function openTrading() external onlyOwner() { require(!tradingOpen,"trading is already open"); IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); uniswapV2Router = _uniswapV2Router; _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); swapEnabled = true; cooldownEnabled = true; tradingOpen = true; IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); } function _tokenTransfer(address sender, address recipient, uint256 amount) private { _transferStandard(sender, recipient, amount); } function _transferStandard(address sender, address recipient, uint256 tAmount) private { (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getValues(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); _takeTeam(tTeam); _reflectFee(rFee, tFee); emit Transfer(sender, recipient, tTransferAmount); } function _takeTeam(uint256 tTeam) private { uint256 currentRate = _getRate(); uint256 rTeam = tTeam.mul(currentRate); _rOwned[address(this)] = _rOwned[address(this)].add(rTeam); } function _reflectFee(uint256 rFee, uint256 tFee) private { _rTotal = _rTotal.sub(rFee); _tFeeTotal = _tFeeTotal.add(tFee); } receive() external payable {} function manualswap() external { require(_msgSender() == _feeAddrWallet); uint256 contractBalance = balanceOf(address(this)); swapTokensForEth(contractBalance); } function manualsend() external { require(_msgSender() == _feeAddrWallet); uint256 contractETHBalance = address(this).balance; sendETHToFee(contractETHBalance); } function _getValues(uint256 tAmount) private view returns (uint256, uint256, uint256, uint256, uint256, uint256) { (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getTValues(tAmount, _feeAddr1, _feeAddr2); uint256 currentRate = _getRate(); (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(tAmount, tFee, tTeam, currentRate); return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam); } function _getTValues(uint256 tAmount, uint256 taxFee, uint256 TeamFee) private pure returns (uint256, uint256, uint256) { uint256 tFee = tAmount.mul(taxFee).div(100); uint256 tTeam = tAmount.mul(TeamFee).div(100); uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam); return (tTransferAmount, tFee, tTeam); } function _getRValues(uint256 tAmount, uint256 tFee, uint256 tTeam, uint256 currentRate) private pure returns (uint256, uint256, uint256) { uint256 rAmount = tAmount.mul(currentRate); uint256 rFee = tFee.mul(currentRate); uint256 rTeam = tTeam.mul(currentRate); uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam); return (rAmount, rTransferAmount, rFee); } function _getRate() private view returns(uint256) { (uint256 rSupply, uint256 tSupply) = _getCurrentSupply(); return rSupply.div(tSupply); } function _getCurrentSupply() private view returns(uint256, uint256) { uint256 rSupply = _rTotal; uint256 tSupply = _tTotal; if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal); return (rSupply, tSupply); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"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":[{"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":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","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":[{"internalType":"bool","name":"onoff","type":"bool"}],"name":"setCooldownEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tax","type":"uint256"}],"name":"standardTax","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":[{"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
608060405268056bc75e2d631000006000196200001d9190620005d8565b6000196200002c91906200063f565b6007556064600d556000600f60156101000a81548160ff0219169083151502179055506000600f60166101000a81548160ff0219169083151502179055506000600f60176101000a81548160ff021916908315150217905550620000c36064620000af600268056bc75e2d631000006200043160201b62000fce1790919060201c565b620004b460201b620010481790919060201c565b601055620001046064620000f0600268056bc75e2d631000006200043160201b62000fce1790919060201c565b620004b460201b620010481790919060201c565b6011553480156200011457600080fd5b506000620001276200050660201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350620001d56200050660201b60201c565b600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600754600260006200022c6200050660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160056000620002806200050e60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506005600b81905550620003bb6200050660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef68056bc75e2d631000006040516200042391906200068b565b60405180910390a362000881565b6000808303620004455760009050620004ae565b60008284620004559190620006a8565b9050828482620004669190620006f3565b14620004a9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620004a090620007b2565b60405180910390fd5b809150505b92915050565b6000620004fe83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506200053760201b60201c565b905092915050565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000808311829062000581576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200057891906200085d565b60405180910390fd5b5060008385620005929190620006f3565b9050809150509392505050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000620005e5826200059f565b9150620005f2836200059f565b925082620006055762000604620005a9565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006200064c826200059f565b915062000659836200059f565b925082820390508181111562000674576200067362000610565b5b92915050565b62000685816200059f565b82525050565b6000602082019050620006a260008301846200067a565b92915050565b6000620006b5826200059f565b9150620006c2836200059f565b9250828202620006d2816200059f565b91508282048414831517620006ec57620006eb62000610565b5b5092915050565b600062000700826200059f565b91506200070d836200059f565b92508262000720576200071f620005a9565b5b828204905092915050565b600082825260208201905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b60006200079a6021836200072b565b9150620007a7826200073c565b604082019050919050565b60006020820190508181036000830152620007cd816200078b565b9050919050565b600081519050919050565b60005b83811015620007ff578082015181840152602081019050620007e2565b60008484015250505050565b6000601f19601f8301169050919050565b60006200082982620007d4565b6200083581856200072b565b935062000847818560208601620007df565b62000852816200080b565b840191505092915050565b600060208201905081810360008301526200087981846200081c565b905092915050565b612efc80620008916000396000f3fe6080604052600436106101025760003560e01c806370a082311161009557806395d89b411161006457806395d89b4114610308578063a9059cbb14610333578063c3c8cd8014610370578063c9567bf914610387578063dd62ed3e1461039e57610109565b806370a0823114610272578063715018a6146102af578063751039fc146102c65780638da5cb5b146102dd57610109565b806323b872dd116100d157806323b872dd146101ca578063313ce567146102075780635932ead1146102325780636fc3eaec1461025b57610109565b806306fdde031461010e578063095ea7b31461013957806318160ddd146101765780631879343c146101a157610109565b3661010957005b600080fd5b34801561011a57600080fd5b506101236103db565b60405161013091906120ef565b60405180910390f35b34801561014557600080fd5b50610160600480360381019061015b91906121aa565b610418565b60405161016d9190612205565b60405180910390f35b34801561018257600080fd5b5061018b610436565b604051610198919061222f565b60405180910390f35b3480156101ad57600080fd5b506101c860048036038101906101c3919061224a565b610447565b005b3480156101d657600080fd5b506101f160048036038101906101ec9190612277565b6104e6565b6040516101fe9190612205565b60405180910390f35b34801561021357600080fd5b5061021c6105bf565b60405161022991906122e6565b60405180910390f35b34801561023e57600080fd5b506102596004803603810190610254919061232d565b6105c8565b005b34801561026757600080fd5b5061027061067a565b005b34801561027e57600080fd5b506102996004803603810190610294919061235a565b6106ec565b6040516102a6919061222f565b60405180910390f35b3480156102bb57600080fd5b506102c461073d565b005b3480156102d257600080fd5b506102db610890565b005b3480156102e957600080fd5b506102f2610947565b6040516102ff9190612396565b60405180910390f35b34801561031457600080fd5b5061031d610970565b60405161032a91906120ef565b60405180910390f35b34801561033f57600080fd5b5061035a600480360381019061035591906121aa565b6109ad565b6040516103679190612205565b60405180910390f35b34801561037c57600080fd5b506103856109cb565b005b34801561039357600080fd5b5061039c610a45565b005b3480156103aa57600080fd5b506103c560048036038101906103c091906123b1565b610f47565b6040516103d2919061222f565b60405180910390f35b60606040518060400160405280600f81526020017f5477697474657220436869636b656e0000000000000000000000000000000000815250905090565b600061042c610425611092565b848461109a565b6001905092915050565b600068056bc75e2d63100000905090565b61044f611092565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146104dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104d39061243d565b60405180910390fd5b80600b8190555050565b60006104f3848484611263565b6105b4846104ff611092565b6105af85604051806060016040528060288152602001612e9f60289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610565611092565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116b79092919063ffffffff16565b61109a565b600190509392505050565b60006009905090565b6105d0611092565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461065d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106549061243d565b60405180910390fd5b80600f60176101000a81548160ff02191690831515021790555050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166106bb611092565b73ffffffffffffffffffffffffffffffffffffffff16146106db57600080fd5b60004790506106e98161171b565b50565b6000610736600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611787565b9050919050565b610745611092565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107c99061243d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610898611092565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610925576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161091c9061243d565b60405180910390fd5b68056bc75e2d6310000060108190555068056bc75e2d63100000601181905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600681526020017f5457434b454e0000000000000000000000000000000000000000000000000000815250905090565b60006109c16109ba611092565b8484611263565b6001905092915050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610a0c611092565b73ffffffffffffffffffffffffffffffffffffffff1614610a2c57600080fd5b6000610a37306106ec565b9050610a42816117f5565b50565b610a4d611092565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ada576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ad19061243d565b60405180910390fd5b600f60149054906101000a900460ff1615610b2a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b21906124a9565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d905080600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610bba30600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1668056bc75e2d6310000061109a565b8073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c05573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c2991906124de565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c90573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cb491906124de565b6040518363ffffffff1660e01b8152600401610cd192919061250b565b6020604051808303816000875af1158015610cf0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d1491906124de565b600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610d9d306106ec565b600080610da8610947565b426040518863ffffffff1660e01b8152600401610dca96959493929190612579565b60606040518083038185885af1158015610de8573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610e0d91906125ef565b5050506001600f60166101000a81548160ff0219169083151502179055506001600f60176101000a81548160ff0219169083151502179055506001600f60146101000a81548160ff021916908315150217905550600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610f00929190612642565b6020604051808303816000875af1158015610f1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f439190612680565b5050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000808303610fe05760009050611042565b60008284610fee91906126dc565b9050828482610ffd919061274d565b1461103d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611034906127f0565b60405180910390fd5b809150505b92915050565b600061108a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611a6e565b905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611109576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161110090612882565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611178576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161116f90612914565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611256919061222f565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036112d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112c9906129a6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611341576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133890612a38565b60405180910390fd5b60008111611384576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137b90612aca565b60405180910390fd5b61138c610947565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156113fa57506113ca610947565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611696576000600981905550600b54600a81905550600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156114bb5750600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156115115750600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156115295750600f60179054906101000a900460ff165b156115cc57601054811115611573576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161156a90612b36565b60405180910390fd5b60115481611580846106ec565b61158a9190612b56565b11156115cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115c290612bd6565b60405180910390fd5b5b60006115d7306106ec565b9050600f60159054906101000a900460ff161580156116445750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b801561165c5750600f60169054906101000a900460ff165b80156116685750600081115b1561169057611676816117f5565b6000479050600081111561168e5761168d4761171b565b5b505b506116a7565b60006009819055506000600a819055505b6116b2838383611ad1565b505050565b60008383111582906116ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116f691906120ef565b60405180910390fd5b506000838561170e9190612bf6565b9050809150509392505050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611783573d6000803e3d6000fd5b5050565b60006007548211156117ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117c590612c9c565b60405180910390fd5b60006117d8611ae1565b90506117ed818461104890919063ffffffff16565b915050919050565b6001600f60156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff81111561182d5761182c612cbc565b5b60405190808252806020026020018201604052801561185b5781602001602082028036833780820191505090505b509050308160008151811061187357611872612ceb565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561191a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061193e91906124de565b8160018151811061195257611951612ceb565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506119b930600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461109a565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611a1d959493929190612dd8565b600060405180830381600087803b158015611a3757600080fd5b505af1158015611a4b573d6000803e3d6000fd5b50505050506000600f60156101000a81548160ff02191690831515021790555050565b60008083118290611ab5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aac91906120ef565b60405180910390fd5b5060008385611ac4919061274d565b9050809150509392505050565b611adc838383611b0c565b505050565b6000806000611aee611cd7565b91509150611b05818361104890919063ffffffff16565b9250505090565b600080600080600080611b1e87611d39565b955095509550955095509550611b7c86600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611da190919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611c1185600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611deb90919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611c5d81611e49565b611c678483611f06565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611cc4919061222f565b60405180910390a3505050505050505050565b60008060006007549050600068056bc75e2d631000009050611d0d68056bc75e2d6310000060075461104890919063ffffffff16565b821015611d2c5760075468056bc75e2d63100000935093505050611d35565b81819350935050505b9091565b6000806000806000806000806000611d568a600954600a54611f40565b9250925092506000611d66611ae1565b90506000806000611d798e878787611fd6565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b6000611de383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506116b7565b905092915050565b6000808284611dfa9190612b56565b905083811015611e3f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e3690612e7e565b60405180910390fd5b8091505092915050565b6000611e53611ae1565b90506000611e6a8284610fce90919063ffffffff16565b9050611ebe81600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611deb90919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b611f1b82600754611da190919063ffffffff16565b600781905550611f3681600854611deb90919063ffffffff16565b6008819055505050565b600080600080611f6c6064611f5e888a610fce90919063ffffffff16565b61104890919063ffffffff16565b90506000611f966064611f88888b610fce90919063ffffffff16565b61104890919063ffffffff16565b90506000611fbf82611fb1858c611da190919063ffffffff16565b611da190919063ffffffff16565b905080838395509550955050505093509350939050565b600080600080611fef8589610fce90919063ffffffff16565b905060006120068689610fce90919063ffffffff16565b9050600061201d8789610fce90919063ffffffff16565b90506000612046826120388587611da190919063ffffffff16565b611da190919063ffffffff16565b9050838184965096509650505050509450945094915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561209957808201518184015260208101905061207e565b60008484015250505050565b6000601f19601f8301169050919050565b60006120c18261205f565b6120cb818561206a565b93506120db81856020860161207b565b6120e4816120a5565b840191505092915050565b6000602082019050818103600083015261210981846120b6565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061214182612116565b9050919050565b61215181612136565b811461215c57600080fd5b50565b60008135905061216e81612148565b92915050565b6000819050919050565b61218781612174565b811461219257600080fd5b50565b6000813590506121a48161217e565b92915050565b600080604083850312156121c1576121c0612111565b5b60006121cf8582860161215f565b92505060206121e085828601612195565b9150509250929050565b60008115159050919050565b6121ff816121ea565b82525050565b600060208201905061221a60008301846121f6565b92915050565b61222981612174565b82525050565b60006020820190506122446000830184612220565b92915050565b6000602082840312156122605761225f612111565b5b600061226e84828501612195565b91505092915050565b6000806000606084860312156122905761228f612111565b5b600061229e8682870161215f565b93505060206122af8682870161215f565b92505060406122c086828701612195565b9150509250925092565b600060ff82169050919050565b6122e0816122ca565b82525050565b60006020820190506122fb60008301846122d7565b92915050565b61230a816121ea565b811461231557600080fd5b50565b60008135905061232781612301565b92915050565b60006020828403121561234357612342612111565b5b600061235184828501612318565b91505092915050565b6000602082840312156123705761236f612111565b5b600061237e8482850161215f565b91505092915050565b61239081612136565b82525050565b60006020820190506123ab6000830184612387565b92915050565b600080604083850312156123c8576123c7612111565b5b60006123d68582860161215f565b92505060206123e78582860161215f565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061242760208361206a565b9150612432826123f1565b602082019050919050565b600060208201905081810360008301526124568161241a565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b600061249360178361206a565b915061249e8261245d565b602082019050919050565b600060208201905081810360008301526124c281612486565b9050919050565b6000815190506124d881612148565b92915050565b6000602082840312156124f4576124f3612111565b5b6000612502848285016124c9565b91505092915050565b60006040820190506125206000830185612387565b61252d6020830184612387565b9392505050565b6000819050919050565b6000819050919050565b600061256361255e61255984612534565b61253e565b612174565b9050919050565b61257381612548565b82525050565b600060c08201905061258e6000830189612387565b61259b6020830188612220565b6125a8604083018761256a565b6125b5606083018661256a565b6125c26080830185612387565b6125cf60a0830184612220565b979650505050505050565b6000815190506125e98161217e565b92915050565b60008060006060848603121561260857612607612111565b5b6000612616868287016125da565b9350506020612627868287016125da565b9250506040612638868287016125da565b9150509250925092565b60006040820190506126576000830185612387565b6126646020830184612220565b9392505050565b60008151905061267a81612301565b92915050565b60006020828403121561269657612695612111565b5b60006126a48482850161266b565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006126e782612174565b91506126f283612174565b925082820261270081612174565b91508282048414831517612717576127166126ad565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061275882612174565b915061276383612174565b9250826127735761277261271e565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b60006127da60218361206a565b91506127e58261277e565b604082019050919050565b60006020820190508181036000830152612809816127cd565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061286c60248361206a565b915061287782612810565b604082019050919050565b6000602082019050818103600083015261289b8161285f565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006128fe60228361206a565b9150612909826128a2565b604082019050919050565b6000602082019050818103600083015261292d816128f1565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061299060258361206a565b915061299b82612934565b604082019050919050565b600060208201905081810360008301526129bf81612983565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612a2260238361206a565b9150612a2d826129c6565b604082019050919050565b60006020820190508181036000830152612a5181612a15565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612ab460298361206a565b9150612abf82612a58565b604082019050919050565b60006020820190508181036000830152612ae381612aa7565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b6000612b2060198361206a565b9150612b2b82612aea565b602082019050919050565b60006020820190508181036000830152612b4f81612b13565b9050919050565b6000612b6182612174565b9150612b6c83612174565b9250828201905080821115612b8457612b836126ad565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b6000612bc0601a8361206a565b9150612bcb82612b8a565b602082019050919050565b60006020820190508181036000830152612bef81612bb3565b9050919050565b6000612c0182612174565b9150612c0c83612174565b9250828203905081811115612c2457612c236126ad565b5b92915050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b6000612c86602a8361206a565b9150612c9182612c2a565b604082019050919050565b60006020820190508181036000830152612cb581612c79565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612d4f81612136565b82525050565b6000612d618383612d46565b60208301905092915050565b6000602082019050919050565b6000612d8582612d1a565b612d8f8185612d25565b9350612d9a83612d36565b8060005b83811015612dcb578151612db28882612d55565b9750612dbd83612d6d565b925050600181019050612d9e565b5085935050505092915050565b600060a082019050612ded6000830188612220565b612dfa602083018761256a565b8181036040830152612e0c8186612d7a565b9050612e1b6060830185612387565b612e286080830184612220565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000612e68601b8361206a565b9150612e7382612e32565b602082019050919050565b60006020820190508181036000830152612e9781612e5b565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220a8f8b2ee06a30637b21d4f8b0103fd99135281bc4a8e22e19dc19e0a05a2f72a64736f6c63430008110033
Deployed Bytecode
0x6080604052600436106101025760003560e01c806370a082311161009557806395d89b411161006457806395d89b4114610308578063a9059cbb14610333578063c3c8cd8014610370578063c9567bf914610387578063dd62ed3e1461039e57610109565b806370a0823114610272578063715018a6146102af578063751039fc146102c65780638da5cb5b146102dd57610109565b806323b872dd116100d157806323b872dd146101ca578063313ce567146102075780635932ead1146102325780636fc3eaec1461025b57610109565b806306fdde031461010e578063095ea7b31461013957806318160ddd146101765780631879343c146101a157610109565b3661010957005b600080fd5b34801561011a57600080fd5b506101236103db565b60405161013091906120ef565b60405180910390f35b34801561014557600080fd5b50610160600480360381019061015b91906121aa565b610418565b60405161016d9190612205565b60405180910390f35b34801561018257600080fd5b5061018b610436565b604051610198919061222f565b60405180910390f35b3480156101ad57600080fd5b506101c860048036038101906101c3919061224a565b610447565b005b3480156101d657600080fd5b506101f160048036038101906101ec9190612277565b6104e6565b6040516101fe9190612205565b60405180910390f35b34801561021357600080fd5b5061021c6105bf565b60405161022991906122e6565b60405180910390f35b34801561023e57600080fd5b506102596004803603810190610254919061232d565b6105c8565b005b34801561026757600080fd5b5061027061067a565b005b34801561027e57600080fd5b506102996004803603810190610294919061235a565b6106ec565b6040516102a6919061222f565b60405180910390f35b3480156102bb57600080fd5b506102c461073d565b005b3480156102d257600080fd5b506102db610890565b005b3480156102e957600080fd5b506102f2610947565b6040516102ff9190612396565b60405180910390f35b34801561031457600080fd5b5061031d610970565b60405161032a91906120ef565b60405180910390f35b34801561033f57600080fd5b5061035a600480360381019061035591906121aa565b6109ad565b6040516103679190612205565b60405180910390f35b34801561037c57600080fd5b506103856109cb565b005b34801561039357600080fd5b5061039c610a45565b005b3480156103aa57600080fd5b506103c560048036038101906103c091906123b1565b610f47565b6040516103d2919061222f565b60405180910390f35b60606040518060400160405280600f81526020017f5477697474657220436869636b656e0000000000000000000000000000000000815250905090565b600061042c610425611092565b848461109a565b6001905092915050565b600068056bc75e2d63100000905090565b61044f611092565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146104dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104d39061243d565b60405180910390fd5b80600b8190555050565b60006104f3848484611263565b6105b4846104ff611092565b6105af85604051806060016040528060288152602001612e9f60289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610565611092565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116b79092919063ffffffff16565b61109a565b600190509392505050565b60006009905090565b6105d0611092565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461065d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106549061243d565b60405180910390fd5b80600f60176101000a81548160ff02191690831515021790555050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166106bb611092565b73ffffffffffffffffffffffffffffffffffffffff16146106db57600080fd5b60004790506106e98161171b565b50565b6000610736600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611787565b9050919050565b610745611092565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107c99061243d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610898611092565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610925576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161091c9061243d565b60405180910390fd5b68056bc75e2d6310000060108190555068056bc75e2d63100000601181905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600681526020017f5457434b454e0000000000000000000000000000000000000000000000000000815250905090565b60006109c16109ba611092565b8484611263565b6001905092915050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610a0c611092565b73ffffffffffffffffffffffffffffffffffffffff1614610a2c57600080fd5b6000610a37306106ec565b9050610a42816117f5565b50565b610a4d611092565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ada576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ad19061243d565b60405180910390fd5b600f60149054906101000a900460ff1615610b2a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b21906124a9565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d905080600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610bba30600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1668056bc75e2d6310000061109a565b8073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c05573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c2991906124de565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c90573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cb491906124de565b6040518363ffffffff1660e01b8152600401610cd192919061250b565b6020604051808303816000875af1158015610cf0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d1491906124de565b600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610d9d306106ec565b600080610da8610947565b426040518863ffffffff1660e01b8152600401610dca96959493929190612579565b60606040518083038185885af1158015610de8573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610e0d91906125ef565b5050506001600f60166101000a81548160ff0219169083151502179055506001600f60176101000a81548160ff0219169083151502179055506001600f60146101000a81548160ff021916908315150217905550600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610f00929190612642565b6020604051808303816000875af1158015610f1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f439190612680565b5050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000808303610fe05760009050611042565b60008284610fee91906126dc565b9050828482610ffd919061274d565b1461103d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611034906127f0565b60405180910390fd5b809150505b92915050565b600061108a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611a6e565b905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611109576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161110090612882565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611178576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161116f90612914565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611256919061222f565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036112d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112c9906129a6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611341576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133890612a38565b60405180910390fd5b60008111611384576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137b90612aca565b60405180910390fd5b61138c610947565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156113fa57506113ca610947565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611696576000600981905550600b54600a81905550600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156114bb5750600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156115115750600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156115295750600f60179054906101000a900460ff165b156115cc57601054811115611573576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161156a90612b36565b60405180910390fd5b60115481611580846106ec565b61158a9190612b56565b11156115cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115c290612bd6565b60405180910390fd5b5b60006115d7306106ec565b9050600f60159054906101000a900460ff161580156116445750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b801561165c5750600f60169054906101000a900460ff165b80156116685750600081115b1561169057611676816117f5565b6000479050600081111561168e5761168d4761171b565b5b505b506116a7565b60006009819055506000600a819055505b6116b2838383611ad1565b505050565b60008383111582906116ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116f691906120ef565b60405180910390fd5b506000838561170e9190612bf6565b9050809150509392505050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611783573d6000803e3d6000fd5b5050565b60006007548211156117ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117c590612c9c565b60405180910390fd5b60006117d8611ae1565b90506117ed818461104890919063ffffffff16565b915050919050565b6001600f60156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff81111561182d5761182c612cbc565b5b60405190808252806020026020018201604052801561185b5781602001602082028036833780820191505090505b509050308160008151811061187357611872612ceb565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561191a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061193e91906124de565b8160018151811061195257611951612ceb565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506119b930600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461109a565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611a1d959493929190612dd8565b600060405180830381600087803b158015611a3757600080fd5b505af1158015611a4b573d6000803e3d6000fd5b50505050506000600f60156101000a81548160ff02191690831515021790555050565b60008083118290611ab5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aac91906120ef565b60405180910390fd5b5060008385611ac4919061274d565b9050809150509392505050565b611adc838383611b0c565b505050565b6000806000611aee611cd7565b91509150611b05818361104890919063ffffffff16565b9250505090565b600080600080600080611b1e87611d39565b955095509550955095509550611b7c86600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611da190919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611c1185600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611deb90919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611c5d81611e49565b611c678483611f06565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611cc4919061222f565b60405180910390a3505050505050505050565b60008060006007549050600068056bc75e2d631000009050611d0d68056bc75e2d6310000060075461104890919063ffffffff16565b821015611d2c5760075468056bc75e2d63100000935093505050611d35565b81819350935050505b9091565b6000806000806000806000806000611d568a600954600a54611f40565b9250925092506000611d66611ae1565b90506000806000611d798e878787611fd6565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b6000611de383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506116b7565b905092915050565b6000808284611dfa9190612b56565b905083811015611e3f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e3690612e7e565b60405180910390fd5b8091505092915050565b6000611e53611ae1565b90506000611e6a8284610fce90919063ffffffff16565b9050611ebe81600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611deb90919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b611f1b82600754611da190919063ffffffff16565b600781905550611f3681600854611deb90919063ffffffff16565b6008819055505050565b600080600080611f6c6064611f5e888a610fce90919063ffffffff16565b61104890919063ffffffff16565b90506000611f966064611f88888b610fce90919063ffffffff16565b61104890919063ffffffff16565b90506000611fbf82611fb1858c611da190919063ffffffff16565b611da190919063ffffffff16565b905080838395509550955050505093509350939050565b600080600080611fef8589610fce90919063ffffffff16565b905060006120068689610fce90919063ffffffff16565b9050600061201d8789610fce90919063ffffffff16565b90506000612046826120388587611da190919063ffffffff16565b611da190919063ffffffff16565b9050838184965096509650505050509450945094915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561209957808201518184015260208101905061207e565b60008484015250505050565b6000601f19601f8301169050919050565b60006120c18261205f565b6120cb818561206a565b93506120db81856020860161207b565b6120e4816120a5565b840191505092915050565b6000602082019050818103600083015261210981846120b6565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061214182612116565b9050919050565b61215181612136565b811461215c57600080fd5b50565b60008135905061216e81612148565b92915050565b6000819050919050565b61218781612174565b811461219257600080fd5b50565b6000813590506121a48161217e565b92915050565b600080604083850312156121c1576121c0612111565b5b60006121cf8582860161215f565b92505060206121e085828601612195565b9150509250929050565b60008115159050919050565b6121ff816121ea565b82525050565b600060208201905061221a60008301846121f6565b92915050565b61222981612174565b82525050565b60006020820190506122446000830184612220565b92915050565b6000602082840312156122605761225f612111565b5b600061226e84828501612195565b91505092915050565b6000806000606084860312156122905761228f612111565b5b600061229e8682870161215f565b93505060206122af8682870161215f565b92505060406122c086828701612195565b9150509250925092565b600060ff82169050919050565b6122e0816122ca565b82525050565b60006020820190506122fb60008301846122d7565b92915050565b61230a816121ea565b811461231557600080fd5b50565b60008135905061232781612301565b92915050565b60006020828403121561234357612342612111565b5b600061235184828501612318565b91505092915050565b6000602082840312156123705761236f612111565b5b600061237e8482850161215f565b91505092915050565b61239081612136565b82525050565b60006020820190506123ab6000830184612387565b92915050565b600080604083850312156123c8576123c7612111565b5b60006123d68582860161215f565b92505060206123e78582860161215f565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061242760208361206a565b9150612432826123f1565b602082019050919050565b600060208201905081810360008301526124568161241a565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b600061249360178361206a565b915061249e8261245d565b602082019050919050565b600060208201905081810360008301526124c281612486565b9050919050565b6000815190506124d881612148565b92915050565b6000602082840312156124f4576124f3612111565b5b6000612502848285016124c9565b91505092915050565b60006040820190506125206000830185612387565b61252d6020830184612387565b9392505050565b6000819050919050565b6000819050919050565b600061256361255e61255984612534565b61253e565b612174565b9050919050565b61257381612548565b82525050565b600060c08201905061258e6000830189612387565b61259b6020830188612220565b6125a8604083018761256a565b6125b5606083018661256a565b6125c26080830185612387565b6125cf60a0830184612220565b979650505050505050565b6000815190506125e98161217e565b92915050565b60008060006060848603121561260857612607612111565b5b6000612616868287016125da565b9350506020612627868287016125da565b9250506040612638868287016125da565b9150509250925092565b60006040820190506126576000830185612387565b6126646020830184612220565b9392505050565b60008151905061267a81612301565b92915050565b60006020828403121561269657612695612111565b5b60006126a48482850161266b565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006126e782612174565b91506126f283612174565b925082820261270081612174565b91508282048414831517612717576127166126ad565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061275882612174565b915061276383612174565b9250826127735761277261271e565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b60006127da60218361206a565b91506127e58261277e565b604082019050919050565b60006020820190508181036000830152612809816127cd565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061286c60248361206a565b915061287782612810565b604082019050919050565b6000602082019050818103600083015261289b8161285f565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006128fe60228361206a565b9150612909826128a2565b604082019050919050565b6000602082019050818103600083015261292d816128f1565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061299060258361206a565b915061299b82612934565b604082019050919050565b600060208201905081810360008301526129bf81612983565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612a2260238361206a565b9150612a2d826129c6565b604082019050919050565b60006020820190508181036000830152612a5181612a15565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612ab460298361206a565b9150612abf82612a58565b604082019050919050565b60006020820190508181036000830152612ae381612aa7565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b6000612b2060198361206a565b9150612b2b82612aea565b602082019050919050565b60006020820190508181036000830152612b4f81612b13565b9050919050565b6000612b6182612174565b9150612b6c83612174565b9250828201905080821115612b8457612b836126ad565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b6000612bc0601a8361206a565b9150612bcb82612b8a565b602082019050919050565b60006020820190508181036000830152612bef81612bb3565b9050919050565b6000612c0182612174565b9150612c0c83612174565b9250828203905081811115612c2457612c236126ad565b5b92915050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b6000612c86602a8361206a565b9150612c9182612c2a565b604082019050919050565b60006020820190508181036000830152612cb581612c79565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612d4f81612136565b82525050565b6000612d618383612d46565b60208301905092915050565b6000602082019050919050565b6000612d8582612d1a565b612d8f8185612d25565b9350612d9a83612d36565b8060005b83811015612dcb578151612db28882612d55565b9750612dbd83612d6d565b925050600181019050612d9e565b5085935050505092915050565b600060a082019050612ded6000830188612220565b612dfa602083018761256a565b8181036040830152612e0c8186612d7a565b9050612e1b6060830185612387565b612e286080830184612220565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000612e68601b8361206a565b9150612e7382612e32565b602082019050919050565b60006020820190508181036000830152612e9781612e5b565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220a8f8b2ee06a30637b21d4f8b0103fd99135281bc4a8e22e19dc19e0a05a2f72a64736f6c63430008110033
Deployed Bytecode Sourcemap
3617:9889:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5371:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6223:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5648:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9254:85;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6392:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5557:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6713:103;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11621:193;;;;;;;;;;;;;:::i;:::-;;5751:138;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2698:148;;;;;;;;;;;;;:::i;:::-;;9347:118;;;;;;;;;;;;;:::i;:::-;;2484:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5462:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5897:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11419:194;;;;;;;;;;;;;:::i;:::-;;9577:773;;;;;;;;;;;;;:::i;:::-;;6072:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5371:83;5408:13;5441:5;;;;;;;;;;;;;;;;;5434:12;;5371:83;:::o;6223:161::-;6298:4;6315:39;6324:12;:10;:12::i;:::-;6338:7;6347:6;6315:8;:39::i;:::-;6372:4;6365:11;;6223:161;;;;:::o;5648:95::-;5701:7;4070:20;5721:14;;5648:95;:::o;9254:85::-;2621:12;:10;:12::i;:::-;2611:22;;:6;;;;;;;;;;:22;;;2603:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9328:3:::1;9315:12;:16;;;;9254:85:::0;:::o;6392:313::-;6490:4;6507:36;6517:6;6525:9;6536:6;6507:9;:36::i;:::-;6554:121;6563:6;6571:12;:10;:12::i;:::-;6585:89;6623:6;6585:89;;;;;;;;;;;;;;;;;:11;:19;6597:6;6585:19;;;;;;;;;;;;;;;:33;6605:12;:10;:12::i;:::-;6585:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;6554:8;:121::i;:::-;6693:4;6686:11;;6392:313;;;;;:::o;5557:83::-;5598:5;4474:1;5616:16;;5557:83;:::o;6713:103::-;2621:12;:10;:12::i;:::-;2611:22;;:6;;;;;;;;;;:22;;;2603:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;6803:5:::1;6785:15;;:23;;;;;;;;;;;;;;;;;;6713:103:::0;:::o;11621:193::-;11687:14;;;;;;;;;;;11671:30;;:12;:10;:12::i;:::-;:30;;;11663:39;;;;;;11713:26;11742:21;11713:50;;11774:32;11787:18;11774:12;:32::i;:::-;11652:162;11621:193::o;5751:138::-;5817:7;5844:37;5864:7;:16;5872:7;5864:16;;;;;;;;;;;;;;;;5844:19;:37::i;:::-;5837:44;;5751:138;;;:::o;2698:148::-;2621:12;:10;:12::i;:::-;2611:22;;:6;;;;;;;;;;:22;;;2603:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2805:1:::1;2768:40;;2789:6;::::0;::::1;;;;;;;;2768:40;;;;;;;;;;;;2836:1;2819:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2698:148::o:0;9347:118::-;2621:12;:10;:12::i;:::-;2611:22;;:6;;;;;;;;;;:22;;;2603:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;4070:20:::1;9400:12;:22;;;;4070:20;9433:14;:24;;;;9347:118::o:0;2484:79::-;2522:7;2549:6;;;;;;;;;;;2542:13;;2484:79;:::o;5462:87::-;5501:13;5534:7;;;;;;;;;;;;;;;;;5527:14;;5462:87;:::o;5897:167::-;5975:4;5992:42;6002:12;:10;:12::i;:::-;6016:9;6027:6;5992:9;:42::i;:::-;6052:4;6045:11;;5897:167;;;;:::o;11419:194::-;11485:14;;;;;;;;;;;11469:30;;:12;:10;:12::i;:::-;:30;;;11461:39;;;;;;11511:23;11537:24;11555:4;11537:9;:24::i;:::-;11511:50;;11572:33;11589:15;11572:16;:33::i;:::-;11450:163;11419:194::o;9577:773::-;2621:12;:10;:12::i;:::-;2611:22;;:6;;;;;;;;;;:22;;;2603:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9641:11:::1;;;;;;;;;;;9640:12;9632:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;9690:35;9747:42;9690:100;;9819:16;9801:15;;:34;;;;;;;;;;;;;;;;;;9846:58;9863:4;9878:15;;;;;;;;;;;4070:20;9846:8;:58::i;:::-;9949:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9931:56;;;9996:4;10003:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9931:96;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9915:13;;:112;;;;;;;;;;;;;;;;;;10038:15;;;;;;;;;;;:31;;;10077:21;10108:4;10114:24;10132:4;10114:9;:24::i;:::-;10139:1;10141::::0;10143:7:::1;:5;:7::i;:::-;10151:15;10038:129;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;10192:4;10178:11;;:18;;;;;;;;;;;;;;;;;;10225:4;10207:15;;:22;;;;;;;;;;;;;;;;;;10256:4;10242:11;;:18;;;;;;;;;;;;;;;;;;10278:13;;;;;;;;;;;10271:29;;;10309:15;;;;;;;;;;;10327:14;10271:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;9621:729;9577:773::o:0;6072:143::-;6153:7;6180:11;:18;6192:5;6180:18;;;;;;;;;;;;;;;:27;6199:7;6180:27;;;;;;;;;;;;;;;;6173:34;;6072:143;;;;:::o;1537:246::-;1595:7;1624:1;1619;:6;1615:47;;1649:1;1642:8;;;;1615:47;1672:9;1688:1;1684;:5;;;;:::i;:::-;1672:17;;1717:1;1712;1708;:5;;;;:::i;:::-;:10;1700:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1774:1;1767:8;;;1537:246;;;;;:::o;1791:132::-;1849:7;1876:39;1880:1;1883;1876:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1869:46;;1791:132;;;;:::o;202:98::-;255:7;282:10;275:17;;202:98;:::o;7086:335::-;7196:1;7179:19;;:5;:19;;;7171:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7277:1;7258:21;;:7;:21;;;7250:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7359:6;7329:11;:18;7341:5;7329:18;;;;;;;;;;;;;;;:27;7348:7;7329:27;;;;;;;;;;;;;;;:36;;;;7397:7;7381:32;;7390:5;7381:32;;;7406:6;7381:32;;;;;;:::i;:::-;;;;;;;;7086:335;;;:::o;7429:1326::-;7533:1;7517:18;;:4;:18;;;7509:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7610:1;7596:16;;:2;:16;;;7588:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7680:1;7671:6;:10;7663:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7754:7;:5;:7::i;:::-;7746:15;;:4;:15;;;;:32;;;;;7771:7;:5;:7::i;:::-;7765:13;;:2;:13;;;;7746:32;7742:963;;;7807:1;7795:9;:13;;;;7835:12;;7823:9;:24;;;;7874:13;;;;;;;;;;;7866:21;;:4;:21;;;:55;;;;;7905:15;;;;;;;;;;;7891:30;;:2;:30;;;;7866:55;:83;;;;;7927:18;:22;7946:2;7927:22;;;;;;;;;;;;;;;;;;;;;;;;;7925:24;7866:83;:102;;;;;7953:15;;;;;;;;;;;7866:102;7862:332;;;8036:12;;8026:6;:22;;8018:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;8131:14;;8121:6;8105:13;8115:2;8105:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;8097:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;7862:332;8212:28;8243:24;8261:4;8243:9;:24::i;:::-;8212:55;;8287:6;;;;;;;;;;;8286:7;:32;;;;;8305:13;;;;;;;;;;;8297:21;;:4;:21;;;;8286:32;:47;;;;;8322:11;;;;;;;;;;;8286:47;:73;;;;;8358:1;8337:20;:22;8286:73;8282:344;;;8380:38;8397:20;8380:16;:38::i;:::-;8437:26;8466:21;8437:50;;8530:1;8509:18;:22;8506:105;;;8556:35;8569:21;8556:12;:35::i;:::-;8506:105;8361:265;8282:344;7780:857;7742:963;;;8666:1;8654:9;:13;;;;8692:1;8680:9;:13;;;;7742:963;8717:30;8732:4;8737:2;8740:6;8717:14;:30::i;:::-;7429:1326;;;:::o;1339:190::-;1425:7;1458:1;1453;:6;;1461:12;1445:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1485:9;1501:1;1497;:5;;;;:::i;:::-;1485:17;;1520:1;1513:8;;;1339:190;;;;;:::o;9473:96::-;9530:14;;;;;;;;;;;:23;;:31;9554:6;9530:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9473:96;:::o;6824:254::-;6891:7;6930;;6919;:18;;6911:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;6995:19;7018:10;:8;:10::i;:::-;6995:33;;7046:24;7058:11;7046:7;:11;;:24;;;;:::i;:::-;7039:31;;;6824:254;;;:::o;8763:483::-;4958:4;4949:6;;:13;;;;;;;;;;;;;;;;;;8841:21:::1;8879:1;8865:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8841:40;;8910:4;8892;8897:1;8892:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;8936:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8926:4;8931:1;8926:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;8969:62;8986:4;9001:15;;;;;;;;;;;9019:11;8969:8;:62::i;:::-;9042:15;;;;;;;;;;;:66;;;9123:11;9149:1;9165:4;9192;9212:15;9042:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;8830:416;4994:5:::0;4985:6;;:14;;;;;;;;;;;;;;;;;;8763:483;:::o;1931:189::-;2017:7;2049:1;2045;:5;2052:12;2037:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2076:9;2092:1;2088;:5;;;;:::i;:::-;2076:17;;2111:1;2104:8;;;1931:189;;;;;:::o;10358:146::-;10452:44;10470:6;10478:9;10489:6;10452:17;:44::i;:::-;10358:146;;;:::o;13076:163::-;13117:7;13138:15;13155;13174:19;:17;:19::i;:::-;13137:56;;;;13211:20;13223:7;13211;:11;;:20;;;;:::i;:::-;13204:27;;;;13076:163;:::o;10512:487::-;10611:15;10628:23;10653:12;10667:23;10692:12;10706:13;10723:19;10734:7;10723:10;:19::i;:::-;10610:132;;;;;;;;;;;;10771:28;10791:7;10771;:15;10779:6;10771:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;10753:7;:15;10761:6;10753:15;;;;;;;;;;;;;;;:46;;;;10831:39;10854:15;10831:7;:18;10839:9;10831:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;10810:7;:18;10818:9;10810:18;;;;;;;;;;;;;;;:60;;;;10881:16;10891:5;10881:9;:16::i;:::-;10908:23;10920:4;10926;10908:11;:23::i;:::-;10964:9;10947:44;;10956:6;10947:44;;;10975:15;10947:44;;;;;;:::i;:::-;;;;;;;;10599:400;;;;;;10512:487;;;:::o;13247:256::-;13297:7;13306;13326:15;13344:7;;13326:25;;13362:15;4070:20;13362:25;;13412:20;4070;13412:7;;:11;;:20;;;;:::i;:::-;13402:7;:30;13398:61;;;13442:7;;4070:20;13434:25;;;;;;;;13398:61;13478:7;13487;13470:25;;;;;;13247:256;;;:::o;11824:471::-;11883:7;11892;11901;11910;11919;11928;11949:23;11974:12;11988:13;12005:42;12017:7;12026:9;;12037;;12005:11;:42::i;:::-;11948:99;;;;;;12058:19;12081:10;:8;:10::i;:::-;12058:33;;12103:15;12120:23;12145:12;12161:46;12173:7;12182:4;12188:5;12195:11;12161;:46::i;:::-;12102:105;;;;;;12226:7;12235:15;12252:4;12258:15;12275:4;12281:5;12218:69;;;;;;;;;;;;;;;;;;;11824:471;;;;;;;:::o;1195:136::-;1253:7;1280:43;1284:1;1287;1280:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1273:50;;1195:136;;;;:::o;1008:179::-;1066:7;1086:9;1102:1;1098;:5;;;;:::i;:::-;1086:17;;1127:1;1122;:6;;1114:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1178:1;1171:8;;;1008:179;;;;:::o;11007:212::-;11060:19;11083:10;:8;:10::i;:::-;11060:33;;11104:13;11120:22;11130:11;11120:5;:9;;:22;;;;:::i;:::-;11104:38;;11178:33;11205:5;11178:7;:22;11194:4;11178:22;;;;;;;;;;;;;;;;:26;;:33;;;;:::i;:::-;11153:7;:22;11169:4;11153:22;;;;;;;;;;;;;;;:58;;;;11049:170;;11007:212;:::o;11227:147::-;11305:17;11317:4;11305:7;;:11;;:17;;;;:::i;:::-;11295:7;:27;;;;11346:20;11361:4;11346:10;;:14;;:20;;;;:::i;:::-;11333:10;:33;;;;11227:147;;:::o;12303:351::-;12396:7;12405;12414;12434:12;12449:28;12473:3;12449:19;12461:6;12449:7;:11;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;12434:43;;12488:13;12504:29;12529:3;12504:20;12516:7;12504;:11;;:20;;;;:::i;:::-;:24;;:29;;;;:::i;:::-;12488:45;;12544:23;12570:28;12592:5;12570:17;12582:4;12570:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;12544:54;;12617:15;12634:4;12640:5;12609:37;;;;;;;;;12303:351;;;;;;;:::o;12662:409::-;12772:7;12781;12790;12810:15;12828:24;12840:11;12828:7;:11;;:24;;;;:::i;:::-;12810:42;;12863:12;12878:21;12887:11;12878:4;:8;;:21;;;;:::i;:::-;12863:36;;12910:13;12926:22;12936:11;12926:5;:9;;:22;;;;:::i;:::-;12910:38;;12959:23;12985:28;13007:5;12985:17;12997:4;12985:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;12959:54;;13032:7;13041:15;13058:4;13024:39;;;;;;;;;;12662:409;;;;;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:118::-;3533:24;3551:5;3533:24;:::i;:::-;3528:3;3521:37;3446:118;;:::o;3570:222::-;3663:4;3701:2;3690:9;3686:18;3678:26;;3714:71;3782:1;3771:9;3767:17;3758:6;3714:71;:::i;:::-;3570:222;;;;:::o;3798:329::-;3857:6;3906:2;3894:9;3885:7;3881:23;3877:32;3874:119;;;3912:79;;:::i;:::-;3874:119;4032:1;4057:53;4102:7;4093:6;4082:9;4078:22;4057:53;:::i;:::-;4047:63;;4003:117;3798:329;;;;:::o;4133:619::-;4210:6;4218;4226;4275:2;4263:9;4254:7;4250:23;4246:32;4243:119;;;4281:79;;:::i;:::-;4243:119;4401:1;4426:53;4471:7;4462:6;4451:9;4447:22;4426:53;:::i;:::-;4416:63;;4372:117;4528:2;4554:53;4599:7;4590:6;4579:9;4575:22;4554:53;:::i;:::-;4544:63;;4499:118;4656:2;4682:53;4727:7;4718:6;4707:9;4703:22;4682:53;:::i;:::-;4672:63;;4627:118;4133:619;;;;;:::o;4758:86::-;4793:7;4833:4;4826:5;4822:16;4811:27;;4758:86;;;:::o;4850:112::-;4933:22;4949:5;4933:22;:::i;:::-;4928:3;4921:35;4850:112;;:::o;4968:214::-;5057:4;5095:2;5084:9;5080:18;5072:26;;5108:67;5172:1;5161:9;5157:17;5148:6;5108:67;:::i;:::-;4968:214;;;;:::o;5188:116::-;5258:21;5273:5;5258:21;:::i;:::-;5251:5;5248:32;5238:60;;5294:1;5291;5284:12;5238:60;5188:116;:::o;5310:133::-;5353:5;5391:6;5378:20;5369:29;;5407:30;5431:5;5407:30;:::i;:::-;5310:133;;;;:::o;5449:323::-;5505:6;5554:2;5542:9;5533:7;5529:23;5525:32;5522:119;;;5560:79;;:::i;:::-;5522:119;5680:1;5705:50;5747:7;5738:6;5727:9;5723:22;5705:50;:::i;:::-;5695:60;;5651:114;5449:323;;;;:::o;5778:329::-;5837:6;5886:2;5874:9;5865:7;5861:23;5857:32;5854:119;;;5892:79;;:::i;:::-;5854:119;6012:1;6037:53;6082:7;6073:6;6062:9;6058:22;6037:53;:::i;:::-;6027:63;;5983:117;5778:329;;;;:::o;6113:118::-;6200:24;6218:5;6200:24;:::i;:::-;6195:3;6188:37;6113:118;;:::o;6237:222::-;6330:4;6368:2;6357:9;6353:18;6345:26;;6381:71;6449:1;6438:9;6434:17;6425:6;6381:71;:::i;:::-;6237:222;;;;:::o;6465:474::-;6533:6;6541;6590:2;6578:9;6569:7;6565:23;6561:32;6558:119;;;6596:79;;:::i;:::-;6558:119;6716:1;6741:53;6786:7;6777:6;6766:9;6762:22;6741:53;:::i;:::-;6731:63;;6687:117;6843:2;6869:53;6914:7;6905:6;6894:9;6890:22;6869:53;:::i;:::-;6859:63;;6814:118;6465:474;;;;;:::o;6945:182::-;7085:34;7081:1;7073:6;7069:14;7062:58;6945:182;:::o;7133:366::-;7275:3;7296:67;7360:2;7355:3;7296:67;:::i;:::-;7289:74;;7372:93;7461:3;7372:93;:::i;:::-;7490:2;7485:3;7481:12;7474:19;;7133:366;;;:::o;7505:419::-;7671:4;7709:2;7698:9;7694:18;7686:26;;7758:9;7752:4;7748:20;7744:1;7733:9;7729:17;7722:47;7786:131;7912:4;7786:131;:::i;:::-;7778:139;;7505:419;;;:::o;7930:173::-;8070:25;8066:1;8058:6;8054:14;8047:49;7930:173;:::o;8109:366::-;8251:3;8272:67;8336:2;8331:3;8272:67;:::i;:::-;8265:74;;8348:93;8437:3;8348:93;:::i;:::-;8466:2;8461:3;8457:12;8450:19;;8109:366;;;:::o;8481:419::-;8647:4;8685:2;8674:9;8670:18;8662:26;;8734:9;8728:4;8724:20;8720:1;8709:9;8705:17;8698:47;8762:131;8888:4;8762:131;:::i;:::-;8754:139;;8481:419;;;:::o;8906:143::-;8963:5;8994:6;8988:13;8979:22;;9010:33;9037:5;9010:33;:::i;:::-;8906:143;;;;:::o;9055:351::-;9125:6;9174:2;9162:9;9153:7;9149:23;9145:32;9142:119;;;9180:79;;:::i;:::-;9142:119;9300:1;9325:64;9381:7;9372:6;9361:9;9357:22;9325:64;:::i;:::-;9315:74;;9271:128;9055:351;;;;:::o;9412:332::-;9533:4;9571:2;9560:9;9556:18;9548:26;;9584:71;9652:1;9641:9;9637:17;9628:6;9584:71;:::i;:::-;9665:72;9733:2;9722:9;9718:18;9709:6;9665:72;:::i;:::-;9412:332;;;;;:::o;9750:85::-;9795:7;9824:5;9813:16;;9750:85;;;:::o;9841:60::-;9869:3;9890:5;9883:12;;9841:60;;;:::o;9907:158::-;9965:9;9998:61;10016:42;10025:32;10051:5;10025:32;:::i;:::-;10016:42;:::i;:::-;9998:61;:::i;:::-;9985:74;;9907:158;;;:::o;10071:147::-;10166:45;10205:5;10166:45;:::i;:::-;10161:3;10154:58;10071:147;;:::o;10224:807::-;10473:4;10511:3;10500:9;10496:19;10488:27;;10525:71;10593:1;10582:9;10578:17;10569:6;10525:71;:::i;:::-;10606:72;10674:2;10663:9;10659:18;10650:6;10606:72;:::i;:::-;10688:80;10764:2;10753:9;10749:18;10740:6;10688:80;:::i;:::-;10778;10854:2;10843:9;10839:18;10830:6;10778:80;:::i;:::-;10868:73;10936:3;10925:9;10921:19;10912:6;10868:73;:::i;:::-;10951;11019:3;11008:9;11004:19;10995:6;10951:73;:::i;:::-;10224:807;;;;;;;;;:::o;11037:143::-;11094:5;11125:6;11119:13;11110:22;;11141:33;11168:5;11141:33;:::i;:::-;11037:143;;;;:::o;11186:663::-;11274:6;11282;11290;11339:2;11327:9;11318:7;11314:23;11310:32;11307:119;;;11345:79;;:::i;:::-;11307:119;11465:1;11490:64;11546:7;11537:6;11526:9;11522:22;11490:64;:::i;:::-;11480:74;;11436:128;11603:2;11629:64;11685:7;11676:6;11665:9;11661:22;11629:64;:::i;:::-;11619:74;;11574:129;11742:2;11768:64;11824:7;11815:6;11804:9;11800:22;11768:64;:::i;:::-;11758:74;;11713:129;11186:663;;;;;:::o;11855:332::-;11976:4;12014:2;12003:9;11999:18;11991:26;;12027:71;12095:1;12084:9;12080:17;12071:6;12027:71;:::i;:::-;12108:72;12176:2;12165:9;12161:18;12152:6;12108:72;:::i;:::-;11855:332;;;;;:::o;12193:137::-;12247:5;12278:6;12272:13;12263:22;;12294:30;12318:5;12294:30;:::i;:::-;12193:137;;;;:::o;12336:345::-;12403:6;12452:2;12440:9;12431:7;12427:23;12423:32;12420:119;;;12458:79;;:::i;:::-;12420:119;12578:1;12603:61;12656:7;12647:6;12636:9;12632:22;12603:61;:::i;:::-;12593:71;;12549:125;12336:345;;;;:::o;12687:180::-;12735:77;12732:1;12725:88;12832:4;12829:1;12822:15;12856:4;12853:1;12846:15;12873:410;12913:7;12936:20;12954:1;12936:20;:::i;:::-;12931:25;;12970:20;12988:1;12970:20;:::i;:::-;12965:25;;13025:1;13022;13018:9;13047:30;13065:11;13047:30;:::i;:::-;13036:41;;13226:1;13217:7;13213:15;13210:1;13207:22;13187:1;13180:9;13160:83;13137:139;;13256:18;;:::i;:::-;13137:139;12921:362;12873:410;;;;:::o;13289:180::-;13337:77;13334:1;13327:88;13434:4;13431:1;13424:15;13458:4;13455:1;13448:15;13475:185;13515:1;13532:20;13550:1;13532:20;:::i;:::-;13527:25;;13566:20;13584:1;13566:20;:::i;:::-;13561:25;;13605:1;13595:35;;13610:18;;:::i;:::-;13595:35;13652:1;13649;13645:9;13640:14;;13475:185;;;;:::o;13666:220::-;13806:34;13802:1;13794:6;13790:14;13783:58;13875:3;13870:2;13862:6;13858:15;13851:28;13666:220;:::o;13892:366::-;14034:3;14055:67;14119:2;14114:3;14055:67;:::i;:::-;14048:74;;14131:93;14220:3;14131:93;:::i;:::-;14249:2;14244:3;14240:12;14233:19;;13892:366;;;:::o;14264:419::-;14430:4;14468:2;14457:9;14453:18;14445:26;;14517:9;14511:4;14507:20;14503:1;14492:9;14488:17;14481:47;14545:131;14671:4;14545:131;:::i;:::-;14537:139;;14264:419;;;:::o;14689:223::-;14829:34;14825:1;14817:6;14813:14;14806:58;14898:6;14893:2;14885:6;14881:15;14874:31;14689:223;:::o;14918:366::-;15060:3;15081:67;15145:2;15140:3;15081:67;:::i;:::-;15074:74;;15157:93;15246:3;15157:93;:::i;:::-;15275:2;15270:3;15266:12;15259:19;;14918:366;;;:::o;15290:419::-;15456:4;15494:2;15483:9;15479:18;15471:26;;15543:9;15537:4;15533:20;15529:1;15518:9;15514:17;15507:47;15571:131;15697:4;15571:131;:::i;:::-;15563:139;;15290:419;;;:::o;15715:221::-;15855:34;15851:1;15843:6;15839:14;15832:58;15924:4;15919:2;15911:6;15907:15;15900:29;15715:221;:::o;15942:366::-;16084:3;16105:67;16169:2;16164:3;16105:67;:::i;:::-;16098:74;;16181:93;16270:3;16181:93;:::i;:::-;16299:2;16294:3;16290:12;16283:19;;15942:366;;;:::o;16314:419::-;16480:4;16518:2;16507:9;16503:18;16495:26;;16567:9;16561:4;16557:20;16553:1;16542:9;16538:17;16531:47;16595:131;16721:4;16595:131;:::i;:::-;16587:139;;16314:419;;;:::o;16739:224::-;16879:34;16875:1;16867:6;16863:14;16856:58;16948:7;16943:2;16935:6;16931:15;16924:32;16739:224;:::o;16969:366::-;17111:3;17132:67;17196:2;17191:3;17132:67;:::i;:::-;17125:74;;17208:93;17297:3;17208:93;:::i;:::-;17326:2;17321:3;17317:12;17310:19;;16969:366;;;:::o;17341:419::-;17507:4;17545:2;17534:9;17530:18;17522:26;;17594:9;17588:4;17584:20;17580:1;17569:9;17565:17;17558:47;17622:131;17748:4;17622:131;:::i;:::-;17614:139;;17341:419;;;:::o;17766:222::-;17906:34;17902:1;17894:6;17890:14;17883:58;17975:5;17970:2;17962:6;17958:15;17951:30;17766:222;:::o;17994:366::-;18136:3;18157:67;18221:2;18216:3;18157:67;:::i;:::-;18150:74;;18233:93;18322:3;18233:93;:::i;:::-;18351:2;18346:3;18342:12;18335:19;;17994:366;;;:::o;18366:419::-;18532:4;18570:2;18559:9;18555:18;18547:26;;18619:9;18613:4;18609:20;18605:1;18594:9;18590:17;18583:47;18647:131;18773:4;18647:131;:::i;:::-;18639:139;;18366:419;;;:::o;18791:228::-;18931:34;18927:1;18919:6;18915:14;18908:58;19000:11;18995:2;18987:6;18983:15;18976:36;18791:228;:::o;19025:366::-;19167:3;19188:67;19252:2;19247:3;19188:67;:::i;:::-;19181:74;;19264:93;19353:3;19264:93;:::i;:::-;19382:2;19377:3;19373:12;19366:19;;19025:366;;;:::o;19397:419::-;19563:4;19601:2;19590:9;19586:18;19578:26;;19650:9;19644:4;19640:20;19636:1;19625:9;19621:17;19614:47;19678:131;19804:4;19678:131;:::i;:::-;19670:139;;19397:419;;;:::o;19822:175::-;19962:27;19958:1;19950:6;19946:14;19939:51;19822:175;:::o;20003:366::-;20145:3;20166:67;20230:2;20225:3;20166:67;:::i;:::-;20159:74;;20242:93;20331:3;20242:93;:::i;:::-;20360:2;20355:3;20351:12;20344:19;;20003:366;;;:::o;20375:419::-;20541:4;20579:2;20568:9;20564:18;20556:26;;20628:9;20622:4;20618:20;20614:1;20603:9;20599:17;20592:47;20656:131;20782:4;20656:131;:::i;:::-;20648:139;;20375:419;;;:::o;20800:191::-;20840:3;20859:20;20877:1;20859:20;:::i;:::-;20854:25;;20893:20;20911:1;20893:20;:::i;:::-;20888:25;;20936:1;20933;20929:9;20922:16;;20957:3;20954:1;20951:10;20948:36;;;20964:18;;:::i;:::-;20948:36;20800:191;;;;:::o;20997:176::-;21137:28;21133:1;21125:6;21121:14;21114:52;20997:176;:::o;21179:366::-;21321:3;21342:67;21406:2;21401:3;21342:67;:::i;:::-;21335:74;;21418:93;21507:3;21418:93;:::i;:::-;21536:2;21531:3;21527:12;21520:19;;21179:366;;;:::o;21551:419::-;21717:4;21755:2;21744:9;21740:18;21732:26;;21804:9;21798:4;21794:20;21790:1;21779:9;21775:17;21768:47;21832:131;21958:4;21832:131;:::i;:::-;21824:139;;21551:419;;;:::o;21976:194::-;22016:4;22036:20;22054:1;22036:20;:::i;:::-;22031:25;;22070:20;22088:1;22070:20;:::i;:::-;22065:25;;22114:1;22111;22107:9;22099:17;;22138:1;22132:4;22129:11;22126:37;;;22143:18;;:::i;:::-;22126:37;21976:194;;;;:::o;22176:229::-;22316:34;22312:1;22304:6;22300:14;22293:58;22385:12;22380:2;22372:6;22368:15;22361:37;22176:229;:::o;22411:366::-;22553:3;22574:67;22638:2;22633:3;22574:67;:::i;:::-;22567:74;;22650:93;22739:3;22650:93;:::i;:::-;22768:2;22763:3;22759:12;22752:19;;22411:366;;;:::o;22783:419::-;22949:4;22987:2;22976:9;22972:18;22964:26;;23036:9;23030:4;23026:20;23022:1;23011:9;23007:17;23000:47;23064:131;23190:4;23064:131;:::i;:::-;23056:139;;22783:419;;;:::o;23208:180::-;23256:77;23253:1;23246:88;23353:4;23350:1;23343:15;23377:4;23374:1;23367:15;23394:180;23442:77;23439:1;23432:88;23539:4;23536:1;23529:15;23563:4;23560:1;23553:15;23580:114;23647:6;23681:5;23675:12;23665:22;;23580:114;;;:::o;23700:184::-;23799:11;23833:6;23828:3;23821:19;23873:4;23868:3;23864:14;23849:29;;23700:184;;;;:::o;23890:132::-;23957:4;23980:3;23972:11;;24010:4;24005:3;24001:14;23993:22;;23890:132;;;:::o;24028:108::-;24105:24;24123:5;24105:24;:::i;:::-;24100:3;24093:37;24028:108;;:::o;24142:179::-;24211:10;24232:46;24274:3;24266:6;24232:46;:::i;:::-;24310:4;24305:3;24301:14;24287:28;;24142:179;;;;:::o;24327:113::-;24397:4;24429;24424:3;24420:14;24412:22;;24327:113;;;:::o;24476:732::-;24595:3;24624:54;24672:5;24624:54;:::i;:::-;24694:86;24773:6;24768:3;24694:86;:::i;:::-;24687:93;;24804:56;24854:5;24804:56;:::i;:::-;24883:7;24914:1;24899:284;24924:6;24921:1;24918:13;24899:284;;;25000:6;24994:13;25027:63;25086:3;25071:13;25027:63;:::i;:::-;25020:70;;25113:60;25166:6;25113:60;:::i;:::-;25103:70;;24959:224;24946:1;24943;24939:9;24934:14;;24899:284;;;24903:14;25199:3;25192:10;;24600:608;;;24476:732;;;;:::o;25214:831::-;25477:4;25515:3;25504:9;25500:19;25492:27;;25529:71;25597:1;25586:9;25582:17;25573:6;25529:71;:::i;:::-;25610:80;25686:2;25675:9;25671:18;25662:6;25610:80;:::i;:::-;25737:9;25731:4;25727:20;25722:2;25711:9;25707:18;25700:48;25765:108;25868:4;25859:6;25765:108;:::i;:::-;25757:116;;25883:72;25951:2;25940:9;25936:18;25927:6;25883:72;:::i;:::-;25965:73;26033:3;26022:9;26018:19;26009:6;25965:73;:::i;:::-;25214:831;;;;;;;;:::o;26051:177::-;26191:29;26187:1;26179:6;26175:14;26168:53;26051:177;:::o;26234:366::-;26376:3;26397:67;26461:2;26456:3;26397:67;:::i;:::-;26390:74;;26473:93;26562:3;26473:93;:::i;:::-;26591:2;26586:3;26582:12;26575:19;;26234:366;;;:::o;26606:419::-;26772:4;26810:2;26799:9;26795:18;26787:26;;26859:9;26853:4;26849:20;26845:1;26834:9;26830:17;26823:47;26887:131;27013:4;26887:131;:::i;:::-;26879:139;;26606:419;;;:::o
Swarm Source
ipfs://a8f8b2ee06a30637b21d4f8b0103fd99135281bc4a8e22e19dc19e0a05a2f72a
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.