Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
1,000,000,000 129OM
Holders
10
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
33,319,895.454754693 129OMValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
Orbital129Musk
Compiler Version
v0.8.9+commit.e5eed63a
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2021-11-14 */ // telegram : t.me/Orbital_129_Musk // SPDX-License-Identifier: Unlicensed pragma solidity ^0.8.4; 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( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint256 amountTokenDesired, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline ) external payable returns ( uint256 amountToken, uint256 amountETH, uint256 liquidity ); } contract Orbital129Musk is Context, IERC20, Ownable { using SafeMath for uint256; string private constant _name = " Orbital 129 Musk "; string private constant _symbol = " 129OM "; uint8 private constant _decimals = 9; // RFI mapping(address => uint256) private _rOwned; mapping(address => uint256) private _tOwned; mapping(address => mapping(address => uint256)) private _allowances; mapping(address => bool) private _isExcludedFromFee; uint256 private constant MAX = ~uint256(0); uint256 private constant _tTotal = 1000000000 * 10**9; uint256 private _rTotal = (MAX - (MAX % _tTotal)); uint256 private _tFeeTotal; uint256 private _taxFee = 2; uint256 private _teamFee = 3; // Bot detection mapping(address => bool) private bots; mapping(address => uint256) private cooldown; address payable private _teamAddress; 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; event MaxTxAmountUpdated(uint256 _maxTxAmount); modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor(address payable addr1) { _teamAddress = addr1; _rOwned[_msgSender()] = _rTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[_teamAddress] = 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 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 removeAllFee() private { if (_taxFee == 0 && _teamFee == 0) return; _taxFee = 0; _teamFee = 0; } function restoreAllFee() private { _taxFee = 2; _teamFee = 3; } 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()) { if (cooldownEnabled) { if ( from != address(this) && to != address(this) && from != address(uniswapV2Router) && to != address(uniswapV2Router) ) { require( _msgSender() == address(uniswapV2Router) || _msgSender() == uniswapV2Pair, "ERR: Uniswap only" ); } } require(amount <= _maxTxAmount); require(!bots[from] && !bots[to]); if ( from == uniswapV2Pair && to != address(uniswapV2Router) && !_isExcludedFromFee[to] && cooldownEnabled ) { require(cooldown[to] < block.timestamp); cooldown[to] = block.timestamp + (60 seconds); } uint256 contractTokenBalance = balanceOf(address(this)); if (!inSwap && from != uniswapV2Pair && swapEnabled) { swapTokensForEth(contractTokenBalance); uint256 contractETHBalance = address(this).balance; if (contractETHBalance > 0) { sendETHToFee(address(this).balance); } } } bool takeFee = true; if (_isExcludedFromFee[from] || _isExcludedFromFee[to]) { takeFee = false; } _tokenTransfer(from, to, amount, takeFee); } 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 sendETHToFee(uint256 amount) private { _teamAddress.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 = false; _maxTxAmount = 100000000 * 10**9; tradingOpen = true; IERC20(uniswapV2Pair).approve( address(uniswapV2Router), type(uint256).max ); } function manualswap() external { require(_msgSender() == _teamAddress); uint256 contractBalance = balanceOf(address(this)); swapTokensForEth(contractBalance); } function manualsend() external { require(_msgSender() == _teamAddress); uint256 contractETHBalance = address(this).balance; sendETHToFee(contractETHBalance); } function setBots(address[] memory bots_) public onlyOwner { for (uint256 i = 0; i < bots_.length; i++) { bots[bots_[i]] = true; } } function delBot(address notbot) public onlyOwner { bots[notbot] = false; } function _tokenTransfer( address sender, address recipient, uint256 amount, bool takeFee ) private { if (!takeFee) removeAllFee(); _transferStandard(sender, recipient, amount); if (!takeFee) restoreAllFee(); } 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 _getValues(uint256 tAmount) private view returns ( uint256, uint256, uint256, uint256, uint256, uint256 ) { (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getTValues(tAmount, _taxFee, 5); 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); } function setMaxTxPercent(uint256 maxTxPercent) external onlyOwner() { require(maxTxPercent > 0, "Amount must be greater than 0"); _maxTxAmount = _tTotal.mul(maxTxPercent).div(10**2); emit MaxTxAmountUpdated(_maxTxAmount); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address payable","name":"addr1","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_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":[{"internalType":"address","name":"notbot","type":"address"}],"name":"delBot","outputs":[],"stateMutability":"nonpayable","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":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"setBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"onoff","type":"bool"}],"name":"setCooldownEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTxPercent","type":"uint256"}],"name":"setMaxTxPercent","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
6080604052670de0b6b3a76400006000196200001c919062000437565b6000196200002b91906200049e565b600655600260085560036009556000600e60156101000a81548160ff0219169083151502179055506000600e60166101000a81548160ff0219169083151502179055506000600e60176101000a81548160ff021916908315150217905550670de0b6b3a7640000600f55348015620000a257600080fd5b5060405162003d2f38038062003d2f8339818101604052810190620000c8919062000543565b6000620000da620003cd60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35080600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060065460026000620001d0620003cd60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060016005600062000224620003d560201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555062000357620003cd60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef670de0b6b3a7640000604051620003be919062000586565b60405180910390a350620005a3565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006200044482620003fe565b91506200045183620003fe565b92508262000464576200046362000408565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000620004ab82620003fe565b9150620004b883620003fe565b925082821015620004ce57620004cd6200046f565b5b828203905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200050b82620004de565b9050919050565b6200051d81620004fe565b81146200052957600080fd5b50565b6000815190506200053d8162000512565b92915050565b6000602082840312156200055c576200055b620004d9565b5b60006200056c848285016200052c565b91505092915050565b6200058081620003fe565b82525050565b60006020820190506200059d600083018462000575565b92915050565b61377c80620005b36000396000f3fe60806040526004361061010d5760003560e01c8063715018a611610095578063b515566a11610064578063b515566a14610364578063c3c8cd801461038d578063c9567bf9146103a4578063d543dbeb146103bb578063dd62ed3e146103e457610114565b8063715018a6146102ba5780638da5cb5b146102d157806395d89b41146102fc578063a9059cbb1461032757610114565b8063273123b7116100dc578063273123b7146101e9578063313ce567146102125780635932ead11461023d5780636fc3eaec1461026657806370a082311461027d57610114565b806306fdde0314610119578063095ea7b31461014457806318160ddd1461018157806323b872dd146101ac57610114565b3661011457005b600080fd5b34801561012557600080fd5b5061012e610421565b60405161013b919061277b565b60405180910390f35b34801561015057600080fd5b5061016b60048036038101906101669190612845565b61045e565b60405161017891906128a0565b60405180910390f35b34801561018d57600080fd5b5061019661047c565b6040516101a391906128ca565b60405180910390f35b3480156101b857600080fd5b506101d360048036038101906101ce91906128e5565b61048c565b6040516101e091906128a0565b60405180910390f35b3480156101f557600080fd5b50610210600480360381019061020b9190612938565b610565565b005b34801561021e57600080fd5b50610227610655565b6040516102349190612981565b60405180910390f35b34801561024957600080fd5b50610264600480360381019061025f91906129c8565b61065e565b005b34801561027257600080fd5b5061027b610710565b005b34801561028957600080fd5b506102a4600480360381019061029f9190612938565b610782565b6040516102b191906128ca565b60405180910390f35b3480156102c657600080fd5b506102cf6107d3565b005b3480156102dd57600080fd5b506102e6610926565b6040516102f39190612a04565b60405180910390f35b34801561030857600080fd5b5061031161094f565b60405161031e919061277b565b60405180910390f35b34801561033357600080fd5b5061034e60048036038101906103499190612845565b61098c565b60405161035b91906128a0565b60405180910390f35b34801561037057600080fd5b5061038b60048036038101906103869190612b67565b6109aa565b005b34801561039957600080fd5b506103a2610ad4565b005b3480156103b057600080fd5b506103b9610b4e565b005b3480156103c757600080fd5b506103e260048036038101906103dd9190612bb0565b6110a9565b005b3480156103f057600080fd5b5061040b60048036038101906104069190612bdd565b6111f1565b60405161041891906128ca565b60405180910390f35b60606040518060400160405280601281526020017f204f72626974616c20313239204d75736b200000000000000000000000000000815250905090565b600061047261046b611278565b8484611280565b6001905092915050565b6000670de0b6b3a7640000905090565b600061049984848461144b565b61055a846104a5611278565b6105558560405180606001604052806028815260200161371f60289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061050b611278565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611c0a9092919063ffffffff16565b611280565b600190509392505050565b61056d611278565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146105fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105f190612c69565b60405180910390fd5b6000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006009905090565b610666611278565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ea90612c69565b60405180910390fd5b80600e60176101000a81548160ff02191690831515021790555050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610751611278565b73ffffffffffffffffffffffffffffffffffffffff161461077157600080fd5b600047905061077f81611c6e565b50565b60006107cc600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611cda565b9050919050565b6107db611278565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610868576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161085f90612c69565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600781526020017f203132394f4d2000000000000000000000000000000000000000000000000000815250905090565b60006109a0610999611278565b848461144b565b6001905092915050565b6109b2611278565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a3f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a3690612c69565b60405180910390fd5b60005b8151811015610ad0576001600a6000848481518110610a6457610a63612c89565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610ac890612ce7565b915050610a42565b5050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b15611278565b73ffffffffffffffffffffffffffffffffffffffff1614610b3557600080fd5b6000610b4030610782565b9050610b4b81611d48565b50565b610b56611278565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610be3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bda90612c69565b60405180910390fd5b600e60149054906101000a900460ff1615610c33576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2a90612d7c565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d905080600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610cc230600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16670de0b6b3a7640000611280565b8073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015610d0857600080fd5b505afa158015610d1c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d409190612db1565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015610da257600080fd5b505afa158015610db6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dda9190612db1565b6040518363ffffffff1660e01b8152600401610df7929190612dde565b602060405180830381600087803b158015610e1157600080fd5b505af1158015610e25573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e499190612db1565b600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610ed230610782565b600080610edd610926565b426040518863ffffffff1660e01b8152600401610eff96959493929190612e4c565b6060604051808303818588803b158015610f1857600080fd5b505af1158015610f2c573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f519190612ec2565b5050506001600e60166101000a81548160ff0219169083151502179055506000600e60176101000a81548160ff02191690831515021790555067016345785d8a0000600f819055506001600e60146101000a81548160ff021916908315150217905550600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611053929190612f15565b602060405180830381600087803b15801561106d57600080fd5b505af1158015611081573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110a59190612f53565b5050565b6110b1611278565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461113e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161113590612c69565b60405180910390fd5b60008111611181576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161117890612fcc565b60405180910390fd5b6111af60646111a183670de0b6b3a7640000611fd090919063ffffffff16565b61204b90919063ffffffff16565b600f819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf600f546040516111e691906128ca565b60405180910390a150565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156112f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112e79061305e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611360576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611357906130f0565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161143e91906128ca565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156114bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114b290613182565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561152b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161152290613214565b60405180910390fd5b6000811161156e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611565906132a6565b60405180910390fd5b611576610926565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156115e457506115b4610926565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611b4757600e60179054906101000a900460ff1615611817573073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561166657503073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156116c05750600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b801561171a5750600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561181657600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611760611278565b73ffffffffffffffffffffffffffffffffffffffff1614806117d65750600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166117be611278565b73ffffffffffffffffffffffffffffffffffffffff16145b611815576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161180c90613312565b60405180910390fd5b5b5b600f5481111561182657600080fd5b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156118ca5750600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6118d357600080fd5b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561197e5750600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156119d45750600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156119ec5750600e60179054906101000a900460ff165b15611a8d5742600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410611a3c57600080fd5b603c42611a499190613332565b600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6000611a9830610782565b9050600e60159054906101000a900460ff16158015611b055750600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015611b1d5750600e60169054906101000a900460ff165b15611b4557611b2b81611d48565b60004790506000811115611b4357611b4247611c6e565b5b505b505b600060019050600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611bee5750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15611bf857600090505b611c0484848484612095565b50505050565b6000838311158290611c52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c49919061277b565b60405180910390fd5b5060008385611c619190613388565b9050809150509392505050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611cd6573d6000803e3d6000fd5b5050565b6000600654821115611d21576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d189061342e565b60405180910390fd5b6000611d2b6120c2565b9050611d40818461204b90919063ffffffff16565b915050919050565b6001600e60156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611d8057611d7f612a24565b5b604051908082528060200260200182016040528015611dae5781602001602082028036833780820191505090505b5090503081600081518110611dc657611dc5612c89565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611e6857600080fd5b505afa158015611e7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ea09190612db1565b81600181518110611eb457611eb3612c89565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611f1b30600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611280565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611f7f95949392919061350c565b600060405180830381600087803b158015611f9957600080fd5b505af1158015611fad573d6000803e3d6000fd5b50505050506000600e60156101000a81548160ff02191690831515021790555050565b600080831415611fe35760009050612045565b60008284611ff19190613566565b905082848261200091906135ef565b14612040576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161203790613692565b60405180910390fd5b809150505b92915050565b600061208d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506120ed565b905092915050565b806120a3576120a2612150565b5b6120ae848484612181565b806120bc576120bb61234c565b5b50505050565b60008060006120cf61235e565b915091506120e6818361204b90919063ffffffff16565b9250505090565b60008083118290612134576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161212b919061277b565b60405180910390fd5b506000838561214391906135ef565b9050809150509392505050565b600060085414801561216457506000600954145b1561216e5761217f565b600060088190555060006009819055505b565b600080600080600080612193876123bd565b9550955095509550955095506121f186600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461242490919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061228685600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461246e90919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506122d2816124cc565b6122dc8483612589565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161233991906128ca565b60405180910390a3505050505050505050565b60026008819055506003600981905550565b600080600060065490506000670de0b6b3a76400009050612392670de0b6b3a764000060065461204b90919063ffffffff16565b8210156123b057600654670de0b6b3a76400009350935050506123b9565b81819350935050505b9091565b60008060008060008060008060006123d98a60085460056125c3565b92509250925060006123e96120c2565b905060008060006123fc8e878787612659565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b600061246683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611c0a565b905092915050565b600080828461247d9190613332565b9050838110156124c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124b9906136fe565b60405180910390fd5b8091505092915050565b60006124d66120c2565b905060006124ed8284611fd090919063ffffffff16565b905061254181600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461246e90919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b61259e8260065461242490919063ffffffff16565b6006819055506125b98160075461246e90919063ffffffff16565b6007819055505050565b6000806000806125ef60646125e1888a611fd090919063ffffffff16565b61204b90919063ffffffff16565b90506000612619606461260b888b611fd090919063ffffffff16565b61204b90919063ffffffff16565b9050600061264282612634858c61242490919063ffffffff16565b61242490919063ffffffff16565b905080838395509550955050505093509350939050565b6000806000806126728589611fd090919063ffffffff16565b905060006126898689611fd090919063ffffffff16565b905060006126a08789611fd090919063ffffffff16565b905060006126c9826126bb858761242490919063ffffffff16565b61242490919063ffffffff16565b9050838184965096509650505050509450945094915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561271c578082015181840152602081019050612701565b8381111561272b576000848401525b50505050565b6000601f19601f8301169050919050565b600061274d826126e2565b61275781856126ed565b93506127678185602086016126fe565b61277081612731565b840191505092915050565b600060208201905081810360008301526127958184612742565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006127dc826127b1565b9050919050565b6127ec816127d1565b81146127f757600080fd5b50565b600081359050612809816127e3565b92915050565b6000819050919050565b6128228161280f565b811461282d57600080fd5b50565b60008135905061283f81612819565b92915050565b6000806040838503121561285c5761285b6127a7565b5b600061286a858286016127fa565b925050602061287b85828601612830565b9150509250929050565b60008115159050919050565b61289a81612885565b82525050565b60006020820190506128b56000830184612891565b92915050565b6128c48161280f565b82525050565b60006020820190506128df60008301846128bb565b92915050565b6000806000606084860312156128fe576128fd6127a7565b5b600061290c868287016127fa565b935050602061291d868287016127fa565b925050604061292e86828701612830565b9150509250925092565b60006020828403121561294e5761294d6127a7565b5b600061295c848285016127fa565b91505092915050565b600060ff82169050919050565b61297b81612965565b82525050565b60006020820190506129966000830184612972565b92915050565b6129a581612885565b81146129b057600080fd5b50565b6000813590506129c28161299c565b92915050565b6000602082840312156129de576129dd6127a7565b5b60006129ec848285016129b3565b91505092915050565b6129fe816127d1565b82525050565b6000602082019050612a1960008301846129f5565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b612a5c82612731565b810181811067ffffffffffffffff82111715612a7b57612a7a612a24565b5b80604052505050565b6000612a8e61279d565b9050612a9a8282612a53565b919050565b600067ffffffffffffffff821115612aba57612ab9612a24565b5b602082029050602081019050919050565b600080fd5b6000612ae3612ade84612a9f565b612a84565b90508083825260208201905060208402830185811115612b0657612b05612acb565b5b835b81811015612b2f5780612b1b88826127fa565b845260208401935050602081019050612b08565b5050509392505050565b600082601f830112612b4e57612b4d612a1f565b5b8135612b5e848260208601612ad0565b91505092915050565b600060208284031215612b7d57612b7c6127a7565b5b600082013567ffffffffffffffff811115612b9b57612b9a6127ac565b5b612ba784828501612b39565b91505092915050565b600060208284031215612bc657612bc56127a7565b5b6000612bd484828501612830565b91505092915050565b60008060408385031215612bf457612bf36127a7565b5b6000612c02858286016127fa565b9250506020612c13858286016127fa565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612c536020836126ed565b9150612c5e82612c1d565b602082019050919050565b60006020820190508181036000830152612c8281612c46565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612cf28261280f565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612d2557612d24612cb8565b5b600182019050919050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b6000612d666017836126ed565b9150612d7182612d30565b602082019050919050565b60006020820190508181036000830152612d9581612d59565b9050919050565b600081519050612dab816127e3565b92915050565b600060208284031215612dc757612dc66127a7565b5b6000612dd584828501612d9c565b91505092915050565b6000604082019050612df360008301856129f5565b612e0060208301846129f5565b9392505050565b6000819050919050565b6000819050919050565b6000612e36612e31612e2c84612e07565b612e11565b61280f565b9050919050565b612e4681612e1b565b82525050565b600060c082019050612e6160008301896129f5565b612e6e60208301886128bb565b612e7b6040830187612e3d565b612e886060830186612e3d565b612e9560808301856129f5565b612ea260a08301846128bb565b979650505050505050565b600081519050612ebc81612819565b92915050565b600080600060608486031215612edb57612eda6127a7565b5b6000612ee986828701612ead565b9350506020612efa86828701612ead565b9250506040612f0b86828701612ead565b9150509250925092565b6000604082019050612f2a60008301856129f5565b612f3760208301846128bb565b9392505050565b600081519050612f4d8161299c565b92915050565b600060208284031215612f6957612f686127a7565b5b6000612f7784828501612f3e565b91505092915050565b7f416d6f756e74206d7573742062652067726561746572207468616e2030000000600082015250565b6000612fb6601d836126ed565b9150612fc182612f80565b602082019050919050565b60006020820190508181036000830152612fe581612fa9565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006130486024836126ed565b915061305382612fec565b604082019050919050565b600060208201905081810360008301526130778161303b565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006130da6022836126ed565b91506130e58261307e565b604082019050919050565b60006020820190508181036000830152613109816130cd565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061316c6025836126ed565b915061317782613110565b604082019050919050565b6000602082019050818103600083015261319b8161315f565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006131fe6023836126ed565b9150613209826131a2565b604082019050919050565b6000602082019050818103600083015261322d816131f1565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b60006132906029836126ed565b915061329b82613234565b604082019050919050565b600060208201905081810360008301526132bf81613283565b9050919050565b7f4552523a20556e6973776170206f6e6c79000000000000000000000000000000600082015250565b60006132fc6011836126ed565b9150613307826132c6565b602082019050919050565b6000602082019050818103600083015261332b816132ef565b9050919050565b600061333d8261280f565b91506133488361280f565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561337d5761337c612cb8565b5b828201905092915050565b60006133938261280f565b915061339e8361280f565b9250828210156133b1576133b0612cb8565b5b828203905092915050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b6000613418602a836126ed565b9150613423826133bc565b604082019050919050565b600060208201905081810360008301526134478161340b565b9050919050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613483816127d1565b82525050565b6000613495838361347a565b60208301905092915050565b6000602082019050919050565b60006134b98261344e565b6134c38185613459565b93506134ce8361346a565b8060005b838110156134ff5781516134e68882613489565b97506134f1836134a1565b9250506001810190506134d2565b5085935050505092915050565b600060a08201905061352160008301886128bb565b61352e6020830187612e3d565b818103604083015261354081866134ae565b905061354f60608301856129f5565b61355c60808301846128bb565b9695505050505050565b60006135718261280f565b915061357c8361280f565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156135b5576135b4612cb8565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006135fa8261280f565b91506136058361280f565b925082613615576136146135c0565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061367c6021836126ed565b915061368782613620565b604082019050919050565b600060208201905081810360008301526136ab8161366f565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006136e8601b836126ed565b91506136f3826136b2565b602082019050919050565b60006020820190508181036000830152613717816136db565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220108ba5030d1781ff6cefd73ebd86381a40ef05d0785c02bb0749759773a6314a64736f6c63430008090033000000000000000000000000f48026e9f82ae9f532fd565711f49991cc45af48
Deployed Bytecode
0x60806040526004361061010d5760003560e01c8063715018a611610095578063b515566a11610064578063b515566a14610364578063c3c8cd801461038d578063c9567bf9146103a4578063d543dbeb146103bb578063dd62ed3e146103e457610114565b8063715018a6146102ba5780638da5cb5b146102d157806395d89b41146102fc578063a9059cbb1461032757610114565b8063273123b7116100dc578063273123b7146101e9578063313ce567146102125780635932ead11461023d5780636fc3eaec1461026657806370a082311461027d57610114565b806306fdde0314610119578063095ea7b31461014457806318160ddd1461018157806323b872dd146101ac57610114565b3661011457005b600080fd5b34801561012557600080fd5b5061012e610421565b60405161013b919061277b565b60405180910390f35b34801561015057600080fd5b5061016b60048036038101906101669190612845565b61045e565b60405161017891906128a0565b60405180910390f35b34801561018d57600080fd5b5061019661047c565b6040516101a391906128ca565b60405180910390f35b3480156101b857600080fd5b506101d360048036038101906101ce91906128e5565b61048c565b6040516101e091906128a0565b60405180910390f35b3480156101f557600080fd5b50610210600480360381019061020b9190612938565b610565565b005b34801561021e57600080fd5b50610227610655565b6040516102349190612981565b60405180910390f35b34801561024957600080fd5b50610264600480360381019061025f91906129c8565b61065e565b005b34801561027257600080fd5b5061027b610710565b005b34801561028957600080fd5b506102a4600480360381019061029f9190612938565b610782565b6040516102b191906128ca565b60405180910390f35b3480156102c657600080fd5b506102cf6107d3565b005b3480156102dd57600080fd5b506102e6610926565b6040516102f39190612a04565b60405180910390f35b34801561030857600080fd5b5061031161094f565b60405161031e919061277b565b60405180910390f35b34801561033357600080fd5b5061034e60048036038101906103499190612845565b61098c565b60405161035b91906128a0565b60405180910390f35b34801561037057600080fd5b5061038b60048036038101906103869190612b67565b6109aa565b005b34801561039957600080fd5b506103a2610ad4565b005b3480156103b057600080fd5b506103b9610b4e565b005b3480156103c757600080fd5b506103e260048036038101906103dd9190612bb0565b6110a9565b005b3480156103f057600080fd5b5061040b60048036038101906104069190612bdd565b6111f1565b60405161041891906128ca565b60405180910390f35b60606040518060400160405280601281526020017f204f72626974616c20313239204d75736b200000000000000000000000000000815250905090565b600061047261046b611278565b8484611280565b6001905092915050565b6000670de0b6b3a7640000905090565b600061049984848461144b565b61055a846104a5611278565b6105558560405180606001604052806028815260200161371f60289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061050b611278565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611c0a9092919063ffffffff16565b611280565b600190509392505050565b61056d611278565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146105fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105f190612c69565b60405180910390fd5b6000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006009905090565b610666611278565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ea90612c69565b60405180910390fd5b80600e60176101000a81548160ff02191690831515021790555050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610751611278565b73ffffffffffffffffffffffffffffffffffffffff161461077157600080fd5b600047905061077f81611c6e565b50565b60006107cc600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611cda565b9050919050565b6107db611278565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610868576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161085f90612c69565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600781526020017f203132394f4d2000000000000000000000000000000000000000000000000000815250905090565b60006109a0610999611278565b848461144b565b6001905092915050565b6109b2611278565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a3f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a3690612c69565b60405180910390fd5b60005b8151811015610ad0576001600a6000848481518110610a6457610a63612c89565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610ac890612ce7565b915050610a42565b5050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b15611278565b73ffffffffffffffffffffffffffffffffffffffff1614610b3557600080fd5b6000610b4030610782565b9050610b4b81611d48565b50565b610b56611278565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610be3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bda90612c69565b60405180910390fd5b600e60149054906101000a900460ff1615610c33576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2a90612d7c565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d905080600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610cc230600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16670de0b6b3a7640000611280565b8073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015610d0857600080fd5b505afa158015610d1c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d409190612db1565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015610da257600080fd5b505afa158015610db6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dda9190612db1565b6040518363ffffffff1660e01b8152600401610df7929190612dde565b602060405180830381600087803b158015610e1157600080fd5b505af1158015610e25573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e499190612db1565b600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610ed230610782565b600080610edd610926565b426040518863ffffffff1660e01b8152600401610eff96959493929190612e4c565b6060604051808303818588803b158015610f1857600080fd5b505af1158015610f2c573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f519190612ec2565b5050506001600e60166101000a81548160ff0219169083151502179055506000600e60176101000a81548160ff02191690831515021790555067016345785d8a0000600f819055506001600e60146101000a81548160ff021916908315150217905550600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611053929190612f15565b602060405180830381600087803b15801561106d57600080fd5b505af1158015611081573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110a59190612f53565b5050565b6110b1611278565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461113e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161113590612c69565b60405180910390fd5b60008111611181576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161117890612fcc565b60405180910390fd5b6111af60646111a183670de0b6b3a7640000611fd090919063ffffffff16565b61204b90919063ffffffff16565b600f819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf600f546040516111e691906128ca565b60405180910390a150565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156112f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112e79061305e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611360576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611357906130f0565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161143e91906128ca565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156114bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114b290613182565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561152b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161152290613214565b60405180910390fd5b6000811161156e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611565906132a6565b60405180910390fd5b611576610926565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156115e457506115b4610926565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611b4757600e60179054906101000a900460ff1615611817573073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561166657503073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156116c05750600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b801561171a5750600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561181657600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611760611278565b73ffffffffffffffffffffffffffffffffffffffff1614806117d65750600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166117be611278565b73ffffffffffffffffffffffffffffffffffffffff16145b611815576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161180c90613312565b60405180910390fd5b5b5b600f5481111561182657600080fd5b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156118ca5750600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6118d357600080fd5b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561197e5750600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156119d45750600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156119ec5750600e60179054906101000a900460ff165b15611a8d5742600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410611a3c57600080fd5b603c42611a499190613332565b600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6000611a9830610782565b9050600e60159054906101000a900460ff16158015611b055750600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015611b1d5750600e60169054906101000a900460ff165b15611b4557611b2b81611d48565b60004790506000811115611b4357611b4247611c6e565b5b505b505b600060019050600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611bee5750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15611bf857600090505b611c0484848484612095565b50505050565b6000838311158290611c52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c49919061277b565b60405180910390fd5b5060008385611c619190613388565b9050809150509392505050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611cd6573d6000803e3d6000fd5b5050565b6000600654821115611d21576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d189061342e565b60405180910390fd5b6000611d2b6120c2565b9050611d40818461204b90919063ffffffff16565b915050919050565b6001600e60156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611d8057611d7f612a24565b5b604051908082528060200260200182016040528015611dae5781602001602082028036833780820191505090505b5090503081600081518110611dc657611dc5612c89565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611e6857600080fd5b505afa158015611e7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ea09190612db1565b81600181518110611eb457611eb3612c89565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611f1b30600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611280565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611f7f95949392919061350c565b600060405180830381600087803b158015611f9957600080fd5b505af1158015611fad573d6000803e3d6000fd5b50505050506000600e60156101000a81548160ff02191690831515021790555050565b600080831415611fe35760009050612045565b60008284611ff19190613566565b905082848261200091906135ef565b14612040576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161203790613692565b60405180910390fd5b809150505b92915050565b600061208d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506120ed565b905092915050565b806120a3576120a2612150565b5b6120ae848484612181565b806120bc576120bb61234c565b5b50505050565b60008060006120cf61235e565b915091506120e6818361204b90919063ffffffff16565b9250505090565b60008083118290612134576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161212b919061277b565b60405180910390fd5b506000838561214391906135ef565b9050809150509392505050565b600060085414801561216457506000600954145b1561216e5761217f565b600060088190555060006009819055505b565b600080600080600080612193876123bd565b9550955095509550955095506121f186600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461242490919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061228685600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461246e90919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506122d2816124cc565b6122dc8483612589565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161233991906128ca565b60405180910390a3505050505050505050565b60026008819055506003600981905550565b600080600060065490506000670de0b6b3a76400009050612392670de0b6b3a764000060065461204b90919063ffffffff16565b8210156123b057600654670de0b6b3a76400009350935050506123b9565b81819350935050505b9091565b60008060008060008060008060006123d98a60085460056125c3565b92509250925060006123e96120c2565b905060008060006123fc8e878787612659565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b600061246683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611c0a565b905092915050565b600080828461247d9190613332565b9050838110156124c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124b9906136fe565b60405180910390fd5b8091505092915050565b60006124d66120c2565b905060006124ed8284611fd090919063ffffffff16565b905061254181600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461246e90919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b61259e8260065461242490919063ffffffff16565b6006819055506125b98160075461246e90919063ffffffff16565b6007819055505050565b6000806000806125ef60646125e1888a611fd090919063ffffffff16565b61204b90919063ffffffff16565b90506000612619606461260b888b611fd090919063ffffffff16565b61204b90919063ffffffff16565b9050600061264282612634858c61242490919063ffffffff16565b61242490919063ffffffff16565b905080838395509550955050505093509350939050565b6000806000806126728589611fd090919063ffffffff16565b905060006126898689611fd090919063ffffffff16565b905060006126a08789611fd090919063ffffffff16565b905060006126c9826126bb858761242490919063ffffffff16565b61242490919063ffffffff16565b9050838184965096509650505050509450945094915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561271c578082015181840152602081019050612701565b8381111561272b576000848401525b50505050565b6000601f19601f8301169050919050565b600061274d826126e2565b61275781856126ed565b93506127678185602086016126fe565b61277081612731565b840191505092915050565b600060208201905081810360008301526127958184612742565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006127dc826127b1565b9050919050565b6127ec816127d1565b81146127f757600080fd5b50565b600081359050612809816127e3565b92915050565b6000819050919050565b6128228161280f565b811461282d57600080fd5b50565b60008135905061283f81612819565b92915050565b6000806040838503121561285c5761285b6127a7565b5b600061286a858286016127fa565b925050602061287b85828601612830565b9150509250929050565b60008115159050919050565b61289a81612885565b82525050565b60006020820190506128b56000830184612891565b92915050565b6128c48161280f565b82525050565b60006020820190506128df60008301846128bb565b92915050565b6000806000606084860312156128fe576128fd6127a7565b5b600061290c868287016127fa565b935050602061291d868287016127fa565b925050604061292e86828701612830565b9150509250925092565b60006020828403121561294e5761294d6127a7565b5b600061295c848285016127fa565b91505092915050565b600060ff82169050919050565b61297b81612965565b82525050565b60006020820190506129966000830184612972565b92915050565b6129a581612885565b81146129b057600080fd5b50565b6000813590506129c28161299c565b92915050565b6000602082840312156129de576129dd6127a7565b5b60006129ec848285016129b3565b91505092915050565b6129fe816127d1565b82525050565b6000602082019050612a1960008301846129f5565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b612a5c82612731565b810181811067ffffffffffffffff82111715612a7b57612a7a612a24565b5b80604052505050565b6000612a8e61279d565b9050612a9a8282612a53565b919050565b600067ffffffffffffffff821115612aba57612ab9612a24565b5b602082029050602081019050919050565b600080fd5b6000612ae3612ade84612a9f565b612a84565b90508083825260208201905060208402830185811115612b0657612b05612acb565b5b835b81811015612b2f5780612b1b88826127fa565b845260208401935050602081019050612b08565b5050509392505050565b600082601f830112612b4e57612b4d612a1f565b5b8135612b5e848260208601612ad0565b91505092915050565b600060208284031215612b7d57612b7c6127a7565b5b600082013567ffffffffffffffff811115612b9b57612b9a6127ac565b5b612ba784828501612b39565b91505092915050565b600060208284031215612bc657612bc56127a7565b5b6000612bd484828501612830565b91505092915050565b60008060408385031215612bf457612bf36127a7565b5b6000612c02858286016127fa565b9250506020612c13858286016127fa565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612c536020836126ed565b9150612c5e82612c1d565b602082019050919050565b60006020820190508181036000830152612c8281612c46565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612cf28261280f565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612d2557612d24612cb8565b5b600182019050919050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b6000612d666017836126ed565b9150612d7182612d30565b602082019050919050565b60006020820190508181036000830152612d9581612d59565b9050919050565b600081519050612dab816127e3565b92915050565b600060208284031215612dc757612dc66127a7565b5b6000612dd584828501612d9c565b91505092915050565b6000604082019050612df360008301856129f5565b612e0060208301846129f5565b9392505050565b6000819050919050565b6000819050919050565b6000612e36612e31612e2c84612e07565b612e11565b61280f565b9050919050565b612e4681612e1b565b82525050565b600060c082019050612e6160008301896129f5565b612e6e60208301886128bb565b612e7b6040830187612e3d565b612e886060830186612e3d565b612e9560808301856129f5565b612ea260a08301846128bb565b979650505050505050565b600081519050612ebc81612819565b92915050565b600080600060608486031215612edb57612eda6127a7565b5b6000612ee986828701612ead565b9350506020612efa86828701612ead565b9250506040612f0b86828701612ead565b9150509250925092565b6000604082019050612f2a60008301856129f5565b612f3760208301846128bb565b9392505050565b600081519050612f4d8161299c565b92915050565b600060208284031215612f6957612f686127a7565b5b6000612f7784828501612f3e565b91505092915050565b7f416d6f756e74206d7573742062652067726561746572207468616e2030000000600082015250565b6000612fb6601d836126ed565b9150612fc182612f80565b602082019050919050565b60006020820190508181036000830152612fe581612fa9565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006130486024836126ed565b915061305382612fec565b604082019050919050565b600060208201905081810360008301526130778161303b565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006130da6022836126ed565b91506130e58261307e565b604082019050919050565b60006020820190508181036000830152613109816130cd565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061316c6025836126ed565b915061317782613110565b604082019050919050565b6000602082019050818103600083015261319b8161315f565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006131fe6023836126ed565b9150613209826131a2565b604082019050919050565b6000602082019050818103600083015261322d816131f1565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b60006132906029836126ed565b915061329b82613234565b604082019050919050565b600060208201905081810360008301526132bf81613283565b9050919050565b7f4552523a20556e6973776170206f6e6c79000000000000000000000000000000600082015250565b60006132fc6011836126ed565b9150613307826132c6565b602082019050919050565b6000602082019050818103600083015261332b816132ef565b9050919050565b600061333d8261280f565b91506133488361280f565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561337d5761337c612cb8565b5b828201905092915050565b60006133938261280f565b915061339e8361280f565b9250828210156133b1576133b0612cb8565b5b828203905092915050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b6000613418602a836126ed565b9150613423826133bc565b604082019050919050565b600060208201905081810360008301526134478161340b565b9050919050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613483816127d1565b82525050565b6000613495838361347a565b60208301905092915050565b6000602082019050919050565b60006134b98261344e565b6134c38185613459565b93506134ce8361346a565b8060005b838110156134ff5781516134e68882613489565b97506134f1836134a1565b9250506001810190506134d2565b5085935050505092915050565b600060a08201905061352160008301886128bb565b61352e6020830187612e3d565b818103604083015261354081866134ae565b905061354f60608301856129f5565b61355c60808301846128bb565b9695505050505050565b60006135718261280f565b915061357c8361280f565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156135b5576135b4612cb8565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006135fa8261280f565b91506136058361280f565b925082613615576136146135c0565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061367c6021836126ed565b915061368782613620565b604082019050919050565b600060208201905081810360008301526136ab8161366f565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006136e8601b836126ed565b91506136f3826136b2565b602082019050919050565b60006020820190508181036000830152613717816136db565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220108ba5030d1781ff6cefd73ebd86381a40ef05d0785c02bb0749759773a6314a64736f6c63430008090033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000f48026e9f82ae9f532fd565711f49991cc45af48
-----Decoded View---------------
Arg [0] : addr1 (address): 0xF48026e9f82Ae9F532FD565711f49991cc45af48
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000f48026e9f82ae9f532fd565711f49991cc45af48
Deployed Bytecode Sourcemap
3898:12195:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5578:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6503:193;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5855:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6704:446;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12351:88;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5764:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7158:103;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11977:191;;;;;;;;;;;;;:::i;:::-;;5958:138;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2850:148;;;;;;;;;;;;;:::i;:::-;;2636:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5669:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6104:199;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12176:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11777:192;;;;;;;;;;;;;:::i;:::-;;10792:977;;;;;;;;;;;;;:::i;:::-;;15835:255;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6311:184;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5578:83;5615:13;5648:5;;;;;;;;;;;;;;;;;5641:12;;5578:83;:::o;6503:193::-;6605:4;6627:39;6636:12;:10;:12::i;:::-;6650:7;6659:6;6627:8;:39::i;:::-;6684:4;6677:11;;6503:193;;;;:::o;5855:95::-;5908:7;4474:18;5928:14;;5855:95;:::o;6704:446::-;6836:4;6853:36;6863:6;6871:9;6882:6;6853:9;:36::i;:::-;6900:220;6923:6;6944:12;:10;:12::i;:::-;6971:138;7027:6;6971:138;;;;;;;;;;;;;;;;;:11;:19;6983:6;6971:19;;;;;;;;;;;;;;;:33;6991:12;:10;:12::i;:::-;6971:33;;;;;;;;;;;;;;;;:37;;:138;;;;;:::i;:::-;6900:8;:220::i;:::-;7138:4;7131:11;;6704:446;;;;;:::o;12351:88::-;2773:12;:10;:12::i;:::-;2763:22;;:6;;;;;;;;;;:22;;;2755:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12426:5:::1;12411:4;:12;12416:6;12411:12;;;;;;;;;;;;;;;;:20;;;;;;;;;;;;;;;;;;12351:88:::0;:::o;5764:83::-;5805:5;4136:1;5823:16;;5764:83;:::o;7158:103::-;2773:12;:10;:12::i;:::-;2763:22;;:6;;;;;;;;;;:22;;;2755:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;7248:5:::1;7230:15;;:23;;;;;;;;;;;;;;;;;;7158:103:::0;:::o;11977:191::-;12043:12;;;;;;;;;;;12027:28;;:12;:10;:12::i;:::-;:28;;;12019:37;;;;;;12067:26;12096:21;12067:50;;12128:32;12141:18;12128:12;:32::i;:::-;12008:160;11977:191::o;5958:138::-;6024:7;6051:37;6071:7;:16;6079:7;6071:16;;;;;;;;;;;;;;;;6051:19;:37::i;:::-;6044:44;;5958:138;;;:::o;2850:148::-;2773:12;:10;:12::i;:::-;2763:22;;:6;;;;;;;;;;:22;;;2755:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2957:1:::1;2920:40;;2941:6;::::0;::::1;;;;;;;;2920:40;;;;;;;;;;;;2988:1;2971:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2850:148::o:0;2636:79::-;2674:7;2701:6;;;;;;;;;;;2694:13;;2636:79;:::o;5669:87::-;5708:13;5741:7;;;;;;;;;;;;;;;;;5734:14;;5669:87;:::o;6104:199::-;6209:4;6231:42;6241:12;:10;:12::i;:::-;6255:9;6266:6;6231:9;:42::i;:::-;6291:4;6284:11;;6104:199;;;;:::o;12176:167::-;2773:12;:10;:12::i;:::-;2763:22;;:6;;;;;;;;;;:22;;;2755:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12250:9:::1;12245:91;12269:5;:12;12265:1;:16;12245:91;;;12320:4;12303;:14;12308:5;12314:1;12308:8;;;;;;;;:::i;:::-;;;;;;;;12303:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;12283:3;;;;;:::i;:::-;;;;12245:91;;;;12176:167:::0;:::o;11777:192::-;11843:12;;;;;;;;;;;11827:28;;:12;:10;:12::i;:::-;:28;;;11819:37;;;;;;11867:23;11893:24;11911:4;11893:9;:24::i;:::-;11867:50;;11928:33;11945:15;11928:16;:33::i;:::-;11808:161;11777:192::o;10792:977::-;2773:12;:10;:12::i;:::-;2763:22;;:6;;;;;;;;;;:22;;;2755:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10856:11:::1;;;;;;;;;;;10855:12;10847:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;10906:35;10976:42;10906:113;;11048:16;11030:15;;:34;;;;;;;;;;;;;;;;;;11075:58;11092:4;11107:15;;;;;;;;;;;4474:18;11075:8;:58::i;:::-;11178:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11160:70;;;11239:4;11246:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11160:110;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11144:13;;:126;;;;;;;;;;;;;;;;;;11281:15;;;;;;;;;;;:31;;;11320:21;11365:4;11385:24;11403:4;11385:9;:24::i;:::-;11424:1;11440::::0;11456:7:::1;:5;:7::i;:::-;11478:15;11281:223;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;11529:4;11515:11;;:18;;;;;;;;;;;;;;;;;;11562:5;11544:15;;:23;;;;;;;;;;;;;;;;;;11593:17;11578:12;:32;;;;11635:4;11621:11;;:18;;;;;;;;;;;;;;;;;;11657:13;;;;;;;;;;;11650:29;;;11702:15;;;;;;;;;;;11733:17;11650:111;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10836:933;10792:977::o:0;15835:255::-;2773:12;:10;:12::i;:::-;2763:22;;:6;;;;;;;;;;:22;;;2755:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;15937:1:::1;15922:12;:16;15914:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;15998:36;16028:5;15998:25;16010:12;4474:18;15998:11;;:25;;;;:::i;:::-;:29;;:36;;;;:::i;:::-;15983:12;:51;;;;16050:32;16069:12;;16050:32;;;;;;:::i;:::-;;;;;;;;15835:255:::0;:::o;6311:184::-;6428:7;6460:11;:18;6472:5;6460:18;;;;;;;;;;;;;;;:27;6479:7;6460:27;;;;;;;;;;;;;;;;6453:34;;6311:184;;;;:::o;139:98::-;192:7;219:10;212:17;;139:98;:::o;7839:369::-;7983:1;7966:19;;:5;:19;;;;7958:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8064:1;8045:21;;:7;:21;;;;8037:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8146:6;8116:11;:18;8128:5;8116:18;;;;;;;;;;;;;;;:27;8135:7;8116:27;;;;;;;;;;;;;;;:36;;;;8184:7;8168:32;;8177:5;8168:32;;;8193:6;8168:32;;;;;;:::i;:::-;;;;;;;;7839:369;;;:::o;8216:1975::-;8354:1;8338:18;;:4;:18;;;;8330:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8431:1;8417:16;;:2;:16;;;;8409:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8501:1;8492:6;:10;8484:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8573:7;:5;:7::i;:::-;8565:15;;:4;:15;;;;:32;;;;;8590:7;:5;:7::i;:::-;8584:13;;:2;:13;;;;8565:32;8561:1429;;;8618:15;;;;;;;;;;;8614:526;;;8696:4;8680:21;;:4;:21;;;;:65;;;;;8740:4;8726:19;;:2;:19;;;;8680:65;:122;;;;;8786:15;;;;;;;;;;;8770:32;;:4;:32;;;;8680:122;:177;;;;;8841:15;;;;;;;;;;;8827:30;;:2;:30;;;;8680:177;8654:471;;;8958:15;;;;;;;;;;;8934:40;;:12;:10;:12::i;:::-;:40;;;:102;;;;9023:13;;;;;;;;;;;9007:29;;:12;:10;:12::i;:::-;:29;;;8934:102;8900:205;;;;;;;;;;;;:::i;:::-;;;;;;;;;8654:471;8614:526;9172:12;;9162:6;:22;;9154:31;;;;;;9209:4;:10;9214:4;9209:10;;;;;;;;;;;;;;;;;;;;;;;;;9208:11;:24;;;;;9224:4;:8;9229:2;9224:8;;;;;;;;;;;;;;;;;;;;;;;;;9223:9;9208:24;9200:33;;;;;;9278:13;;;;;;;;;;;9270:21;;:4;:21;;;:72;;;;;9326:15;;;;;;;;;;;9312:30;;:2;:30;;;;9270:72;:116;;;;;9364:18;:22;9383:2;9364:22;;;;;;;;;;;;;;;;;;;;;;;;;9363:23;9270:116;:152;;;;;9407:15;;;;;;;;;;;9270:152;9248:328;;;9480:15;9465:8;:12;9474:2;9465:12;;;;;;;;;;;;;;;;:30;9457:39;;;;;;9549:10;9530:15;:30;;;;:::i;:::-;9515:8;:12;9524:2;9515:12;;;;;;;;;;;;;;;:45;;;;9248:328;9590:28;9621:24;9639:4;9621:9;:24::i;:::-;9590:55;;9665:6;;;;;;;;;;;9664:7;:32;;;;;9683:13;;;;;;;;;;;9675:21;;:4;:21;;;;9664:32;:47;;;;;9700:11;;;;;;;;;;;9664:47;9660:319;;;9732:38;9749:20;9732:16;:38::i;:::-;9789:26;9818:21;9789:50;;9883:1;9862:18;:22;9858:106;;;9909:35;9922:21;9909:12;:35::i;:::-;9858:106;9713:266;9660:319;8599:1391;8561:1429;10000:12;10015:4;10000:19;;10036:18;:24;10055:4;10036:24;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;10064:18;:22;10083:2;10064:22;;;;;;;;;;;;;;;;;;;;;;;;;10036:50;10032:98;;;10113:5;10103:15;;10032:98;10142:41;10157:4;10163:2;10167:6;10175:7;10142:14;:41::i;:::-;8319:1872;8216:1975;;;:::o;1401:224::-;1521:7;1554:1;1549;:6;;1557:12;1541:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1581:9;1597:1;1593;:5;;;;:::i;:::-;1581:17;;1616:1;1609:8;;;1401:224;;;;;:::o;10690:94::-;10747:12;;;;;;;;;;;:21;;:29;10769:6;10747:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10690:94;:::o;7269:323::-;7364:7;7422;;7411;:18;;7389:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;7510:19;7532:10;:8;:10::i;:::-;7510:32;;7560:24;7572:11;7560:7;:11;;:24;;;;:::i;:::-;7553:31;;;7269:323;;;:::o;10199:483::-;5192:4;5183:6;;:13;;;;;;;;;;;;;;;;;;10277:21:::1;10315:1;10301:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10277:40;;10346:4;10328;10333:1;10328:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;10372:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10362:4;10367:1;10362:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;10405:62;10422:4;10437:15;;;;;;;;;;;10455:11;10405:8;:62::i;:::-;10478:15;;;;;;;;;;;:66;;;10559:11;10585:1;10601:4;10628;10648:15;10478:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10266:416;5228:5:::0;5219:6;;:14;;;;;;;;;;;;;;;;;;10199:483;:::o;1633:246::-;1691:7;1720:1;1715;:6;1711:47;;;1745:1;1738:8;;;;1711:47;1768:9;1784:1;1780;:5;;;;:::i;:::-;1768:17;;1813:1;1808;1804;:5;;;;:::i;:::-;:10;1796:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1870:1;1863:8;;;1633:246;;;;;:::o;1887:132::-;1945:7;1972:39;1976:1;1979;1972:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1965:46;;1887:132;;;;:::o;12447:282::-;12603:7;12598:28;;12612:14;:12;:14::i;:::-;12598:28;12637:44;12655:6;12663:9;12674:6;12637:17;:44::i;:::-;12697:7;12692:29;;12706:15;:13;:15::i;:::-;12692:29;12447:282;;;;:::o;15398:164::-;15440:7;15461:15;15478;15497:19;:17;:19::i;:::-;15460:56;;;;15534:20;15546:7;15534;:11;;:20;;;;:::i;:::-;15527:27;;;;15398:164;:::o;2027:223::-;2147:7;2179:1;2175;:5;2182:12;2167:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2206:9;2222:1;2218;:5;;;;:::i;:::-;2206:17;;2241:1;2234:8;;;2027:223;;;;;:::o;7600:137::-;7658:1;7647:7;;:12;:29;;;;;7675:1;7663:8;;:13;7647:29;7643:42;;;7678:7;;7643:42;7705:1;7695:7;:11;;;;7728:1;7717:8;:12;;;;7600:137;:::o;12737:610::-;12884:15;12914:23;12952:12;12979:23;13017:12;13044:13;13071:19;13082:7;13071:10;:19::i;:::-;12869:221;;;;;;;;;;;;13119:28;13139:7;13119;:15;13127:6;13119:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;13101:7;:15;13109:6;13101:15;;;;;;;;;;;;;;;:46;;;;13179:39;13202:15;13179:7;:18;13187:9;13179:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;13158:7;:18;13166:9;13158:18;;;;;;;;;;;;;;;:60;;;;13229:16;13239:5;13229:9;:16::i;:::-;13256:23;13268:4;13274;13256:11;:23::i;:::-;13312:9;13295:44;;13304:6;13295:44;;;13323:15;13295:44;;;;;;:::i;:::-;;;;;;;;12858:489;;;;;;12737:610;;;:::o;7745:86::-;7799:1;7789:7;:11;;;;7822:1;7811:8;:12;;;;7745:86::o;15570:257::-;15621:7;15630;15650:15;15668:7;;15650:25;;15686:15;4474:18;15686:25;;15736:20;4474:18;15736:7;;:11;;:20;;;;:::i;:::-;15726:7;:30;15722:61;;;15766:7;;4474:18;15758:25;;;;;;;;15722:61;15802:7;15811;15794:25;;;;;;15570:257;;;:::o;13766:607::-;13866:7;13888;13910;13932;13954;13976;14012:23;14037:12;14051:13;14081:32;14093:7;14102;;14111:1;14081:11;:32::i;:::-;14011:102;;;;;;14124:19;14146:10;:8;:10::i;:::-;14124:32;;14168:15;14185:23;14210:12;14239:46;14251:7;14260:4;14266:5;14273:11;14239;:46::i;:::-;14167:118;;;;;;14304:7;14313:15;14330:4;14336:15;14353:4;14359:5;14296:69;;;;;;;;;;;;;;;;;;;13766:607;;;;;;;:::o;1257:136::-;1315:7;1342:43;1346:1;1349;1342:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1335:50;;1257:136;;;;:::o;1070:179::-;1128:7;1148:9;1164:1;1160;:5;;;;:::i;:::-;1148:17;;1189:1;1184;:6;;1176:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1240:1;1233:8;;;1070:179;;;;:::o;13355:211::-;13408:19;13430:10;:8;:10::i;:::-;13408:32;;13451:13;13467:22;13477:11;13467:5;:9;;:22;;;;:::i;:::-;13451:38;;13525:33;13552:5;13525:7;:22;13541:4;13525:22;;;;;;;;;;;;;;;;:26;;:33;;;;:::i;:::-;13500:7;:22;13516:4;13500:22;;;;;;;;;;;;;;;:58;;;;13397:169;;13355:211;:::o;13574:147::-;13652:17;13664:4;13652:7;;:11;;:17;;;;:::i;:::-;13642:7;:27;;;;13693:20;13708:4;13693:10;;:14;;:20;;;;:::i;:::-;13680:10;:33;;;;13574:147;;:::o;14381:467::-;14549:7;14571;14593;14628:12;14643:28;14667:3;14643:19;14655:6;14643:7;:11;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;14628:43;;14682:13;14698:29;14723:3;14698:20;14710:7;14698;:11;;:20;;;;:::i;:::-;:24;;:29;;;;:::i;:::-;14682:45;;14738:23;14764:28;14786:5;14764:17;14776:4;14764:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;14738:54;;14811:15;14828:4;14834:5;14803:37;;;;;;;;;14381:467;;;;;;;:::o;14856:534::-;15050:7;15072;15094;15129:15;15147:24;15159:11;15147:7;:11;;:24;;;;:::i;:::-;15129:42;;15182:12;15197:21;15206:11;15197:4;:8;;:21;;;;:::i;:::-;15182:36;;15229:13;15245:22;15255:11;15245:5;:9;;:22;;;;:::i;:::-;15229:38;;15278:23;15304:28;15326:5;15304:17;15316:4;15304:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;15278:54;;15351:7;15360:15;15377:4;15343:39;;;;;;;;;;14856:534;;;;;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:307::-;355:1;365:113;379:6;376:1;373:13;365:113;;;464:1;459:3;455:11;449:18;445:1;440:3;436:11;429:39;401:2;398:1;394:10;389:15;;365:113;;;496:6;493:1;490:13;487:101;;;576:1;567:6;562:3;558:16;551:27;487:101;336:258;287:307;;;:::o;600:102::-;641:6;692:2;688:7;683:2;676:5;672:14;668:28;658:38;;600:102;;;:::o;708:364::-;796:3;824:39;857:5;824:39;:::i;:::-;879:71;943:6;938:3;879:71;:::i;:::-;872:78;;959:52;1004:6;999:3;992:4;985:5;981:16;959:52;:::i;:::-;1036:29;1058:6;1036:29;:::i;:::-;1031:3;1027:39;1020:46;;800:272;708:364;;;;:::o;1078:313::-;1191:4;1229:2;1218:9;1214:18;1206:26;;1278:9;1272:4;1268:20;1264:1;1253:9;1249:17;1242:47;1306:78;1379:4;1370:6;1306:78;:::i;:::-;1298:86;;1078:313;;;;:::o;1397:75::-;1430:6;1463:2;1457:9;1447:19;;1397:75;:::o;1478:117::-;1587:1;1584;1577:12;1601:117;1710:1;1707;1700:12;1724:126;1761:7;1801:42;1794:5;1790:54;1779:65;;1724:126;;;:::o;1856:96::-;1893:7;1922:24;1940:5;1922:24;:::i;:::-;1911:35;;1856:96;;;:::o;1958:122::-;2031:24;2049:5;2031:24;:::i;:::-;2024:5;2021:35;2011:63;;2070:1;2067;2060:12;2011:63;1958:122;:::o;2086:139::-;2132:5;2170:6;2157:20;2148:29;;2186:33;2213:5;2186:33;:::i;:::-;2086:139;;;;:::o;2231:77::-;2268:7;2297:5;2286:16;;2231:77;;;:::o;2314:122::-;2387:24;2405:5;2387:24;:::i;:::-;2380:5;2377:35;2367:63;;2426:1;2423;2416:12;2367:63;2314:122;:::o;2442:139::-;2488:5;2526:6;2513:20;2504:29;;2542:33;2569:5;2542:33;:::i;:::-;2442:139;;;;:::o;2587:474::-;2655:6;2663;2712:2;2700:9;2691:7;2687:23;2683:32;2680:119;;;2718:79;;:::i;:::-;2680:119;2838:1;2863:53;2908:7;2899:6;2888:9;2884:22;2863:53;:::i;:::-;2853:63;;2809:117;2965:2;2991:53;3036:7;3027:6;3016:9;3012:22;2991:53;:::i;:::-;2981:63;;2936:118;2587:474;;;;;:::o;3067:90::-;3101:7;3144:5;3137:13;3130:21;3119:32;;3067:90;;;:::o;3163:109::-;3244:21;3259:5;3244:21;:::i;:::-;3239:3;3232:34;3163:109;;:::o;3278:210::-;3365:4;3403:2;3392:9;3388:18;3380:26;;3416:65;3478:1;3467:9;3463:17;3454:6;3416:65;:::i;:::-;3278:210;;;;:::o;3494:118::-;3581:24;3599:5;3581:24;:::i;:::-;3576:3;3569:37;3494:118;;:::o;3618:222::-;3711:4;3749:2;3738:9;3734:18;3726:26;;3762:71;3830:1;3819:9;3815:17;3806:6;3762:71;:::i;:::-;3618:222;;;;:::o;3846:619::-;3923:6;3931;3939;3988:2;3976:9;3967:7;3963:23;3959:32;3956:119;;;3994:79;;:::i;:::-;3956:119;4114:1;4139:53;4184:7;4175:6;4164:9;4160:22;4139:53;:::i;:::-;4129:63;;4085:117;4241:2;4267:53;4312:7;4303:6;4292:9;4288:22;4267:53;:::i;:::-;4257:63;;4212:118;4369:2;4395:53;4440:7;4431:6;4420:9;4416:22;4395:53;:::i;:::-;4385:63;;4340:118;3846:619;;;;;:::o;4471:329::-;4530:6;4579:2;4567:9;4558:7;4554:23;4550:32;4547:119;;;4585:79;;:::i;:::-;4547:119;4705:1;4730:53;4775:7;4766:6;4755:9;4751:22;4730:53;:::i;:::-;4720:63;;4676:117;4471:329;;;;:::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:116::-;5306:21;5321:5;5306:21;:::i;:::-;5299:5;5296:32;5286:60;;5342:1;5339;5332:12;5286:60;5236:116;:::o;5358:133::-;5401:5;5439:6;5426:20;5417:29;;5455:30;5479:5;5455:30;:::i;:::-;5358:133;;;;:::o;5497:323::-;5553:6;5602:2;5590:9;5581:7;5577:23;5573:32;5570:119;;;5608:79;;:::i;:::-;5570:119;5728:1;5753:50;5795:7;5786:6;5775:9;5771:22;5753:50;:::i;:::-;5743:60;;5699:114;5497:323;;;;:::o;5826:118::-;5913:24;5931:5;5913:24;:::i;:::-;5908:3;5901:37;5826:118;;:::o;5950:222::-;6043:4;6081:2;6070:9;6066:18;6058:26;;6094:71;6162:1;6151:9;6147:17;6138:6;6094:71;:::i;:::-;5950:222;;;;:::o;6178:117::-;6287:1;6284;6277:12;6301:180;6349:77;6346:1;6339:88;6446:4;6443:1;6436:15;6470:4;6467:1;6460:15;6487:281;6570:27;6592:4;6570:27;:::i;:::-;6562:6;6558:40;6700:6;6688:10;6685:22;6664:18;6652:10;6649:34;6646:62;6643:88;;;6711:18;;:::i;:::-;6643:88;6751:10;6747:2;6740:22;6530:238;6487:281;;:::o;6774:129::-;6808:6;6835:20;;:::i;:::-;6825:30;;6864:33;6892:4;6884:6;6864:33;:::i;:::-;6774:129;;;:::o;6909:311::-;6986:4;7076:18;7068:6;7065:30;7062:56;;;7098:18;;:::i;:::-;7062:56;7148:4;7140:6;7136:17;7128:25;;7208:4;7202;7198:15;7190:23;;6909:311;;;:::o;7226:117::-;7335:1;7332;7325:12;7366:710;7462:5;7487:81;7503:64;7560:6;7503:64;:::i;:::-;7487:81;:::i;:::-;7478:90;;7588:5;7617:6;7610:5;7603:21;7651:4;7644:5;7640:16;7633:23;;7704:4;7696:6;7692:17;7684:6;7680:30;7733:3;7725:6;7722:15;7719:122;;;7752:79;;:::i;:::-;7719:122;7867:6;7850:220;7884:6;7879:3;7876:15;7850:220;;;7959:3;7988:37;8021:3;8009:10;7988:37;:::i;:::-;7983:3;7976:50;8055:4;8050:3;8046:14;8039:21;;7926:144;7910:4;7905:3;7901:14;7894:21;;7850:220;;;7854:21;7468:608;;7366:710;;;;;:::o;8099:370::-;8170:5;8219:3;8212:4;8204:6;8200:17;8196:27;8186:122;;8227:79;;:::i;:::-;8186:122;8344:6;8331:20;8369:94;8459:3;8451:6;8444:4;8436:6;8432:17;8369:94;:::i;:::-;8360:103;;8176:293;8099:370;;;;:::o;8475:539::-;8559:6;8608:2;8596:9;8587:7;8583:23;8579:32;8576:119;;;8614:79;;:::i;:::-;8576:119;8762:1;8751:9;8747:17;8734:31;8792:18;8784:6;8781:30;8778:117;;;8814:79;;:::i;:::-;8778:117;8919:78;8989:7;8980:6;8969:9;8965:22;8919:78;:::i;:::-;8909:88;;8705:302;8475:539;;;;:::o;9020:329::-;9079:6;9128:2;9116:9;9107:7;9103:23;9099:32;9096:119;;;9134:79;;:::i;:::-;9096:119;9254:1;9279:53;9324:7;9315:6;9304:9;9300:22;9279:53;:::i;:::-;9269:63;;9225:117;9020:329;;;;:::o;9355:474::-;9423:6;9431;9480:2;9468:9;9459:7;9455:23;9451:32;9448:119;;;9486:79;;:::i;:::-;9448:119;9606:1;9631:53;9676:7;9667:6;9656:9;9652:22;9631:53;:::i;:::-;9621:63;;9577:117;9733:2;9759:53;9804:7;9795:6;9784:9;9780:22;9759:53;:::i;:::-;9749:63;;9704:118;9355:474;;;;;:::o;9835:182::-;9975:34;9971:1;9963:6;9959:14;9952:58;9835:182;:::o;10023:366::-;10165:3;10186:67;10250:2;10245:3;10186:67;:::i;:::-;10179:74;;10262:93;10351:3;10262:93;:::i;:::-;10380:2;10375:3;10371:12;10364:19;;10023:366;;;:::o;10395:419::-;10561:4;10599:2;10588:9;10584:18;10576:26;;10648:9;10642:4;10638:20;10634:1;10623:9;10619:17;10612:47;10676:131;10802:4;10676:131;:::i;:::-;10668:139;;10395:419;;;:::o;10820:180::-;10868:77;10865:1;10858:88;10965:4;10962:1;10955:15;10989:4;10986:1;10979:15;11006:180;11054:77;11051:1;11044:88;11151:4;11148:1;11141:15;11175:4;11172:1;11165:15;11192:233;11231:3;11254:24;11272:5;11254:24;:::i;:::-;11245:33;;11300:66;11293:5;11290:77;11287:103;;;11370:18;;:::i;:::-;11287:103;11417:1;11410:5;11406:13;11399:20;;11192:233;;;:::o;11431:173::-;11571:25;11567:1;11559:6;11555:14;11548:49;11431:173;:::o;11610:366::-;11752:3;11773:67;11837:2;11832:3;11773:67;:::i;:::-;11766:74;;11849:93;11938:3;11849:93;:::i;:::-;11967:2;11962:3;11958:12;11951:19;;11610:366;;;:::o;11982:419::-;12148:4;12186:2;12175:9;12171:18;12163:26;;12235:9;12229:4;12225:20;12221:1;12210:9;12206:17;12199:47;12263:131;12389:4;12263:131;:::i;:::-;12255:139;;11982:419;;;:::o;12407:143::-;12464:5;12495:6;12489:13;12480:22;;12511:33;12538:5;12511:33;:::i;:::-;12407:143;;;;:::o;12556:351::-;12626:6;12675:2;12663:9;12654:7;12650:23;12646:32;12643:119;;;12681:79;;:::i;:::-;12643:119;12801:1;12826:64;12882:7;12873:6;12862:9;12858:22;12826:64;:::i;:::-;12816:74;;12772:128;12556:351;;;;:::o;12913:332::-;13034:4;13072:2;13061:9;13057:18;13049:26;;13085:71;13153:1;13142:9;13138:17;13129:6;13085:71;:::i;:::-;13166:72;13234:2;13223:9;13219:18;13210:6;13166:72;:::i;:::-;12913:332;;;;;:::o;13251:85::-;13296:7;13325:5;13314:16;;13251:85;;;:::o;13342:60::-;13370:3;13391:5;13384:12;;13342:60;;;:::o;13408:158::-;13466:9;13499:61;13517:42;13526:32;13552:5;13526:32;:::i;:::-;13517:42;:::i;:::-;13499:61;:::i;:::-;13486:74;;13408:158;;;:::o;13572:147::-;13667:45;13706:5;13667:45;:::i;:::-;13662:3;13655:58;13572:147;;:::o;13725:807::-;13974:4;14012:3;14001:9;13997:19;13989:27;;14026:71;14094:1;14083:9;14079:17;14070:6;14026:71;:::i;:::-;14107:72;14175:2;14164:9;14160:18;14151:6;14107:72;:::i;:::-;14189:80;14265:2;14254:9;14250:18;14241:6;14189:80;:::i;:::-;14279;14355:2;14344:9;14340:18;14331:6;14279:80;:::i;:::-;14369:73;14437:3;14426:9;14422:19;14413:6;14369:73;:::i;:::-;14452;14520:3;14509:9;14505:19;14496:6;14452:73;:::i;:::-;13725:807;;;;;;;;;:::o;14538:143::-;14595:5;14626:6;14620:13;14611:22;;14642:33;14669:5;14642:33;:::i;:::-;14538:143;;;;:::o;14687:663::-;14775:6;14783;14791;14840:2;14828:9;14819:7;14815:23;14811:32;14808:119;;;14846:79;;:::i;:::-;14808:119;14966:1;14991:64;15047:7;15038:6;15027:9;15023:22;14991:64;:::i;:::-;14981:74;;14937:128;15104:2;15130:64;15186:7;15177:6;15166:9;15162:22;15130:64;:::i;:::-;15120:74;;15075:129;15243:2;15269:64;15325:7;15316:6;15305:9;15301:22;15269:64;:::i;:::-;15259:74;;15214:129;14687:663;;;;;:::o;15356:332::-;15477:4;15515:2;15504:9;15500:18;15492:26;;15528:71;15596:1;15585:9;15581:17;15572:6;15528:71;:::i;:::-;15609:72;15677:2;15666:9;15662:18;15653:6;15609:72;:::i;:::-;15356:332;;;;;:::o;15694:137::-;15748:5;15779:6;15773:13;15764:22;;15795:30;15819:5;15795:30;:::i;:::-;15694:137;;;;:::o;15837:345::-;15904:6;15953:2;15941:9;15932:7;15928:23;15924:32;15921:119;;;15959:79;;:::i;:::-;15921:119;16079:1;16104:61;16157:7;16148:6;16137:9;16133:22;16104:61;:::i;:::-;16094:71;;16050:125;15837:345;;;;:::o;16188:179::-;16328:31;16324:1;16316:6;16312:14;16305:55;16188:179;:::o;16373:366::-;16515:3;16536:67;16600:2;16595:3;16536:67;:::i;:::-;16529:74;;16612:93;16701:3;16612:93;:::i;:::-;16730:2;16725:3;16721:12;16714:19;;16373:366;;;:::o;16745:419::-;16911:4;16949:2;16938:9;16934:18;16926:26;;16998:9;16992:4;16988:20;16984:1;16973:9;16969:17;16962:47;17026:131;17152:4;17026:131;:::i;:::-;17018:139;;16745:419;;;:::o;17170:223::-;17310:34;17306:1;17298:6;17294:14;17287:58;17379:6;17374:2;17366:6;17362:15;17355:31;17170:223;:::o;17399:366::-;17541:3;17562:67;17626:2;17621:3;17562:67;:::i;:::-;17555:74;;17638:93;17727:3;17638:93;:::i;:::-;17756:2;17751:3;17747:12;17740:19;;17399:366;;;:::o;17771:419::-;17937:4;17975:2;17964:9;17960:18;17952:26;;18024:9;18018:4;18014:20;18010:1;17999:9;17995:17;17988:47;18052:131;18178:4;18052:131;:::i;:::-;18044:139;;17771:419;;;:::o;18196:221::-;18336:34;18332:1;18324:6;18320:14;18313:58;18405:4;18400:2;18392:6;18388:15;18381:29;18196:221;:::o;18423:366::-;18565:3;18586:67;18650:2;18645:3;18586:67;:::i;:::-;18579:74;;18662:93;18751:3;18662:93;:::i;:::-;18780:2;18775:3;18771:12;18764:19;;18423:366;;;:::o;18795:419::-;18961:4;18999:2;18988:9;18984:18;18976:26;;19048:9;19042:4;19038:20;19034:1;19023:9;19019:17;19012:47;19076:131;19202:4;19076:131;:::i;:::-;19068:139;;18795:419;;;:::o;19220:224::-;19360:34;19356:1;19348:6;19344:14;19337:58;19429:7;19424:2;19416:6;19412:15;19405:32;19220:224;:::o;19450:366::-;19592:3;19613:67;19677:2;19672:3;19613:67;:::i;:::-;19606:74;;19689:93;19778:3;19689:93;:::i;:::-;19807:2;19802:3;19798:12;19791:19;;19450:366;;;:::o;19822:419::-;19988:4;20026:2;20015:9;20011:18;20003:26;;20075:9;20069:4;20065:20;20061:1;20050:9;20046:17;20039:47;20103:131;20229:4;20103:131;:::i;:::-;20095:139;;19822:419;;;:::o;20247:222::-;20387:34;20383:1;20375:6;20371:14;20364:58;20456:5;20451:2;20443:6;20439:15;20432:30;20247:222;:::o;20475:366::-;20617:3;20638:67;20702:2;20697:3;20638:67;:::i;:::-;20631:74;;20714:93;20803:3;20714:93;:::i;:::-;20832:2;20827:3;20823:12;20816:19;;20475:366;;;:::o;20847:419::-;21013:4;21051:2;21040:9;21036:18;21028:26;;21100:9;21094:4;21090:20;21086:1;21075:9;21071:17;21064:47;21128:131;21254:4;21128:131;:::i;:::-;21120:139;;20847:419;;;:::o;21272:228::-;21412:34;21408:1;21400:6;21396:14;21389:58;21481:11;21476:2;21468:6;21464:15;21457:36;21272:228;:::o;21506:366::-;21648:3;21669:67;21733:2;21728:3;21669:67;:::i;:::-;21662:74;;21745:93;21834:3;21745:93;:::i;:::-;21863:2;21858:3;21854:12;21847:19;;21506:366;;;:::o;21878:419::-;22044:4;22082:2;22071:9;22067:18;22059:26;;22131:9;22125:4;22121:20;22117:1;22106:9;22102:17;22095:47;22159:131;22285:4;22159:131;:::i;:::-;22151:139;;21878:419;;;:::o;22303:167::-;22443:19;22439:1;22431:6;22427:14;22420:43;22303:167;:::o;22476:366::-;22618:3;22639:67;22703:2;22698:3;22639:67;:::i;:::-;22632:74;;22715:93;22804:3;22715:93;:::i;:::-;22833:2;22828:3;22824:12;22817:19;;22476:366;;;:::o;22848:419::-;23014:4;23052:2;23041:9;23037:18;23029:26;;23101:9;23095:4;23091:20;23087:1;23076:9;23072:17;23065:47;23129:131;23255:4;23129:131;:::i;:::-;23121:139;;22848:419;;;:::o;23273:305::-;23313:3;23332:20;23350:1;23332:20;:::i;:::-;23327:25;;23366:20;23384:1;23366:20;:::i;:::-;23361:25;;23520:1;23452:66;23448:74;23445:1;23442:81;23439:107;;;23526:18;;:::i;:::-;23439:107;23570:1;23567;23563:9;23556:16;;23273:305;;;;:::o;23584:191::-;23624:4;23644:20;23662:1;23644:20;:::i;:::-;23639:25;;23678:20;23696:1;23678:20;:::i;:::-;23673:25;;23717:1;23714;23711:8;23708:34;;;23722:18;;:::i;:::-;23708:34;23767:1;23764;23760:9;23752:17;;23584:191;;;;:::o;23781:229::-;23921:34;23917:1;23909:6;23905:14;23898:58;23990:12;23985:2;23977:6;23973:15;23966:37;23781:229;:::o;24016:366::-;24158:3;24179:67;24243:2;24238:3;24179:67;:::i;:::-;24172:74;;24255:93;24344:3;24255:93;:::i;:::-;24373:2;24368:3;24364:12;24357:19;;24016:366;;;:::o;24388:419::-;24554:4;24592:2;24581:9;24577:18;24569:26;;24641:9;24635:4;24631:20;24627:1;24616:9;24612:17;24605:47;24669:131;24795:4;24669:131;:::i;:::-;24661:139;;24388:419;;;:::o;24813:114::-;24880:6;24914:5;24908:12;24898:22;;24813:114;;;:::o;24933:184::-;25032:11;25066:6;25061:3;25054:19;25106:4;25101:3;25097:14;25082:29;;24933:184;;;;:::o;25123:132::-;25190:4;25213:3;25205:11;;25243:4;25238:3;25234:14;25226:22;;25123:132;;;:::o;25261:108::-;25338:24;25356:5;25338:24;:::i;:::-;25333:3;25326:37;25261:108;;:::o;25375:179::-;25444:10;25465:46;25507:3;25499:6;25465:46;:::i;:::-;25543:4;25538:3;25534:14;25520:28;;25375:179;;;;:::o;25560:113::-;25630:4;25662;25657:3;25653:14;25645:22;;25560:113;;;:::o;25709:732::-;25828:3;25857:54;25905:5;25857:54;:::i;:::-;25927:86;26006:6;26001:3;25927:86;:::i;:::-;25920:93;;26037:56;26087:5;26037:56;:::i;:::-;26116:7;26147:1;26132:284;26157:6;26154:1;26151:13;26132:284;;;26233:6;26227:13;26260:63;26319:3;26304:13;26260:63;:::i;:::-;26253:70;;26346:60;26399:6;26346:60;:::i;:::-;26336:70;;26192:224;26179:1;26176;26172:9;26167:14;;26132:284;;;26136:14;26432:3;26425:10;;25833:608;;;25709:732;;;;:::o;26447:831::-;26710:4;26748:3;26737:9;26733:19;26725:27;;26762:71;26830:1;26819:9;26815:17;26806:6;26762:71;:::i;:::-;26843:80;26919:2;26908:9;26904:18;26895:6;26843:80;:::i;:::-;26970:9;26964:4;26960:20;26955:2;26944:9;26940:18;26933:48;26998:108;27101:4;27092:6;26998:108;:::i;:::-;26990:116;;27116:72;27184:2;27173:9;27169:18;27160:6;27116:72;:::i;:::-;27198:73;27266:3;27255:9;27251:19;27242:6;27198:73;:::i;:::-;26447:831;;;;;;;;:::o;27284:348::-;27324:7;27347:20;27365:1;27347:20;:::i;:::-;27342:25;;27381:20;27399:1;27381:20;:::i;:::-;27376:25;;27569:1;27501:66;27497:74;27494:1;27491:81;27486:1;27479:9;27472:17;27468:105;27465:131;;;27576:18;;:::i;:::-;27465:131;27624:1;27621;27617:9;27606:20;;27284:348;;;;:::o;27638:180::-;27686:77;27683:1;27676:88;27783:4;27780:1;27773:15;27807:4;27804:1;27797:15;27824:185;27864:1;27881:20;27899:1;27881:20;:::i;:::-;27876:25;;27915:20;27933:1;27915:20;:::i;:::-;27910:25;;27954:1;27944:35;;27959:18;;:::i;:::-;27944:35;28001:1;27998;27994:9;27989:14;;27824:185;;;;:::o;28015:220::-;28155:34;28151:1;28143:6;28139:14;28132:58;28224:3;28219:2;28211:6;28207:15;28200:28;28015:220;:::o;28241:366::-;28383:3;28404:67;28468:2;28463:3;28404:67;:::i;:::-;28397:74;;28480:93;28569:3;28480:93;:::i;:::-;28598:2;28593:3;28589:12;28582:19;;28241:366;;;:::o;28613:419::-;28779:4;28817:2;28806:9;28802:18;28794:26;;28866:9;28860:4;28856:20;28852:1;28841:9;28837:17;28830:47;28894:131;29020:4;28894:131;:::i;:::-;28886:139;;28613:419;;;:::o;29038:177::-;29178:29;29174:1;29166:6;29162:14;29155:53;29038:177;:::o;29221:366::-;29363:3;29384:67;29448:2;29443:3;29384:67;:::i;:::-;29377:74;;29460:93;29549:3;29460:93;:::i;:::-;29578:2;29573:3;29569:12;29562:19;;29221:366;;;:::o;29593:419::-;29759:4;29797:2;29786:9;29782:18;29774:26;;29846:9;29840:4;29836:20;29832:1;29821:9;29817:17;29810:47;29874:131;30000:4;29874:131;:::i;:::-;29866:139;;29593:419;;;:::o
Swarm Source
ipfs://108ba5030d1781ff6cefd73ebd86381a40ef05d0785c02bb0749759773a6314a
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.