ERC-20
Overview
Max Total Supply
69,420,000 ERC20 ***
Holders
71
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 8 Decimals)
Balance
612,284.4 ERC20 ***Value
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
DAI
Compiler Version
v0.8.10+commit.fc410830
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-08-19 */ /** */ /** telegram: https://t.me/hposm9i twitter: https://twitter.com/hposm9i website: https://hposm9i.com HARRYPOTTEROBAMASUPERMARIO9INU (TICKER: $DAI) TESTNET https://sepolia.etherscan.io/token/0x66cbd3024a2624606c69e7c8b83138fe2acbd5b5#code ██╗░░██╗██████╗░░█████╗░░██████╗███╗░░░███╗░█████╗░██╗ ░███████╗██████╗░░█████╗░██╗ ██║░░██║██╔══██╗██╔══██╗██╔════╝████╗░████║██╔══██╗██║ ██╔██╔══╝██╔══██╗██╔══██╗██║ ███████║██████╔╝██║░░██║╚█████╗░██╔████╔██║╚██████║██║ ╚██████╗░██║░░██║███████║██║ ██╔══██║██╔═══╝░██║░░██║░╚═══██╗██║╚██╔╝██║░╚═══██║██║ ░╚═██╔██╗██║░░██║██╔══██║██║ ██║░░██║██║░░░░░╚█████╔╝██████╔╝██║░╚═╝░██║░█████╔╝██║ ███████╔╝██████╔╝██║░░██║██║ ╚═╝░░╚═╝╚═╝░░░░░░╚════╝░╚═════╝░╚═╝░░░░░╚═╝░╚════╝░╚═╝ ╚══════╝░╚═════╝░╚═╝░░╚═╝╚═╝ **/ // SPDX-License-Identifier: MIT pragma solidity 0.8.10; 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 ); } contract Ownable is Context { address private _owner; event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); constructor() { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } } interface IUniswapV2Factory { function createPair( address tokenA, address tokenB ) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); } contract DAI is Context, IERC20, Ownable { mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; mapping(address => bool) private _isExcludedFromFee; mapping(address => uint256) private _holderLastTransferTimestamp; bool public transferDelayEnabled = false; address payable private _taxWallet; uint256 private _initialBuyTax = 10; uint256 private _initialSellTax = 30; uint256 private _finalBuyTax = 1; uint256 private _finalSellTax = 1; uint256 public _reduceBuyTaxAt = 30; uint256 public _reduceSellTaxAt = 45; uint256 private _preventSwapBefore = 30; uint256 private _buyCount = 0; uint8 private constant _decimals = 8; uint256 private constant _tTotal = 69_420_000 * 10 ** _decimals; string private constant _name = unicode"HarryPotterObamaSuperMario9Inu"; string private constant _symbol = unicode"DAI"; uint256 public _maxTxAmount = _tTotal / 50; uint256 public _maxWalletSize = _tTotal / 50; uint256 public _taxSwapThreshold = _tTotal / 1000; uint256 public _maxTaxSwap = _tTotal / 1000; IUniswapV2Router02 private uniswapV2Router; address private uniswapV2Pair; bool private tradingOpen; bool private inSwap = false; bool private swapEnabled = false; event MaxTxAmountUpdated(uint _maxTxAmount); modifier lockTheSwap() { inSwap = true; _; inSwap = false; } constructor() { _taxWallet = payable(_msgSender()); _balances[_msgSender()] = _tTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[_taxWallet] = true; emit Transfer(address(0), _msgSender(), _tTotal); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function transfer( address recipient, uint256 amount ) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance( address owner, address spender ) public view override returns (uint256) { return _allowances[owner][spender]; } function approve( address spender, uint256 amount ) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom( address sender, address recipient, uint256 amount ) public override returns (bool) { _transfer(sender, recipient, amount); _approve( sender, _msgSender(), _allowances[sender][_msgSender()] - amount ); return true; } function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _transfer(address from, address to, uint256 amount) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); uint256 taxAmount = 0; if (from != owner() && to != owner()) { if (transferDelayEnabled) { if ( to != address(uniswapV2Router) && to != address(uniswapV2Pair) ) { require( _holderLastTransferTimestamp[tx.origin] < block.number, "Only one transfer per block allowed." ); _holderLastTransferTimestamp[tx.origin] = block.number; } } if ( from == uniswapV2Pair && to != address(uniswapV2Router) && !_isExcludedFromFee[to] ) { require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount."); require( balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize." ); _buyCount++; } taxAmount = (amount * ( (_buyCount > _reduceBuyTaxAt) ? _finalBuyTax : _initialBuyTax )) / 100; if (to == uniswapV2Pair && from != address(this)) { taxAmount = (amount * ( (_buyCount > _reduceSellTaxAt) ? _finalSellTax : _initialSellTax )) / 100; } uint256 contractTokenBalance = balanceOf(address(this)); if ( !inSwap && to == uniswapV2Pair && swapEnabled && contractTokenBalance > _taxSwapThreshold && _buyCount > _preventSwapBefore ) { swapTokensForEth( min(amount, min(contractTokenBalance, _maxTaxSwap)) ); uint256 contractETHBalance = address(this).balance; if (contractETHBalance > 0) { sendETHToFee(address(this).balance); } } } if (taxAmount > 0) { _balances[address(this)] = _balances[address(this)] + taxAmount; emit Transfer(from, address(this), taxAmount); } _balances[from] = _balances[from] - amount; _balances[to] = _balances[to] + (amount - taxAmount); emit Transfer(from, to, amount - taxAmount); } function min(uint256 a, uint256 b) private pure returns (uint256) { return (a > b) ? b : a; } function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { if (tokenAmount == 0) { return; } if (!tradingOpen) { return; } address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function removeLimits() external onlyOwner { _maxTxAmount = _tTotal; _maxWalletSize = _tTotal; transferDelayEnabled = false; _reduceSellTaxAt = 20; _reduceBuyTaxAt = 20; emit MaxTxAmountUpdated(_tTotal); } function sendETHToFee(uint256 amount) private { _taxWallet.transfer(amount); } function changeSwapAmount(uint256 amount) external onlyOwner { _maxTaxSwap = amount * 1e8; _taxSwapThreshold = _maxTaxSwap; } function Launch() external onlyOwner { require(!tradingOpen, "trading is already open"); uniswapV2Router = IUniswapV2Router02( 0xC532a74256D3Db42D0Bf7a0400fEFDbad7694008 ); _approve(address(this), address(uniswapV2Router), _tTotal); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair( address(this), uniswapV2Router.WETH() ); uniswapV2Router.addLiquidityETH{value: address(this).balance}( address(this), balanceOf(address(this)), 0, 0, owner(), block.timestamp ); IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); swapEnabled = true; tradingOpen = true; } receive() external payable {} function manualSwap() external { require(_msgSender() == _taxWallet); uint256 tokenBalance = balanceOf(address(this)); if (tokenBalance > 0) { swapTokensForEth(tokenBalance); } uint256 ethBalance = address(this).balance; if (ethBalance > 0) { sendETHToFee(ethBalance); } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"Launch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_reduceBuyTaxAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_reduceSellTaxAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"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":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"changeSwapAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","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":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040526000600560006101000a81548160ff021916908315150217905550600a600655601e60075560016008556001600955601e600a55602d600b55601e600c556000600d5560326008600a62000059919062000669565b63042343e06200006a9190620006ba565b6200007691906200074a565b600e5560326008600a6200008b919062000669565b63042343e06200009c9190620006ba565b620000a891906200074a565b600f556103e86008600a620000be919062000669565b63042343e0620000cf9190620006ba565b620000db91906200074a565b6010556103e86008600a620000f1919062000669565b63042343e0620001029190620006ba565b6200010e91906200074a565b6011556000601360156101000a81548160ff0219169083151502179055506000601360166101000a81548160ff0219169083151502179055503480156200015457600080fd5b506000620001676200049e60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350620002156200049e60201b60201c565b600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506008600a62000265919062000669565b63042343e0620002769190620006ba565b600160006200028a6200049e60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160036000620002de620004a660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600360003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160036000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620004116200049e60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6008600a62000470919062000669565b63042343e0620004819190620006ba565b60405162000490919062000793565b60405180910390a3620007b0565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156200055d57808604811115620005355762000534620004cf565b5b6001851615620005455780820291505b80810290506200055585620004fe565b945062000515565b94509492505050565b6000826200057857600190506200064b565b816200058857600090506200064b565b8160018114620005a15760028114620005ac57620005e2565b60019150506200064b565b60ff841115620005c157620005c0620004cf565b5b8360020a915084821115620005db57620005da620004cf565b5b506200064b565b5060208310610133831016604e8410600b84101617156200061c5782820a905083811115620006165762000615620004cf565b5b6200064b565b6200062b84848460016200050b565b92509050818404811115620006455762000644620004cf565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b6000620006768262000652565b915062000683836200065c565b9250620006b27fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000566565b905092915050565b6000620006c78262000652565b9150620006d48362000652565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161562000710576200070f620004cf565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000620007578262000652565b9150620007648362000652565b9250826200077757620007766200071b565b5b828204905092915050565b6200078d8162000652565b82525050565b6000602082019050620007aa600083018462000782565b92915050565b612e9780620007c06000396000f3fe6080604052600436106101395760003560e01c8063715018a6116100ab57806395d89b411161006f57806395d89b41146103d9578063a9059cbb14610404578063bf474bed14610441578063c36956a01461046c578063c876d0b914610497578063dd62ed3e146104c257610140565b8063715018a61461032a578063751039fc146103415780637d1db4a5146103585780638da5cb5b146103835780638f9a55c0146103ae57610140565b80630faee56f116100fd5780630faee56f1461021857806318160ddd1461024357806323b872dd1461026e578063313ce567146102ab57806351bc3c85146102d657806370a08231146102ed57610140565b806302ac81681461014557806306fdde031461015c578063095ea7b3146101875780630c193045146101c45780630ce5fd36146101ef57610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a6104ff565b005b34801561016857600080fd5b50610171610a37565b60405161017e9190611ff1565b60405180910390f35b34801561019357600080fd5b506101ae60048036038101906101a991906120ac565b610a74565b6040516101bb9190612107565b60405180910390f35b3480156101d057600080fd5b506101d9610a92565b6040516101e69190612131565b60405180910390f35b3480156101fb57600080fd5b506102166004803603810190610211919061214c565b610a98565b005b34801561022457600080fd5b5061022d610b4f565b60405161023a9190612131565b60405180910390f35b34801561024f57600080fd5b50610258610b55565b6040516102659190612131565b60405180910390f35b34801561027a57600080fd5b5061029560048036038101906102909190612179565b610b79565b6040516102a29190612107565b60405180910390f35b3480156102b757600080fd5b506102c0610c31565b6040516102cd91906121e8565b60405180910390f35b3480156102e257600080fd5b506102eb610c3a565b005b3480156102f957600080fd5b50610314600480360381019061030f9190612203565b610cd7565b6040516103219190612131565b60405180910390f35b34801561033657600080fd5b5061033f610d20565b005b34801561034d57600080fd5b50610356610e73565b005b34801561036457600080fd5b5061036d610fce565b60405161037a9190612131565b60405180910390f35b34801561038f57600080fd5b50610398610fd4565b6040516103a5919061223f565b60405180910390f35b3480156103ba57600080fd5b506103c3610ffd565b6040516103d09190612131565b60405180910390f35b3480156103e557600080fd5b506103ee611003565b6040516103fb9190611ff1565b60405180910390f35b34801561041057600080fd5b5061042b600480360381019061042691906120ac565b611040565b6040516104389190612107565b60405180910390f35b34801561044d57600080fd5b5061045661105e565b6040516104639190612131565b60405180910390f35b34801561047857600080fd5b50610481611064565b60405161048e9190612131565b60405180910390f35b3480156104a357600080fd5b506104ac61106a565b6040516104b99190612107565b60405180910390f35b3480156104ce57600080fd5b506104e960048036038101906104e4919061225a565b61107d565b6040516104f69190612131565b60405180910390f35b610507611104565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610594576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161058b906122e6565b60405180910390fd5b601360149054906101000a900460ff16156105e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105db90612352565b60405180910390fd5b73c532a74256d3db42d0bf7a0400fefdbad7694008601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061068230601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166008600a61066e91906124d4565b63042343e061067d919061251f565b61110c565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106ef573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610713919061258e565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c0919061258e565b6040518363ffffffff1660e01b81526004016107dd9291906125bb565b6020604051808303816000875af11580156107fc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610820919061258e565b601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71947306108a930610cd7565b6000806108b4610fd4565b426040518863ffffffff1660e01b81526004016108d696959493929190612629565b60606040518083038185885af11580156108f4573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610919919061269f565b505050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016109bb9291906126f2565b6020604051808303816000875af11580156109da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109fe9190612747565b506001601360166101000a81548160ff0219169083151502179055506001601360146101000a81548160ff021916908315150217905550565b60606040518060400160405280601e81526020017f4861727279506f747465724f62616d6153757065724d6172696f39496e750000815250905090565b6000610a88610a81611104565b848461110c565b6001905092915050565b600a5481565b610aa0611104565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b2d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b24906122e6565b60405180910390fd5b6305f5e10081610b3d919061251f565b60118190555060115460108190555050565b60115481565b60006008600a610b6591906124d4565b63042343e0610b74919061251f565b905090565b6000610b868484846112d7565b610c2684610b92611104565b84600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610bdc611104565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610c219190612774565b61110c565b600190509392505050565b60006008905090565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610c7b611104565b73ffffffffffffffffffffffffffffffffffffffff1614610c9b57600080fd5b6000610ca630610cd7565b90506000811115610cbb57610cba81611c32565b5b60004790506000811115610cd357610cd281611ed3565b5b5050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610d28611104565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610db5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dac906122e6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610e7b611104565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f08576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eff906122e6565b60405180910390fd5b6008600a610f1691906124d4565b63042343e0610f25919061251f565b600e819055506008600a610f3991906124d4565b63042343e0610f48919061251f565b600f819055506000600560006101000a81548160ff0219169083151502179055506014600b819055506014600a819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6008600a610fa891906124d4565b63042343e0610fb7919061251f565b604051610fc49190612131565b60405180910390a1565b600e5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600f5481565b60606040518060400160405280600381526020017f4441490000000000000000000000000000000000000000000000000000000000815250905090565b600061105461104d611104565b84846112d7565b6001905092915050565b60105481565b600b5481565b600560009054906101000a900460ff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561117c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111739061281a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156111ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111e3906128ac565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112ca9190612131565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611347576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133e9061293e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156113b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113ae906129d0565b60405180910390fd5b600081116113fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113f190612a62565b60405180910390fd5b6000611404610fd4565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156114725750611442610fd4565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561199857600560009054906101000a900460ff161561160457601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156115385750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156116035743600460003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054106115be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115b590612af4565b60405180910390fd5b43600460003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156116af5750601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156117055750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156117c057600e5482111561174f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161174690612b60565b60405180910390fd5b600f548261175c85610cd7565b6117669190612b80565b11156117a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161179e90612c22565b60405180910390fd5b600d60008154809291906117ba90612c42565b91905055505b6064600a54600d54116117d5576006546117d9565b6008545b836117e4919061251f565b6117ee9190612cba565b9050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561187957503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156118af576064600b54600d541161189357600754611897565b6009545b836118a2919061251f565b6118ac9190612cba565b90505b60006118ba30610cd7565b9050601360159054906101000a900460ff161580156119265750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b801561193e5750601360169054906101000a900460ff165b801561194b575060105481115b801561195a5750600c54600d54115b156119965761197c6119778461197284601154611f3f565b611f3f565b611c32565b600047905060008111156119945761199347611ed3565b5b505b505b6000811115611a955780600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119ec9190612b80565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611a8c9190612131565b60405180910390a35b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ae09190612774565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508082611b2f9190612774565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b799190612b80565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8385611c179190612774565b604051611c249190612131565b60405180910390a350505050565b6001601360156101000a81548160ff0219169083151502179055506000811415611c5b57611eb5565b601360149054906101000a900460ff16611c7457611eb5565b6000600267ffffffffffffffff811115611c9157611c90612ceb565b5b604051908082528060200260200182016040528015611cbf5781602001602082028036833780820191505090505b5090503081600081518110611cd757611cd6612d1a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611d7e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611da2919061258e565b81600181518110611db657611db5612d1a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611e1d30601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461110c565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611e81959493929190612e07565b600060405180830381600087803b158015611e9b57600080fd5b505af1158015611eaf573d6000803e3d6000fd5b50505050505b6000601360156101000a81548160ff02191690831515021790555050565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611f3b573d6000803e3d6000fd5b5050565b6000818311611f4e5782611f50565b815b905092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611f92578082015181840152602081019050611f77565b83811115611fa1576000848401525b50505050565b6000601f19601f8301169050919050565b6000611fc382611f58565b611fcd8185611f63565b9350611fdd818560208601611f74565b611fe681611fa7565b840191505092915050565b6000602082019050818103600083015261200b8184611fb8565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061204382612018565b9050919050565b61205381612038565b811461205e57600080fd5b50565b6000813590506120708161204a565b92915050565b6000819050919050565b61208981612076565b811461209457600080fd5b50565b6000813590506120a681612080565b92915050565b600080604083850312156120c3576120c2612013565b5b60006120d185828601612061565b92505060206120e285828601612097565b9150509250929050565b60008115159050919050565b612101816120ec565b82525050565b600060208201905061211c60008301846120f8565b92915050565b61212b81612076565b82525050565b60006020820190506121466000830184612122565b92915050565b60006020828403121561216257612161612013565b5b600061217084828501612097565b91505092915050565b60008060006060848603121561219257612191612013565b5b60006121a086828701612061565b93505060206121b186828701612061565b92505060406121c286828701612097565b9150509250925092565b600060ff82169050919050565b6121e2816121cc565b82525050565b60006020820190506121fd60008301846121d9565b92915050565b60006020828403121561221957612218612013565b5b600061222784828501612061565b91505092915050565b61223981612038565b82525050565b60006020820190506122546000830184612230565b92915050565b6000806040838503121561227157612270612013565b5b600061227f85828601612061565b925050602061229085828601612061565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006122d0602083611f63565b91506122db8261229a565b602082019050919050565b600060208201905081810360008301526122ff816122c3565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b600061233c601783611f63565b915061234782612306565b602082019050919050565b6000602082019050818103600083015261236b8161232f565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156123f8578086048111156123d4576123d3612372565b5b60018516156123e35780820291505b80810290506123f1856123a1565b94506123b8565b94509492505050565b60008261241157600190506124cd565b8161241f57600090506124cd565b8160018114612435576002811461243f5761246e565b60019150506124cd565b60ff84111561245157612450612372565b5b8360020a91508482111561246857612467612372565b5b506124cd565b5060208310610133831016604e8410600b84101617156124a35782820a90508381111561249e5761249d612372565b5b6124cd565b6124b084848460016123ae565b925090508184048111156124c7576124c6612372565b5b81810290505b9392505050565b60006124df82612076565b91506124ea836121cc565b92506125177fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612401565b905092915050565b600061252a82612076565b915061253583612076565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561256e5761256d612372565b5b828202905092915050565b6000815190506125888161204a565b92915050565b6000602082840312156125a4576125a3612013565b5b60006125b284828501612579565b91505092915050565b60006040820190506125d06000830185612230565b6125dd6020830184612230565b9392505050565b6000819050919050565b6000819050919050565b600061261361260e612609846125e4565b6125ee565b612076565b9050919050565b612623816125f8565b82525050565b600060c08201905061263e6000830189612230565b61264b6020830188612122565b612658604083018761261a565b612665606083018661261a565b6126726080830185612230565b61267f60a0830184612122565b979650505050505050565b60008151905061269981612080565b92915050565b6000806000606084860312156126b8576126b7612013565b5b60006126c68682870161268a565b93505060206126d78682870161268a565b92505060406126e88682870161268a565b9150509250925092565b60006040820190506127076000830185612230565b6127146020830184612122565b9392505050565b612724816120ec565b811461272f57600080fd5b50565b6000815190506127418161271b565b92915050565b60006020828403121561275d5761275c612013565b5b600061276b84828501612732565b91505092915050565b600061277f82612076565b915061278a83612076565b92508282101561279d5761279c612372565b5b828203905092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612804602483611f63565b915061280f826127a8565b604082019050919050565b60006020820190508181036000830152612833816127f7565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612896602283611f63565b91506128a18261283a565b604082019050919050565b600060208201905081810360008301526128c581612889565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612928602583611f63565b9150612933826128cc565b604082019050919050565b600060208201905081810360008301526129578161291b565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006129ba602383611f63565b91506129c58261295e565b604082019050919050565b600060208201905081810360008301526129e9816129ad565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612a4c602983611f63565b9150612a57826129f0565b604082019050919050565b60006020820190508181036000830152612a7b81612a3f565b9050919050565b7f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f60008201527f7765642e00000000000000000000000000000000000000000000000000000000602082015250565b6000612ade602483611f63565b9150612ae982612a82565b604082019050919050565b60006020820190508181036000830152612b0d81612ad1565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b6000612b4a601983611f63565b9150612b5582612b14565b602082019050919050565b60006020820190508181036000830152612b7981612b3d565b9050919050565b6000612b8b82612076565b9150612b9683612076565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612bcb57612bca612372565b5b828201905092915050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b6000612c0c601a83611f63565b9150612c1782612bd6565b602082019050919050565b60006020820190508181036000830152612c3b81612bff565b9050919050565b6000612c4d82612076565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612c8057612c7f612372565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612cc582612076565b9150612cd083612076565b925082612ce057612cdf612c8b565b5b828204905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612d7e81612038565b82525050565b6000612d908383612d75565b60208301905092915050565b6000602082019050919050565b6000612db482612d49565b612dbe8185612d54565b9350612dc983612d65565b8060005b83811015612dfa578151612de18882612d84565b9750612dec83612d9c565b925050600181019050612dcd565b5085935050505092915050565b600060a082019050612e1c6000830188612122565b612e29602083018761261a565b8181036040830152612e3b8186612da9565b9050612e4a6060830185612230565b612e576080830184612122565b969550505050505056fea264697066735822122025ebd0b77a5a65ba8861e288ea2704df809f8ed180e64299d264c26a1637724164736f6c634300080a0033
Deployed Bytecode
0x6080604052600436106101395760003560e01c8063715018a6116100ab57806395d89b411161006f57806395d89b41146103d9578063a9059cbb14610404578063bf474bed14610441578063c36956a01461046c578063c876d0b914610497578063dd62ed3e146104c257610140565b8063715018a61461032a578063751039fc146103415780637d1db4a5146103585780638da5cb5b146103835780638f9a55c0146103ae57610140565b80630faee56f116100fd5780630faee56f1461021857806318160ddd1461024357806323b872dd1461026e578063313ce567146102ab57806351bc3c85146102d657806370a08231146102ed57610140565b806302ac81681461014557806306fdde031461015c578063095ea7b3146101875780630c193045146101c45780630ce5fd36146101ef57610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a6104ff565b005b34801561016857600080fd5b50610171610a37565b60405161017e9190611ff1565b60405180910390f35b34801561019357600080fd5b506101ae60048036038101906101a991906120ac565b610a74565b6040516101bb9190612107565b60405180910390f35b3480156101d057600080fd5b506101d9610a92565b6040516101e69190612131565b60405180910390f35b3480156101fb57600080fd5b506102166004803603810190610211919061214c565b610a98565b005b34801561022457600080fd5b5061022d610b4f565b60405161023a9190612131565b60405180910390f35b34801561024f57600080fd5b50610258610b55565b6040516102659190612131565b60405180910390f35b34801561027a57600080fd5b5061029560048036038101906102909190612179565b610b79565b6040516102a29190612107565b60405180910390f35b3480156102b757600080fd5b506102c0610c31565b6040516102cd91906121e8565b60405180910390f35b3480156102e257600080fd5b506102eb610c3a565b005b3480156102f957600080fd5b50610314600480360381019061030f9190612203565b610cd7565b6040516103219190612131565b60405180910390f35b34801561033657600080fd5b5061033f610d20565b005b34801561034d57600080fd5b50610356610e73565b005b34801561036457600080fd5b5061036d610fce565b60405161037a9190612131565b60405180910390f35b34801561038f57600080fd5b50610398610fd4565b6040516103a5919061223f565b60405180910390f35b3480156103ba57600080fd5b506103c3610ffd565b6040516103d09190612131565b60405180910390f35b3480156103e557600080fd5b506103ee611003565b6040516103fb9190611ff1565b60405180910390f35b34801561041057600080fd5b5061042b600480360381019061042691906120ac565b611040565b6040516104389190612107565b60405180910390f35b34801561044d57600080fd5b5061045661105e565b6040516104639190612131565b60405180910390f35b34801561047857600080fd5b50610481611064565b60405161048e9190612131565b60405180910390f35b3480156104a357600080fd5b506104ac61106a565b6040516104b99190612107565b60405180910390f35b3480156104ce57600080fd5b506104e960048036038101906104e4919061225a565b61107d565b6040516104f69190612131565b60405180910390f35b610507611104565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610594576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161058b906122e6565b60405180910390fd5b601360149054906101000a900460ff16156105e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105db90612352565b60405180910390fd5b73c532a74256d3db42d0bf7a0400fefdbad7694008601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061068230601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166008600a61066e91906124d4565b63042343e061067d919061251f565b61110c565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106ef573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610713919061258e565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c0919061258e565b6040518363ffffffff1660e01b81526004016107dd9291906125bb565b6020604051808303816000875af11580156107fc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610820919061258e565b601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71947306108a930610cd7565b6000806108b4610fd4565b426040518863ffffffff1660e01b81526004016108d696959493929190612629565b60606040518083038185885af11580156108f4573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610919919061269f565b505050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016109bb9291906126f2565b6020604051808303816000875af11580156109da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109fe9190612747565b506001601360166101000a81548160ff0219169083151502179055506001601360146101000a81548160ff021916908315150217905550565b60606040518060400160405280601e81526020017f4861727279506f747465724f62616d6153757065724d6172696f39496e750000815250905090565b6000610a88610a81611104565b848461110c565b6001905092915050565b600a5481565b610aa0611104565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b2d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b24906122e6565b60405180910390fd5b6305f5e10081610b3d919061251f565b60118190555060115460108190555050565b60115481565b60006008600a610b6591906124d4565b63042343e0610b74919061251f565b905090565b6000610b868484846112d7565b610c2684610b92611104565b84600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610bdc611104565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610c219190612774565b61110c565b600190509392505050565b60006008905090565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610c7b611104565b73ffffffffffffffffffffffffffffffffffffffff1614610c9b57600080fd5b6000610ca630610cd7565b90506000811115610cbb57610cba81611c32565b5b60004790506000811115610cd357610cd281611ed3565b5b5050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610d28611104565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610db5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dac906122e6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610e7b611104565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f08576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eff906122e6565b60405180910390fd5b6008600a610f1691906124d4565b63042343e0610f25919061251f565b600e819055506008600a610f3991906124d4565b63042343e0610f48919061251f565b600f819055506000600560006101000a81548160ff0219169083151502179055506014600b819055506014600a819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6008600a610fa891906124d4565b63042343e0610fb7919061251f565b604051610fc49190612131565b60405180910390a1565b600e5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600f5481565b60606040518060400160405280600381526020017f4441490000000000000000000000000000000000000000000000000000000000815250905090565b600061105461104d611104565b84846112d7565b6001905092915050565b60105481565b600b5481565b600560009054906101000a900460ff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561117c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111739061281a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156111ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111e3906128ac565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112ca9190612131565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611347576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133e9061293e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156113b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113ae906129d0565b60405180910390fd5b600081116113fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113f190612a62565b60405180910390fd5b6000611404610fd4565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156114725750611442610fd4565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561199857600560009054906101000a900460ff161561160457601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156115385750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156116035743600460003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054106115be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115b590612af4565b60405180910390fd5b43600460003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156116af5750601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156117055750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156117c057600e5482111561174f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161174690612b60565b60405180910390fd5b600f548261175c85610cd7565b6117669190612b80565b11156117a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161179e90612c22565b60405180910390fd5b600d60008154809291906117ba90612c42565b91905055505b6064600a54600d54116117d5576006546117d9565b6008545b836117e4919061251f565b6117ee9190612cba565b9050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561187957503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156118af576064600b54600d541161189357600754611897565b6009545b836118a2919061251f565b6118ac9190612cba565b90505b60006118ba30610cd7565b9050601360159054906101000a900460ff161580156119265750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b801561193e5750601360169054906101000a900460ff165b801561194b575060105481115b801561195a5750600c54600d54115b156119965761197c6119778461197284601154611f3f565b611f3f565b611c32565b600047905060008111156119945761199347611ed3565b5b505b505b6000811115611a955780600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119ec9190612b80565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611a8c9190612131565b60405180910390a35b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ae09190612774565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508082611b2f9190612774565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b799190612b80565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8385611c179190612774565b604051611c249190612131565b60405180910390a350505050565b6001601360156101000a81548160ff0219169083151502179055506000811415611c5b57611eb5565b601360149054906101000a900460ff16611c7457611eb5565b6000600267ffffffffffffffff811115611c9157611c90612ceb565b5b604051908082528060200260200182016040528015611cbf5781602001602082028036833780820191505090505b5090503081600081518110611cd757611cd6612d1a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611d7e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611da2919061258e565b81600181518110611db657611db5612d1a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611e1d30601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461110c565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611e81959493929190612e07565b600060405180830381600087803b158015611e9b57600080fd5b505af1158015611eaf573d6000803e3d6000fd5b50505050505b6000601360156101000a81548160ff02191690831515021790555050565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611f3b573d6000803e3d6000fd5b5050565b6000818311611f4e5782611f50565b815b905092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611f92578082015181840152602081019050611f77565b83811115611fa1576000848401525b50505050565b6000601f19601f8301169050919050565b6000611fc382611f58565b611fcd8185611f63565b9350611fdd818560208601611f74565b611fe681611fa7565b840191505092915050565b6000602082019050818103600083015261200b8184611fb8565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061204382612018565b9050919050565b61205381612038565b811461205e57600080fd5b50565b6000813590506120708161204a565b92915050565b6000819050919050565b61208981612076565b811461209457600080fd5b50565b6000813590506120a681612080565b92915050565b600080604083850312156120c3576120c2612013565b5b60006120d185828601612061565b92505060206120e285828601612097565b9150509250929050565b60008115159050919050565b612101816120ec565b82525050565b600060208201905061211c60008301846120f8565b92915050565b61212b81612076565b82525050565b60006020820190506121466000830184612122565b92915050565b60006020828403121561216257612161612013565b5b600061217084828501612097565b91505092915050565b60008060006060848603121561219257612191612013565b5b60006121a086828701612061565b93505060206121b186828701612061565b92505060406121c286828701612097565b9150509250925092565b600060ff82169050919050565b6121e2816121cc565b82525050565b60006020820190506121fd60008301846121d9565b92915050565b60006020828403121561221957612218612013565b5b600061222784828501612061565b91505092915050565b61223981612038565b82525050565b60006020820190506122546000830184612230565b92915050565b6000806040838503121561227157612270612013565b5b600061227f85828601612061565b925050602061229085828601612061565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006122d0602083611f63565b91506122db8261229a565b602082019050919050565b600060208201905081810360008301526122ff816122c3565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b600061233c601783611f63565b915061234782612306565b602082019050919050565b6000602082019050818103600083015261236b8161232f565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156123f8578086048111156123d4576123d3612372565b5b60018516156123e35780820291505b80810290506123f1856123a1565b94506123b8565b94509492505050565b60008261241157600190506124cd565b8161241f57600090506124cd565b8160018114612435576002811461243f5761246e565b60019150506124cd565b60ff84111561245157612450612372565b5b8360020a91508482111561246857612467612372565b5b506124cd565b5060208310610133831016604e8410600b84101617156124a35782820a90508381111561249e5761249d612372565b5b6124cd565b6124b084848460016123ae565b925090508184048111156124c7576124c6612372565b5b81810290505b9392505050565b60006124df82612076565b91506124ea836121cc565b92506125177fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612401565b905092915050565b600061252a82612076565b915061253583612076565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561256e5761256d612372565b5b828202905092915050565b6000815190506125888161204a565b92915050565b6000602082840312156125a4576125a3612013565b5b60006125b284828501612579565b91505092915050565b60006040820190506125d06000830185612230565b6125dd6020830184612230565b9392505050565b6000819050919050565b6000819050919050565b600061261361260e612609846125e4565b6125ee565b612076565b9050919050565b612623816125f8565b82525050565b600060c08201905061263e6000830189612230565b61264b6020830188612122565b612658604083018761261a565b612665606083018661261a565b6126726080830185612230565b61267f60a0830184612122565b979650505050505050565b60008151905061269981612080565b92915050565b6000806000606084860312156126b8576126b7612013565b5b60006126c68682870161268a565b93505060206126d78682870161268a565b92505060406126e88682870161268a565b9150509250925092565b60006040820190506127076000830185612230565b6127146020830184612122565b9392505050565b612724816120ec565b811461272f57600080fd5b50565b6000815190506127418161271b565b92915050565b60006020828403121561275d5761275c612013565b5b600061276b84828501612732565b91505092915050565b600061277f82612076565b915061278a83612076565b92508282101561279d5761279c612372565b5b828203905092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612804602483611f63565b915061280f826127a8565b604082019050919050565b60006020820190508181036000830152612833816127f7565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612896602283611f63565b91506128a18261283a565b604082019050919050565b600060208201905081810360008301526128c581612889565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612928602583611f63565b9150612933826128cc565b604082019050919050565b600060208201905081810360008301526129578161291b565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006129ba602383611f63565b91506129c58261295e565b604082019050919050565b600060208201905081810360008301526129e9816129ad565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612a4c602983611f63565b9150612a57826129f0565b604082019050919050565b60006020820190508181036000830152612a7b81612a3f565b9050919050565b7f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f60008201527f7765642e00000000000000000000000000000000000000000000000000000000602082015250565b6000612ade602483611f63565b9150612ae982612a82565b604082019050919050565b60006020820190508181036000830152612b0d81612ad1565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b6000612b4a601983611f63565b9150612b5582612b14565b602082019050919050565b60006020820190508181036000830152612b7981612b3d565b9050919050565b6000612b8b82612076565b9150612b9683612076565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612bcb57612bca612372565b5b828201905092915050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b6000612c0c601a83611f63565b9150612c1782612bd6565b602082019050919050565b60006020820190508181036000830152612c3b81612bff565b9050919050565b6000612c4d82612076565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612c8057612c7f612372565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612cc582612076565b9150612cd083612076565b925082612ce057612cdf612c8b565b5b828204905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612d7e81612038565b82525050565b6000612d908383612d75565b60208301905092915050565b6000602082019050919050565b6000612db482612d49565b612dbe8185612d54565b9350612dc983612d65565b8060005b83811015612dfa578151612de18882612d84565b9750612dec83612d9c565b925050600181019050612dcd565b5085935050505092915050565b600060a082019050612e1c6000830188612122565b612e29602083018761261a565b8181036040830152612e3b8186612da9565b9050612e4a6060830185612230565b612e576080830184612122565b969550505050505056fea264697066735822122025ebd0b77a5a65ba8861e288ea2704df809f8ed180e64299d264c26a1637724164736f6c634300080a0033
Deployed Bytecode Sourcemap
4347:9130:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12243:820;;;;;;;;;;;;;:::i;:::-;;6190:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7073:186;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4904:35;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12087:148;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5473:43;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6467:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7267:350;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6376:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13108:366;;;;;;;;;;;;;:::i;:::-;;6570:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3372:148;;;;;;;;;;;;;:::i;:::-;;11715:264;;;;;;;;;;;;;:::i;:::-;;5317:42;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3158:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5366:44;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6281:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6697:192;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5417:49;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4946:36;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4650:40;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6897:168;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12243:820;3295:12;:10;:12::i;:::-;3285:22;;:6;;;;;;;;;;:22;;;3277:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12300:11:::1;;;;;;;;;;;12299:12;12291:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;12401:42;12350:15;;:104;;;;;;;;;;;;;;;;;;12465:58;12482:4;12497:15;;;;;;;;;;;5108:1;5164:2;:15;;;;:::i;:::-;5151:10;:28;;;;:::i;:::-;12465:8;:58::i;:::-;12568:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12550:55;;;12628:4;12648:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12550:131;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12534:13;;:147;;;;;;;;;;;;;;;;;;12692:15;;;;;;;;;;;:31;;;12731:21;12776:4;12796:24;12814:4;12796:9;:24::i;:::-;12835:1;12851::::0;12867:7:::1;:5;:7::i;:::-;12889:15;12692:223;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;12933:13;;;;;;;;;;;12926:29;;;12964:15;;;;;;;;;;;12982:14;12926:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;13022:4;13008:11;;:18;;;;;;;;;;;;;;;;;;13051:4;13037:11;;:18;;;;;;;;;;;;;;;;;;12243:820::o:0;6190:83::-;6227:13;6260:5;;;;;;;;;;;;;;;;;6253:12;;6190:83;:::o;7073:186::-;7173:4;7190:39;7199:12;:10;:12::i;:::-;7213:7;7222:6;7190:8;:39::i;:::-;7247:4;7240:11;;7073:186;;;;:::o;4904:35::-;;;;:::o;12087:148::-;3295:12;:10;:12::i;:::-;3285:22;;:6;;;;;;;;;;:22;;;3277:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12182:3:::1;12173:6;:12;;;;:::i;:::-;12159:11;:26;;;;12216:11;;12196:17;:31;;;;12087:148:::0;:::o;5473:43::-;;;;:::o;6467:95::-;6520:7;5108:1;5164:2;:15;;;;:::i;:::-;5151:10;:28;;;;:::i;:::-;6540:14;;6467:95;:::o;7267:350::-;7399:4;7416:36;7426:6;7434:9;7445:6;7416:9;:36::i;:::-;7463:124;7486:6;7507:12;:10;:12::i;:::-;7570:6;7534:11;:19;7546:6;7534:19;;;;;;;;;;;;;;;:33;7554:12;:10;:12::i;:::-;7534:33;;;;;;;;;;;;;;;;:42;;;;:::i;:::-;7463:8;:124::i;:::-;7605:4;7598:11;;7267:350;;;;;:::o;6376:83::-;6417:5;5108:1;6435:16;;6376:83;:::o;13108:366::-;13174:10;;;;;;;;;;;13158:26;;:12;:10;:12::i;:::-;:26;;;13150:35;;;;;;13196:20;13219:24;13237:4;13219:9;:24::i;:::-;13196:47;;13273:1;13258:12;:16;13254:79;;;13291:30;13308:12;13291:16;:30::i;:::-;13254:79;13343:18;13364:21;13343:42;;13413:1;13400:10;:14;13396:71;;;13431:24;13444:10;13431:12;:24::i;:::-;13396:71;13139:335;;13108:366::o;6570:119::-;6636:7;6663:9;:18;6673:7;6663:18;;;;;;;;;;;;;;;;6656:25;;6570:119;;;:::o;3372:148::-;3295:12;:10;:12::i;:::-;3285:22;;:6;;;;;;;;;;:22;;;3277:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3479:1:::1;3442:40;;3463:6;::::0;::::1;;;;;;;;3442:40;;;;;;;;;;;;3510:1;3493:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;3372:148::o:0;11715:264::-;3295:12;:10;:12::i;:::-;3285:22;;:6;;;;;;;;;;:22;;;3277:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;5108:1:::1;5164:2;:15;;;;:::i;:::-;5151:10;:28;;;;:::i;:::-;11769:12;:22;;;;5108:1;5164:2;:15;;;;:::i;:::-;5151:10;:28;;;;:::i;:::-;11802:14;:24;;;;11860:5;11837:20;;:28;;;;;;;;;;;;;;;;;;11895:2;11876:16;:21;;;;11926:2;11908:15;:20;;;;11944:27;5108:1;5164:2;:15;;;;:::i;:::-;5151:10;:28;;;;:::i;:::-;11944:27;;;;;;:::i;:::-;;;;;;;;11715:264::o:0;5317:42::-;;;;:::o;3158:79::-;3196:7;3223:6;;;;;;;;;;;3216:13;;3158:79;:::o;5366:44::-;;;;:::o;6281:87::-;6320:13;6353:7;;;;;;;;;;;;;;;;;6346:14;;6281:87;:::o;6697:192::-;6800:4;6817:42;6827:12;:10;:12::i;:::-;6841:9;6852:6;6817:9;:42::i;:::-;6877:4;6870:11;;6697:192;;;;:::o;5417:49::-;;;;:::o;4946:36::-;;;;:::o;4650:40::-;;;;;;;;;;;;;:::o;6897:168::-;7003:7;7030:11;:18;7042:5;7030:18;;;;;;;;;;;;;;;:27;7049:7;7030:27;;;;;;;;;;;;;;;;7023:34;;6897:168;;;;:::o;1904:98::-;1957:7;1984:10;1977:17;;1904:98;:::o;7625:335::-;7735:1;7718:19;;:5;:19;;;;7710:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7816:1;7797:21;;:7;:21;;;;7789:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7898:6;7868:11;:18;7880:5;7868:18;;;;;;;;;;;;;;;:27;7887:7;7868:27;;;;;;;;;;;;;;;:36;;;;7936:7;7920:32;;7929:5;7920:32;;;7945:6;7920:32;;;;;;:::i;:::-;;;;;;;;7625:335;;;:::o;7968:3007::-;8072:1;8056:18;;:4;:18;;;;8048:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8149:1;8135:16;;:2;:16;;;;8127:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8219:1;8210:6;:10;8202:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8277:17;8321:7;:5;:7::i;:::-;8313:15;;:4;:15;;;;:32;;;;;8338:7;:5;:7::i;:::-;8332:13;;:2;:13;;;;8313:32;8309:2308;;;8366:20;;;;;;;;;;;8362:485;;;8447:15;;;;;;;;;;;8433:30;;:2;:30;;;;:83;;;;;8502:13;;;;;;;;;;;8488:28;;:2;:28;;;;8433:83;8407:425;;;8635:12;8593:28;:39;8622:9;8593:39;;;;;;;;;;;;;;;;:54;8559:176;;;;;;;;;;;;:::i;:::-;;;;;;;;;8800:12;8758:28;:39;8787:9;8758:39;;;;;;;;;;;;;;;:54;;;;8407:425;8362:485;8893:13;;;;;;;;;;;8885:21;;:4;:21;;;:72;;;;;8941:15;;;;;;;;;;;8927:30;;:2;:30;;;;8885:72;:116;;;;;8979:18;:22;8998:2;8979:22;;;;;;;;;;;;;;;;;;;;;;;;;8978:23;8885:116;8863:438;;;9054:12;;9044:6;:22;;9036:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;9171:14;;9161:6;9145:13;9155:2;9145:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;9115:140;;;;;;;;;;;;:::i;:::-;;;;;;;;;9274:9;;:11;;;;;;;;;:::i;:::-;;;;;;8863:438;9567:3;9417:15;;9405:9;;:27;9404:119;;9509:14;;9404:119;;;9465:12;;9404:119;9347:6;:199;;;;:::i;:::-;9346:224;;;;:::i;:::-;9317:253;;9595:13;;;;;;;;;;;9589:19;;:2;:19;;;:44;;;;;9628:4;9612:21;;:4;:21;;;;9589:44;9585:369;;;9935:3;9766:16;;9754:9;;:28;9753:130;;9868:15;;9753:130;;;9819:13;;9753:130;9688:6;:222;;;;:::i;:::-;9687:251;;;;:::i;:::-;9654:284;;9585:369;9970:28;10001:24;10019:4;10001:9;:24::i;:::-;9970:55;;10063:6;;;;;;;;;;;10062:7;:47;;;;;10096:13;;;;;;;;;;;10090:19;;:2;:19;;;10062:47;:79;;;;;10130:11;;;;;;;;;;;10062:79;:140;;;;;10185:17;;10162:20;:40;10062:140;:191;;;;;10235:18;;10223:9;;:30;10062:191;10040:566;;;10288:109;10327:51;10331:6;10339:38;10343:20;10365:11;;10339:3;:38::i;:::-;10327:3;:51::i;:::-;10288:16;:109::i;:::-;10416:26;10445:21;10416:50;;10510:1;10489:18;:22;10485:106;;;10536:35;10549:21;10536:12;:35::i;:::-;10485:106;10269:337;10040:566;8347:2270;8309:2308;10645:1;10633:9;:13;10629:169;;;10717:9;10690;:24;10708:4;10690:24;;;;;;;;;;;;;;;;:36;;;;:::i;:::-;10663:9;:24;10681:4;10663:24;;;;;;;;;;;;;;;:63;;;;10769:4;10746:40;;10755:4;10746:40;;;10776:9;10746:40;;;;;;:::i;:::-;;;;;;;;10629:169;10844:6;10826:9;:15;10836:4;10826:15;;;;;;;;;;;;;;;;:24;;;;:::i;:::-;10808:9;:15;10818:4;10808:15;;;;;;;;;;;;;;;:42;;;;10903:9;10894:6;:18;;;;:::i;:::-;10877:9;:13;10887:2;10877:13;;;;;;;;;;;;;;;;:36;;;;:::i;:::-;10861:9;:13;10871:2;10861:13;;;;;;;;;;;;;;;:52;;;;10944:2;10929:38;;10938:4;10929:38;;;10957:9;10948:6;:18;;;;:::i;:::-;10929:38;;;;;;:::i;:::-;;;;;;;;8037:2938;7968:3007;;;:::o;11098:609::-;5809:4;5800:6;;:13;;;;;;;;;;;;;;;;;;11195:1:::1;11180:11;:16;11176:55;;;11213:7;;11176:55;11246:11;;;;;;;;;;;11241:51;;11274:7;;11241:51;11302:21;11340:1;11326:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11302:40;;11371:4;11353;11358:1;11353:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;11397:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11387:4;11392:1;11387:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;11430:62;11447:4;11462:15;;;;;;;;;;;11480:11;11430:8;:62::i;:::-;11503:15;;;;;;;;;;;:66;;;11584:11;11610:1;11626:4;11653;11673:15;11503:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;11165:542;5824:1;5845:5:::0;5836:6;;:14;;;;;;;;;;;;;;;;;;11098:609;:::o;11987:92::-;12044:10;;;;;;;;;;;:19;;:27;12064:6;12044:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11987:92;:::o;10983:107::-;11040:7;11072:1;11068;:5;11067:15;;11081:1;11067:15;;;11077:1;11067:15;11060:22;;10983:107;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:307::-;355:1;365:113;379:6;376:1;373:13;365:113;;;464:1;459:3;455:11;449:18;445:1;440:3;436:11;429:39;401:2;398:1;394:10;389:15;;365:113;;;496:6;493:1;490:13;487:101;;;576:1;567:6;562:3;558:16;551:27;487:101;336:258;287:307;;;:::o;600:102::-;641:6;692:2;688:7;683:2;676:5;672:14;668:28;658:38;;600:102;;;:::o;708:364::-;796:3;824:39;857:5;824:39;:::i;:::-;879:71;943:6;938:3;879:71;:::i;:::-;872:78;;959:52;1004:6;999:3;992:4;985:5;981:16;959:52;:::i;:::-;1036:29;1058:6;1036:29;:::i;:::-;1031:3;1027:39;1020:46;;800:272;708:364;;;;:::o;1078:313::-;1191:4;1229:2;1218:9;1214:18;1206:26;;1278:9;1272:4;1268:20;1264:1;1253:9;1249:17;1242:47;1306:78;1379:4;1370:6;1306:78;:::i;:::-;1298:86;;1078:313;;;;:::o;1478:117::-;1587:1;1584;1577:12;1724:126;1761:7;1801:42;1794:5;1790:54;1779:65;;1724:126;;;:::o;1856:96::-;1893:7;1922:24;1940:5;1922:24;:::i;:::-;1911:35;;1856:96;;;:::o;1958:122::-;2031:24;2049:5;2031:24;:::i;:::-;2024:5;2021:35;2011:63;;2070:1;2067;2060:12;2011:63;1958:122;:::o;2086:139::-;2132:5;2170:6;2157:20;2148:29;;2186:33;2213:5;2186:33;:::i;:::-;2086:139;;;;:::o;2231:77::-;2268:7;2297:5;2286:16;;2231:77;;;:::o;2314:122::-;2387:24;2405:5;2387:24;:::i;:::-;2380:5;2377:35;2367:63;;2426:1;2423;2416:12;2367:63;2314:122;:::o;2442:139::-;2488:5;2526:6;2513:20;2504:29;;2542:33;2569:5;2542:33;:::i;:::-;2442:139;;;;:::o;2587:474::-;2655:6;2663;2712:2;2700:9;2691:7;2687:23;2683:32;2680:119;;;2718:79;;:::i;:::-;2680:119;2838:1;2863:53;2908:7;2899:6;2888:9;2884:22;2863:53;:::i;:::-;2853:63;;2809:117;2965:2;2991:53;3036:7;3027:6;3016:9;3012:22;2991:53;:::i;:::-;2981:63;;2936:118;2587:474;;;;;:::o;3067:90::-;3101:7;3144:5;3137:13;3130:21;3119:32;;3067:90;;;:::o;3163:109::-;3244:21;3259:5;3244:21;:::i;:::-;3239:3;3232:34;3163:109;;:::o;3278:210::-;3365:4;3403:2;3392:9;3388:18;3380:26;;3416:65;3478:1;3467:9;3463:17;3454:6;3416:65;:::i;:::-;3278:210;;;;:::o;3494:118::-;3581:24;3599:5;3581:24;:::i;:::-;3576:3;3569:37;3494:118;;:::o;3618:222::-;3711:4;3749:2;3738:9;3734:18;3726:26;;3762:71;3830:1;3819:9;3815:17;3806:6;3762:71;:::i;:::-;3618:222;;;;:::o;3846:329::-;3905:6;3954:2;3942:9;3933:7;3929:23;3925:32;3922:119;;;3960:79;;:::i;:::-;3922:119;4080:1;4105:53;4150:7;4141:6;4130:9;4126:22;4105:53;:::i;:::-;4095:63;;4051:117;3846:329;;;;:::o;4181:619::-;4258:6;4266;4274;4323:2;4311:9;4302:7;4298:23;4294:32;4291:119;;;4329:79;;:::i;:::-;4291:119;4449:1;4474:53;4519:7;4510:6;4499:9;4495:22;4474:53;:::i;:::-;4464:63;;4420:117;4576:2;4602:53;4647:7;4638:6;4627:9;4623:22;4602:53;:::i;:::-;4592:63;;4547:118;4704:2;4730:53;4775:7;4766:6;4755:9;4751:22;4730:53;:::i;:::-;4720:63;;4675:118;4181:619;;;;;:::o;4806:86::-;4841:7;4881:4;4874:5;4870:16;4859:27;;4806:86;;;:::o;4898:112::-;4981:22;4997:5;4981:22;:::i;:::-;4976:3;4969:35;4898:112;;:::o;5016:214::-;5105:4;5143:2;5132:9;5128:18;5120:26;;5156:67;5220:1;5209:9;5205:17;5196:6;5156:67;:::i;:::-;5016:214;;;;:::o;5236:329::-;5295:6;5344:2;5332:9;5323:7;5319:23;5315:32;5312:119;;;5350:79;;:::i;:::-;5312:119;5470:1;5495:53;5540:7;5531:6;5520:9;5516:22;5495:53;:::i;:::-;5485:63;;5441:117;5236:329;;;;:::o;5571:118::-;5658:24;5676:5;5658:24;:::i;:::-;5653:3;5646:37;5571:118;;:::o;5695:222::-;5788:4;5826:2;5815:9;5811:18;5803:26;;5839:71;5907:1;5896:9;5892:17;5883:6;5839:71;:::i;:::-;5695:222;;;;:::o;5923:474::-;5991:6;5999;6048:2;6036:9;6027:7;6023:23;6019:32;6016:119;;;6054:79;;:::i;:::-;6016:119;6174:1;6199:53;6244:7;6235:6;6224:9;6220:22;6199:53;:::i;:::-;6189:63;;6145:117;6301:2;6327:53;6372:7;6363:6;6352:9;6348:22;6327:53;:::i;:::-;6317:63;;6272:118;5923:474;;;;;:::o;6403:182::-;6543:34;6539:1;6531:6;6527:14;6520:58;6403:182;:::o;6591:366::-;6733:3;6754:67;6818:2;6813:3;6754:67;:::i;:::-;6747:74;;6830:93;6919:3;6830:93;:::i;:::-;6948:2;6943:3;6939:12;6932:19;;6591:366;;;:::o;6963:419::-;7129:4;7167:2;7156:9;7152:18;7144:26;;7216:9;7210:4;7206:20;7202:1;7191:9;7187:17;7180:47;7244:131;7370:4;7244:131;:::i;:::-;7236:139;;6963:419;;;:::o;7388:173::-;7528:25;7524:1;7516:6;7512:14;7505:49;7388:173;:::o;7567:366::-;7709:3;7730:67;7794:2;7789:3;7730:67;:::i;:::-;7723:74;;7806:93;7895:3;7806:93;:::i;:::-;7924:2;7919:3;7915:12;7908:19;;7567:366;;;:::o;7939:419::-;8105:4;8143:2;8132:9;8128:18;8120:26;;8192:9;8186:4;8182:20;8178:1;8167:9;8163:17;8156:47;8220:131;8346:4;8220:131;:::i;:::-;8212:139;;7939:419;;;:::o;8364:180::-;8412:77;8409:1;8402:88;8509:4;8506:1;8499:15;8533:4;8530:1;8523:15;8550:102;8592:8;8639:5;8636:1;8632:13;8611:34;;8550:102;;;:::o;8658:848::-;8719:5;8726:4;8750:6;8741:15;;8774:5;8765:14;;8788:712;8809:1;8799:8;8796:15;8788:712;;;8904:4;8899:3;8895:14;8889:4;8886:24;8883:50;;;8913:18;;:::i;:::-;8883:50;8963:1;8953:8;8949:16;8946:451;;;9378:4;9371:5;9367:16;9358:25;;8946:451;9428:4;9422;9418:15;9410:23;;9458:32;9481:8;9458:32;:::i;:::-;9446:44;;8788:712;;;8658:848;;;;;;;:::o;9512:1073::-;9566:5;9757:8;9747:40;;9778:1;9769:10;;9780:5;;9747:40;9806:4;9796:36;;9823:1;9814:10;;9825:5;;9796:36;9892:4;9940:1;9935:27;;;;9976:1;9971:191;;;;9885:277;;9935:27;9953:1;9944:10;;9955:5;;;9971:191;10016:3;10006:8;10003:17;10000:43;;;10023:18;;:::i;:::-;10000:43;10072:8;10069:1;10065:16;10056:25;;10107:3;10100:5;10097:14;10094:40;;;10114:18;;:::i;:::-;10094:40;10147:5;;;9885:277;;10271:2;10261:8;10258:16;10252:3;10246:4;10243:13;10239:36;10221:2;10211:8;10208:16;10203:2;10197:4;10194:12;10190:35;10174:111;10171:246;;;10327:8;10321:4;10317:19;10308:28;;10362:3;10355:5;10352:14;10349:40;;;10369:18;;:::i;:::-;10349:40;10402:5;;10171:246;10442:42;10480:3;10470:8;10464:4;10461:1;10442:42;:::i;:::-;10427:57;;;;10516:4;10511:3;10507:14;10500:5;10497:25;10494:51;;;10525:18;;:::i;:::-;10494:51;10574:4;10567:5;10563:16;10554:25;;9512:1073;;;;;;:::o;10591:281::-;10649:5;10673:23;10691:4;10673:23;:::i;:::-;10665:31;;10717:25;10733:8;10717:25;:::i;:::-;10705:37;;10761:104;10798:66;10788:8;10782:4;10761:104;:::i;:::-;10752:113;;10591:281;;;;:::o;10878:348::-;10918:7;10941:20;10959:1;10941:20;:::i;:::-;10936:25;;10975:20;10993:1;10975:20;:::i;:::-;10970:25;;11163:1;11095:66;11091:74;11088:1;11085:81;11080:1;11073:9;11066:17;11062:105;11059:131;;;11170:18;;:::i;:::-;11059:131;11218:1;11215;11211:9;11200:20;;10878:348;;;;:::o;11232:143::-;11289:5;11320:6;11314:13;11305:22;;11336:33;11363:5;11336:33;:::i;:::-;11232:143;;;;:::o;11381:351::-;11451:6;11500:2;11488:9;11479:7;11475:23;11471:32;11468:119;;;11506:79;;:::i;:::-;11468:119;11626:1;11651:64;11707:7;11698:6;11687:9;11683:22;11651:64;:::i;:::-;11641:74;;11597:128;11381:351;;;;:::o;11738:332::-;11859:4;11897:2;11886:9;11882:18;11874:26;;11910:71;11978:1;11967:9;11963:17;11954:6;11910:71;:::i;:::-;11991:72;12059:2;12048:9;12044:18;12035:6;11991:72;:::i;:::-;11738:332;;;;;:::o;12076:85::-;12121:7;12150:5;12139:16;;12076:85;;;:::o;12167:60::-;12195:3;12216:5;12209:12;;12167:60;;;:::o;12233:158::-;12291:9;12324:61;12342:42;12351:32;12377:5;12351:32;:::i;:::-;12342:42;:::i;:::-;12324:61;:::i;:::-;12311:74;;12233:158;;;:::o;12397:147::-;12492:45;12531:5;12492:45;:::i;:::-;12487:3;12480:58;12397:147;;:::o;12550:807::-;12799:4;12837:3;12826:9;12822:19;12814:27;;12851:71;12919:1;12908:9;12904:17;12895:6;12851:71;:::i;:::-;12932:72;13000:2;12989:9;12985:18;12976:6;12932:72;:::i;:::-;13014:80;13090:2;13079:9;13075:18;13066:6;13014:80;:::i;:::-;13104;13180:2;13169:9;13165:18;13156:6;13104:80;:::i;:::-;13194:73;13262:3;13251:9;13247:19;13238:6;13194:73;:::i;:::-;13277;13345:3;13334:9;13330:19;13321:6;13277:73;:::i;:::-;12550:807;;;;;;;;;:::o;13363:143::-;13420:5;13451:6;13445:13;13436:22;;13467:33;13494:5;13467:33;:::i;:::-;13363:143;;;;:::o;13512:663::-;13600:6;13608;13616;13665:2;13653:9;13644:7;13640:23;13636:32;13633:119;;;13671:79;;:::i;:::-;13633:119;13791:1;13816:64;13872:7;13863:6;13852:9;13848:22;13816:64;:::i;:::-;13806:74;;13762:128;13929:2;13955:64;14011:7;14002:6;13991:9;13987:22;13955:64;:::i;:::-;13945:74;;13900:129;14068:2;14094:64;14150:7;14141:6;14130:9;14126:22;14094:64;:::i;:::-;14084:74;;14039:129;13512:663;;;;;:::o;14181:332::-;14302:4;14340:2;14329:9;14325:18;14317:26;;14353:71;14421:1;14410:9;14406:17;14397:6;14353:71;:::i;:::-;14434:72;14502:2;14491:9;14487:18;14478:6;14434:72;:::i;:::-;14181:332;;;;;:::o;14519:116::-;14589:21;14604:5;14589:21;:::i;:::-;14582:5;14579:32;14569:60;;14625:1;14622;14615:12;14569:60;14519:116;:::o;14641:137::-;14695:5;14726:6;14720:13;14711:22;;14742:30;14766:5;14742:30;:::i;:::-;14641:137;;;;:::o;14784:345::-;14851:6;14900:2;14888:9;14879:7;14875:23;14871:32;14868:119;;;14906:79;;:::i;:::-;14868:119;15026:1;15051:61;15104:7;15095:6;15084:9;15080:22;15051:61;:::i;:::-;15041:71;;14997:125;14784:345;;;;:::o;15135:191::-;15175:4;15195:20;15213:1;15195:20;:::i;:::-;15190:25;;15229:20;15247:1;15229:20;:::i;:::-;15224:25;;15268:1;15265;15262:8;15259:34;;;15273:18;;:::i;:::-;15259:34;15318:1;15315;15311:9;15303:17;;15135:191;;;;:::o;15332:223::-;15472:34;15468:1;15460:6;15456:14;15449:58;15541:6;15536:2;15528:6;15524:15;15517:31;15332:223;:::o;15561:366::-;15703:3;15724:67;15788:2;15783:3;15724:67;:::i;:::-;15717:74;;15800:93;15889:3;15800:93;:::i;:::-;15918:2;15913:3;15909:12;15902:19;;15561:366;;;:::o;15933:419::-;16099:4;16137:2;16126:9;16122:18;16114:26;;16186:9;16180:4;16176:20;16172:1;16161:9;16157:17;16150:47;16214:131;16340:4;16214:131;:::i;:::-;16206:139;;15933:419;;;:::o;16358:221::-;16498:34;16494:1;16486:6;16482:14;16475:58;16567:4;16562:2;16554:6;16550:15;16543:29;16358:221;:::o;16585:366::-;16727:3;16748:67;16812:2;16807:3;16748:67;:::i;:::-;16741:74;;16824:93;16913:3;16824:93;:::i;:::-;16942:2;16937:3;16933:12;16926:19;;16585:366;;;:::o;16957:419::-;17123:4;17161:2;17150:9;17146:18;17138:26;;17210:9;17204:4;17200:20;17196:1;17185:9;17181:17;17174:47;17238:131;17364:4;17238:131;:::i;:::-;17230:139;;16957:419;;;:::o;17382:224::-;17522:34;17518:1;17510:6;17506:14;17499:58;17591:7;17586:2;17578:6;17574:15;17567:32;17382:224;:::o;17612:366::-;17754:3;17775:67;17839:2;17834:3;17775:67;:::i;:::-;17768:74;;17851:93;17940:3;17851:93;:::i;:::-;17969:2;17964:3;17960:12;17953:19;;17612:366;;;:::o;17984:419::-;18150:4;18188:2;18177:9;18173:18;18165:26;;18237:9;18231:4;18227:20;18223:1;18212:9;18208:17;18201:47;18265:131;18391:4;18265:131;:::i;:::-;18257:139;;17984:419;;;:::o;18409:222::-;18549:34;18545:1;18537:6;18533:14;18526:58;18618:5;18613:2;18605:6;18601:15;18594:30;18409:222;:::o;18637:366::-;18779:3;18800:67;18864:2;18859:3;18800:67;:::i;:::-;18793:74;;18876:93;18965:3;18876:93;:::i;:::-;18994:2;18989:3;18985:12;18978:19;;18637:366;;;:::o;19009:419::-;19175:4;19213:2;19202:9;19198:18;19190:26;;19262:9;19256:4;19252:20;19248:1;19237:9;19233:17;19226:47;19290:131;19416:4;19290:131;:::i;:::-;19282:139;;19009:419;;;:::o;19434:228::-;19574:34;19570:1;19562:6;19558:14;19551:58;19643:11;19638:2;19630:6;19626:15;19619:36;19434:228;:::o;19668:366::-;19810:3;19831:67;19895:2;19890:3;19831:67;:::i;:::-;19824:74;;19907:93;19996:3;19907:93;:::i;:::-;20025:2;20020:3;20016:12;20009:19;;19668:366;;;:::o;20040:419::-;20206:4;20244:2;20233:9;20229:18;20221:26;;20293:9;20287:4;20283:20;20279:1;20268:9;20264:17;20257:47;20321:131;20447:4;20321:131;:::i;:::-;20313:139;;20040:419;;;:::o;20465:223::-;20605:34;20601:1;20593:6;20589:14;20582:58;20674:6;20669:2;20661:6;20657:15;20650:31;20465:223;:::o;20694:366::-;20836:3;20857:67;20921:2;20916:3;20857:67;:::i;:::-;20850:74;;20933:93;21022:3;20933:93;:::i;:::-;21051:2;21046:3;21042:12;21035:19;;20694:366;;;:::o;21066:419::-;21232:4;21270:2;21259:9;21255:18;21247:26;;21319:9;21313:4;21309:20;21305:1;21294:9;21290:17;21283:47;21347:131;21473:4;21347:131;:::i;:::-;21339:139;;21066:419;;;:::o;21491:175::-;21631:27;21627:1;21619:6;21615:14;21608:51;21491:175;:::o;21672:366::-;21814:3;21835:67;21899:2;21894:3;21835:67;:::i;:::-;21828:74;;21911:93;22000:3;21911:93;:::i;:::-;22029:2;22024:3;22020:12;22013:19;;21672:366;;;:::o;22044:419::-;22210:4;22248:2;22237:9;22233:18;22225:26;;22297:9;22291:4;22287:20;22283:1;22272:9;22268:17;22261:47;22325:131;22451:4;22325:131;:::i;:::-;22317:139;;22044:419;;;:::o;22469:305::-;22509:3;22528:20;22546:1;22528:20;:::i;:::-;22523:25;;22562:20;22580:1;22562:20;:::i;:::-;22557:25;;22716:1;22648:66;22644:74;22641:1;22638:81;22635:107;;;22722:18;;:::i;:::-;22635:107;22766:1;22763;22759:9;22752:16;;22469:305;;;;:::o;22780:176::-;22920:28;22916:1;22908:6;22904:14;22897:52;22780:176;:::o;22962:366::-;23104:3;23125:67;23189:2;23184:3;23125:67;:::i;:::-;23118:74;;23201:93;23290:3;23201:93;:::i;:::-;23319:2;23314:3;23310:12;23303:19;;22962:366;;;:::o;23334:419::-;23500:4;23538:2;23527:9;23523:18;23515:26;;23587:9;23581:4;23577:20;23573:1;23562:9;23558:17;23551:47;23615:131;23741:4;23615:131;:::i;:::-;23607:139;;23334:419;;;:::o;23759:233::-;23798:3;23821:24;23839:5;23821:24;:::i;:::-;23812:33;;23867:66;23860:5;23857:77;23854:103;;;23937:18;;:::i;:::-;23854:103;23984:1;23977:5;23973:13;23966:20;;23759:233;;;:::o;23998:180::-;24046:77;24043:1;24036:88;24143:4;24140:1;24133:15;24167:4;24164:1;24157:15;24184:185;24224:1;24241:20;24259:1;24241:20;:::i;:::-;24236:25;;24275:20;24293:1;24275:20;:::i;:::-;24270:25;;24314:1;24304:35;;24319:18;;:::i;:::-;24304:35;24361:1;24358;24354:9;24349:14;;24184:185;;;;:::o;24375:180::-;24423:77;24420:1;24413:88;24520:4;24517:1;24510:15;24544:4;24541:1;24534:15;24561:180;24609:77;24606:1;24599:88;24706:4;24703:1;24696:15;24730:4;24727:1;24720:15;24747:114;24814:6;24848:5;24842:12;24832:22;;24747:114;;;:::o;24867:184::-;24966:11;25000:6;24995:3;24988:19;25040:4;25035:3;25031:14;25016:29;;24867:184;;;;:::o;25057:132::-;25124:4;25147:3;25139:11;;25177:4;25172:3;25168:14;25160:22;;25057:132;;;:::o;25195:108::-;25272:24;25290:5;25272:24;:::i;:::-;25267:3;25260:37;25195:108;;:::o;25309:179::-;25378:10;25399:46;25441:3;25433:6;25399:46;:::i;:::-;25477:4;25472:3;25468:14;25454:28;;25309:179;;;;:::o;25494:113::-;25564:4;25596;25591:3;25587:14;25579:22;;25494:113;;;:::o;25643:732::-;25762:3;25791:54;25839:5;25791:54;:::i;:::-;25861:86;25940:6;25935:3;25861:86;:::i;:::-;25854:93;;25971:56;26021:5;25971:56;:::i;:::-;26050:7;26081:1;26066:284;26091:6;26088:1;26085:13;26066:284;;;26167:6;26161:13;26194:63;26253:3;26238:13;26194:63;:::i;:::-;26187:70;;26280:60;26333:6;26280:60;:::i;:::-;26270:70;;26126:224;26113:1;26110;26106:9;26101:14;;26066:284;;;26070:14;26366:3;26359:10;;25767:608;;;25643:732;;;;:::o;26381:831::-;26644:4;26682:3;26671:9;26667:19;26659:27;;26696:71;26764:1;26753:9;26749:17;26740:6;26696:71;:::i;:::-;26777:80;26853:2;26842:9;26838:18;26829:6;26777:80;:::i;:::-;26904:9;26898:4;26894:20;26889:2;26878:9;26874:18;26867:48;26932:108;27035:4;27026:6;26932:108;:::i;:::-;26924:116;;27050:72;27118:2;27107:9;27103:18;27094:6;27050:72;:::i;:::-;27132:73;27200:3;27189:9;27185:19;27176:6;27132:73;:::i;:::-;26381:831;;;;;;;;:::o
Swarm Source
ipfs://25ebd0b77a5a65ba8861e288ea2704df809f8ed180e64299d264c26a16377241
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.