ETH Price: $2,967.89 (-1.34%)
Gas: 3 Gwei

Token

Based Shiba (BASEDSHIBA)
 

Overview

Max Total Supply

100,000,000 BASEDSHIBA

Holders

14

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
409,046.807190471424678941 BASEDSHIBA

Value
$0.00
0x310e0565b3d000ca4bb4c81cb548f132a35a053d
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
BasedShiba

Compiler Version
v0.8.13+commit.abaa5c0e

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-04-01
*/

//SPDX-License-Identifier: None
// Telegram: t.me/basedshiba

pragma solidity ^0.8.9;


interface IUniswapV2Factory {
	function createPair(address tokenA, address tokenB) external returns (address pair);
}

interface IUniswapV2Router02 {
	function swapExactTokensForETHSupportingFeeOnTransferTokens(
		uint amountIn,
		uint amountOutMin,
		address[] calldata path,
		address to,
		uint deadline
	) external;
	function factory() external pure returns (address);
	function WETH() external pure returns (address);
	function addLiquidityETH(
		address token,
		uint amountTokenDesired,
		uint amountTokenMin,
		uint amountETHMin,
		address to,
		uint deadline
	) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

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);
	}

}


contract BasedShiba is Context, IERC20, Ownable {
	using SafeMath for uint256;
	mapping (address => uint256) private _balance;
	mapping (address => mapping (address => uint256)) private _allowances;
	mapping (address => bool) private _isExcludedFromFee;
	mapping (address => bool) private _bots;
	uint256 private _tTotal = 100000000 * 10**18;


	uint256 private _taxFee;
	address payable private _taxWallet;
	uint256 private _maxTxAmount;


	string private constant _name = "Based Shiba";
	string private constant _symbol = "BASEDSHIBA";
	uint8 private constant _decimals = 18;

	IUniswapV2Router02 private _uniswap;
	address private _pair;
	bool private _canTrade;
	bool private _inSwap = false;
	bool private _swapEnabled = false;

	modifier lockTheSwap {
		_inSwap = true;
		_;
		_inSwap = false;
	}
	constructor () {
		_taxWallet = payable(_msgSender());

		_taxFee = 12;
		_uniswap = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);

		_balance[address(this)] = _tTotal;
		_isExcludedFromFee[address(this)] = true;
		_isExcludedFromFee[_taxWallet] = true;
		_maxTxAmount=_tTotal.mul(15).div(1000);
		emit Transfer(address(0x0), _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 view override returns (uint256) {
		return _tTotal;
	}

	function balanceOf(address account) public view override returns (uint256) {
		return _balance[account];
	}

	function transfer(address recipient, uint256 amount) public override returns (bool) {
		_transfer(_msgSender(), recipient, amount);
		return true;
	}

	function allowance(address owner, address spender) public view override returns (uint256) {
		return _allowances[owner][spender];
	}

	function approve(address spender, uint256 amount) public override returns (bool) {
		_approve(_msgSender(), spender, amount);
		return true;
	}

	function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
		_transfer(sender, recipient, amount);
		_approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
		return true;
	}

	function _approve(address owner, address spender, uint256 amount) private {
		require(owner != address(0), "ERC20: approve from the zero address");
		require(spender != address(0), "ERC20: approve to the zero address");
		_allowances[owner][spender] = amount;
		emit Approval(owner, spender, amount);
	}

	function _transfer(address from, address to, uint256 amount) private {
		require(from != address(0), "ERC20: transfer from the zero address");
		require(to != address(0), "ERC20: transfer to the zero address");
		require(amount > 0, "Transfer amount must be greater than zero");

		if (from != owner() && to != owner()) {
			require(!_bots[from]&&!_bots[to],"Trading is prohibited for this address");

			if (from == _pair && to != address(_uniswap) && ! _isExcludedFromFee[to] ) {
				require(amount<=_maxTxAmount,"Transaction amount limited");
				require(_canTrade,"Trading is not enabled yet");
			}

			uint256 contractTokenBalance = balanceOf(address(this));
			if (!_inSwap && from != _pair && _swapEnabled) {
				swapTokensForEth(contractTokenBalance);
				uint256 contractETHBalance = address(this).balance;
				if(contractETHBalance >= 100000000000000000) {
					sendETHToFee(address(this).balance);
				}
			}
		}

		_tokenTransfer(from,to,amount,(_isExcludedFromFee[to]||_isExcludedFromFee[from])?0:_taxFee);
	}



	function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
		address[] memory path = new address[](2);
		path[0] = address(this);
		path[1] = _uniswap.WETH();
		_approve(address(this), address(_uniswap), tokenAmount);
		_uniswap.swapExactTokensForETHSupportingFeeOnTransferTokens(
			tokenAmount,
			0,
			path,
			address(this),
			block.timestamp
		);
	}


	function sendETHToFee(uint256 amount) private {
		_taxWallet.transfer(amount);
	}

	function createUniswapPair() external onlyOwner {
		_approve(address(this), address(_uniswap), _tTotal);
		_pair = IUniswapV2Factory(_uniswap.factory()).createPair(address(this), _uniswap.WETH());
		IERC20(_pair).approve(address(_uniswap), type(uint).max);
	}

	function addLiquidity() external onlyOwner{
		_uniswap.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
		_swapEnabled = true;

	}

	function enableTrading() external onlyOwner{
		_canTrade = true;
	}

	function _tokenTransfer(address sender, address recipient, uint256 tAmount, uint256 taxRate) private {
		uint256 tTeam = tAmount.mul(taxRate).div(100);
		uint256 tTransferAmount = tAmount.sub(tTeam);

		_balance[sender] = _balance[sender].sub(tAmount);
		_balance[recipient] = _balance[recipient].add(tTransferAmount);
		_balance[address(this)] = _balance[address(this)].add(tTeam);
		emit Transfer(sender, recipient, tTransferAmount);
	}

	receive() external payable {}

	function swapTax() external {
		uint256 contractBalance = balanceOf(address(this));
		swapTokensForEth(contractBalance);
	}

	function sendFee() external {
		uint256 contractETHBalance = address(this).balance;
		sendETHToFee(contractETHBalance);
	}

	function setBots(address[] memory bots_) public onlyOwner {
		for (uint256 i = 0; i < bots_.length; i++) {
			if(bots_[i]!=address(_uniswap) && bots_[i]!=address(_pair) &&bots_[i]!=address(this)){
				_bots[bots_[i]] = true;
			}
		}
	}

	function delBot(address notbot) public onlyOwner {
			_bots[notbot] = false;
	}
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"addLiquidity","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"createUniswapPair","outputs":[],"stateMutability":"nonpayable","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":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sendFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"setBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapTax","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":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526a52b7d2dcc80cd2e40000006006556000600b60156101000a81548160ff0219169083151502179055506000600b60166101000a81548160ff0219169083151502179055503480156200005657600080fd5b506000620000696200038960201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350620001176200038960201b60201c565b600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600c600781905550737a250d5630b4cf539739df2c5dacb4c659f2488d600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600654600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160046000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620003046103e8620002f0600f6006546200039160201b6200110e1790919060201c565b6200041460201b620011881790919060201c565b6009819055506200031a6200038960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6006546040516200037b9190620004e9565b60405180910390a36200075d565b600033905090565b6000808303620003a557600090506200040e565b60008284620003b5919062000535565b9050828482620003c69190620005c5565b1462000409576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620004009062000684565b60405180910390fd5b809150505b92915050565b60006200045e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506200046660201b60201c565b905092915050565b60008083118290620004b0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620004a7919062000739565b60405180910390fd5b5060008385620004c19190620005c5565b9050809150509392505050565b6000819050919050565b620004e381620004ce565b82525050565b6000602082019050620005006000830184620004d8565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006200054282620004ce565b91506200054f83620004ce565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156200058b576200058a62000506565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000620005d282620004ce565b9150620005df83620004ce565b925082620005f257620005f162000596565b5b828204905092915050565b600082825260208201905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b60006200066c602183620005fd565b915062000679826200060e565b604082019050919050565b600060208201905081810360008301526200069f816200065d565b9050919050565b600081519050919050565b60005b83811015620006d1578082015181840152602081019050620006b4565b83811115620006e1576000848401525b50505050565b6000601f19601f8301169050919050565b60006200070582620006a6565b620007118185620005fd565b935062000723818560208601620006b1565b6200072e81620006e7565b840191505092915050565b60006020820190508181036000830152620007558184620006f8565b905092915050565b612fbc806200076d6000396000f3fe60806040526004361061010d5760003560e01c80638a8c523c11610095578063ae39279f11610064578063ae39279f14610352578063b515566a14610369578063b78f7d6714610392578063dd62ed3e146103a9578063e8078d94146103e657610114565b80638a8c523c146102a85780638da5cb5b146102bf57806395d89b41146102ea578063a9059cbb1461031557610114565b8063273123b7116100dc578063273123b7146101e9578063313ce567146102125780634a1316721461023d57806370a0823114610254578063715018a61461029157610114565b806306fdde0314610119578063095ea7b31461014457806318160ddd1461018157806323b872dd146101ac57610114565b3661011457005b600080fd5b34801561012557600080fd5b5061012e6103fd565b60405161013b9190612097565b60405180910390f35b34801561015057600080fd5b5061016b60048036038101906101669190612161565b61043a565b60405161017891906121bc565b60405180910390f35b34801561018d57600080fd5b50610196610458565b6040516101a391906121e6565b60405180910390f35b3480156101b857600080fd5b506101d360048036038101906101ce9190612201565b610462565b6040516101e091906121bc565b60405180910390f35b3480156101f557600080fd5b50610210600480360381019061020b9190612254565b61053b565b005b34801561021e57600080fd5b5061022761062b565b604051610234919061229d565b60405180910390f35b34801561024957600080fd5b50610252610634565b005b34801561026057600080fd5b5061027b60048036038101906102769190612254565b6109bb565b60405161028891906121e6565b60405180910390f35b34801561029d57600080fd5b506102a6610a04565b005b3480156102b457600080fd5b506102bd610b57565b005b3480156102cb57600080fd5b506102d4610c09565b6040516102e191906122c7565b60405180910390f35b3480156102f657600080fd5b506102ff610c32565b60405161030c9190612097565b60405180910390f35b34801561032157600080fd5b5061033c60048036038101906103379190612161565b610c6f565b60405161034991906121bc565b60405180910390f35b34801561035e57600080fd5b50610367610c8d565b005b34801561037557600080fd5b50610390600480360381019061038b919061242a565b610c9e565b005b34801561039e57600080fd5b506103a7610f00565b005b3480156103b557600080fd5b506103d060048036038101906103cb9190612473565b610f19565b6040516103dd91906121e6565b60405180910390f35b3480156103f257600080fd5b506103fb610fa0565b005b60606040518060400160405280600b81526020017f4261736564205368696261000000000000000000000000000000000000000000815250905090565b600061044e6104476111d2565b84846111da565b6001905092915050565b6000600654905090565b600061046f8484846113a3565b6105308461047b6111d2565b61052b85604051806060016040528060288152602001612f5f60289139600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006104e16111d2565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461193d9092919063ffffffff16565b6111da565b600190509392505050565b6105436111d2565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146105d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105c7906124ff565b60405180910390fd5b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006012905090565b61063c6111d2565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106c0906124ff565b60405180910390fd5b6106f830600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166006546111da565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610765573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107899190612534565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610812573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108369190612534565b6040518363ffffffff1660e01b8152600401610853929190612561565b6020604051808303816000875af1158015610872573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108969190612534565b600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b815260040161097592919061258a565b6020604051808303816000875af1158015610994573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b891906125df565b50565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a0c6111d2565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a99576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a90906124ff565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610b5f6111d2565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610bec576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610be3906124ff565b60405180910390fd5b6001600b60146101000a81548160ff021916908315150217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600a81526020017f4241534544534849424100000000000000000000000000000000000000000000815250905090565b6000610c83610c7c6111d2565b84846113a3565b6001905092915050565b6000479050610c9b816119a1565b50565b610ca66111d2565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d33576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d2a906124ff565b60405180910390fd5b60005b8151811015610efc57600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16828281518110610d8b57610d8a61260c565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614158015610e1f5750600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16828281518110610dfe57610dfd61260c565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b8015610e7157503073ffffffffffffffffffffffffffffffffffffffff16828281518110610e5057610e4f61260c565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15610ee957600160056000848481518110610e8f57610e8e61260c565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b8080610ef49061266a565b915050610d36565b5050565b6000610f0b306109bb565b9050610f1681611a0d565b50565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610fa86111d2565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611035576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161102c906124ff565b60405180910390fd5b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719473061107e306109bb565b600080611089610c09565b426040518863ffffffff1660e01b81526004016110ab969594939291906126f7565b60606040518083038185885af11580156110c9573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906110ee919061276d565b5050506001600b60166101000a81548160ff021916908315150217905550565b60008083036111205760009050611182565b6000828461112e91906127c0565b905082848261113d9190612849565b1461117d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611174906128ec565b60405180910390fd5b809150505b92915050565b60006111ca83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c86565b905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611249576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112409061297e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036112b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112af90612a10565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161139691906121e6565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611412576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161140990612aa2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611481576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161147890612b34565b60405180910390fd5b600081116114c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114bb90612bc6565b60405180910390fd5b6114cc610c09565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561153a575061150a610c09565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561187d57600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156115e35750600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b611622576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161990612c58565b60405180910390fd5b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156116cd5750600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156117235750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156117bd5760095481111561176d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161176490612cc4565b60405180910390fd5b600b60149054906101000a900460ff166117bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117b390612d30565b60405180910390fd5b5b60006117c8306109bb565b9050600b60159054906101000a900460ff161580156118355750600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b801561184d5750600b60169054906101000a900460ff165b1561187b5761185b81611a0d565b600047905067016345785d8a0000811061187957611878476119a1565b5b505b505b611938838383600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806119245750600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b61193057600754611933565b60005b611ce9565b505050565b6000838311158290611985576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161197c9190612097565b60405180910390fd5b50600083856119949190612d50565b9050809150509392505050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611a09573d6000803e3d6000fd5b5050565b6001600b60156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611a4557611a446122e7565b5b604051908082528060200260200182016040528015611a735781602001602082028036833780820191505090505b5090503081600081518110611a8b57611a8a61260c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611b32573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b569190612534565b81600181518110611b6a57611b6961260c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611bd130600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846111da565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611c35959493929190612e42565b600060405180830381600087803b158015611c4f57600080fd5b505af1158015611c63573d6000803e3d6000fd5b50505050506000600b60156101000a81548160ff02191690831515021790555050565b60008083118290611ccd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cc49190612097565b60405180910390fd5b5060008385611cdc9190612849565b9050809150509392505050565b6000611d116064611d03848661110e90919063ffffffff16565b61118890919063ffffffff16565b90506000611d288285611f5690919063ffffffff16565b9050611d7c84600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f5690919063ffffffff16565b600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611e1181600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fa090919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ea682600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fa090919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611f4691906121e6565b60405180910390a3505050505050565b6000611f9883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061193d565b905092915050565b6000808284611faf9190612e9c565b905083811015611ff4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611feb90612f3e565b60405180910390fd5b8091505092915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561203857808201518184015260208101905061201d565b83811115612047576000848401525b50505050565b6000601f19601f8301169050919050565b600061206982611ffe565b6120738185612009565b935061208381856020860161201a565b61208c8161204d565b840191505092915050565b600060208201905081810360008301526120b1818461205e565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006120f8826120cd565b9050919050565b612108816120ed565b811461211357600080fd5b50565b600081359050612125816120ff565b92915050565b6000819050919050565b61213e8161212b565b811461214957600080fd5b50565b60008135905061215b81612135565b92915050565b60008060408385031215612178576121776120c3565b5b600061218685828601612116565b92505060206121978582860161214c565b9150509250929050565b60008115159050919050565b6121b6816121a1565b82525050565b60006020820190506121d160008301846121ad565b92915050565b6121e08161212b565b82525050565b60006020820190506121fb60008301846121d7565b92915050565b60008060006060848603121561221a576122196120c3565b5b600061222886828701612116565b935050602061223986828701612116565b925050604061224a8682870161214c565b9150509250925092565b60006020828403121561226a576122696120c3565b5b600061227884828501612116565b91505092915050565b600060ff82169050919050565b61229781612281565b82525050565b60006020820190506122b2600083018461228e565b92915050565b6122c1816120ed565b82525050565b60006020820190506122dc60008301846122b8565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61231f8261204d565b810181811067ffffffffffffffff8211171561233e5761233d6122e7565b5b80604052505050565b60006123516120b9565b905061235d8282612316565b919050565b600067ffffffffffffffff82111561237d5761237c6122e7565b5b602082029050602081019050919050565b600080fd5b60006123a66123a184612362565b612347565b905080838252602082019050602084028301858111156123c9576123c861238e565b5b835b818110156123f257806123de8882612116565b8452602084019350506020810190506123cb565b5050509392505050565b600082601f830112612411576124106122e2565b5b8135612421848260208601612393565b91505092915050565b6000602082840312156124405761243f6120c3565b5b600082013567ffffffffffffffff81111561245e5761245d6120c8565b5b61246a848285016123fc565b91505092915050565b6000806040838503121561248a576124896120c3565b5b600061249885828601612116565b92505060206124a985828601612116565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006124e9602083612009565b91506124f4826124b3565b602082019050919050565b60006020820190508181036000830152612518816124dc565b9050919050565b60008151905061252e816120ff565b92915050565b60006020828403121561254a576125496120c3565b5b60006125588482850161251f565b91505092915050565b600060408201905061257660008301856122b8565b61258360208301846122b8565b9392505050565b600060408201905061259f60008301856122b8565b6125ac60208301846121d7565b9392505050565b6125bc816121a1565b81146125c757600080fd5b50565b6000815190506125d9816125b3565b92915050565b6000602082840312156125f5576125f46120c3565b5b6000612603848285016125ca565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006126758261212b565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036126a7576126a661263b565b5b600182019050919050565b6000819050919050565b6000819050919050565b60006126e16126dc6126d7846126b2565b6126bc565b61212b565b9050919050565b6126f1816126c6565b82525050565b600060c08201905061270c60008301896122b8565b61271960208301886121d7565b61272660408301876126e8565b61273360608301866126e8565b61274060808301856122b8565b61274d60a08301846121d7565b979650505050505050565b60008151905061276781612135565b92915050565b600080600060608486031215612786576127856120c3565b5b600061279486828701612758565b93505060206127a586828701612758565b92505060406127b686828701612758565b9150509250925092565b60006127cb8261212b565b91506127d68361212b565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561280f5761280e61263b565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006128548261212b565b915061285f8361212b565b92508261286f5761286e61281a565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b60006128d6602183612009565b91506128e18261287a565b604082019050919050565b60006020820190508181036000830152612905816128c9565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612968602483612009565b91506129738261290c565b604082019050919050565b600060208201905081810360008301526129978161295b565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006129fa602283612009565b9150612a058261299e565b604082019050919050565b60006020820190508181036000830152612a29816129ed565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612a8c602583612009565b9150612a9782612a30565b604082019050919050565b60006020820190508181036000830152612abb81612a7f565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612b1e602383612009565b9150612b2982612ac2565b604082019050919050565b60006020820190508181036000830152612b4d81612b11565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612bb0602983612009565b9150612bbb82612b54565b604082019050919050565b60006020820190508181036000830152612bdf81612ba3565b9050919050565b7f54726164696e672069732070726f6869626974656420666f722074686973206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000612c42602683612009565b9150612c4d82612be6565b604082019050919050565b60006020820190508181036000830152612c7181612c35565b9050919050565b7f5472616e73616374696f6e20616d6f756e74206c696d69746564000000000000600082015250565b6000612cae601a83612009565b9150612cb982612c78565b602082019050919050565b60006020820190508181036000830152612cdd81612ca1565b9050919050565b7f54726164696e67206973206e6f7420656e61626c656420796574000000000000600082015250565b6000612d1a601a83612009565b9150612d2582612ce4565b602082019050919050565b60006020820190508181036000830152612d4981612d0d565b9050919050565b6000612d5b8261212b565b9150612d668361212b565b925082821015612d7957612d7861263b565b5b828203905092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612db9816120ed565b82525050565b6000612dcb8383612db0565b60208301905092915050565b6000602082019050919050565b6000612def82612d84565b612df98185612d8f565b9350612e0483612da0565b8060005b83811015612e35578151612e1c8882612dbf565b9750612e2783612dd7565b925050600181019050612e08565b5085935050505092915050565b600060a082019050612e5760008301886121d7565b612e6460208301876126e8565b8181036040830152612e768186612de4565b9050612e8560608301856122b8565b612e9260808301846121d7565b9695505050505050565b6000612ea78261212b565b9150612eb28361212b565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612ee757612ee661263b565b5b828201905092915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000612f28601b83612009565b9150612f3382612ef2565b602082019050919050565b60006020820190508181036000830152612f5781612f1b565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122064e989198eb385c16b5a3c49dc8b93db148b0ecc8d2c5aba38b7994cd1d4e83664736f6c634300080d0033

Deployed Bytecode

0x60806040526004361061010d5760003560e01c80638a8c523c11610095578063ae39279f11610064578063ae39279f14610352578063b515566a14610369578063b78f7d6714610392578063dd62ed3e146103a9578063e8078d94146103e657610114565b80638a8c523c146102a85780638da5cb5b146102bf57806395d89b41146102ea578063a9059cbb1461031557610114565b8063273123b7116100dc578063273123b7146101e9578063313ce567146102125780634a1316721461023d57806370a0823114610254578063715018a61461029157610114565b806306fdde0314610119578063095ea7b31461014457806318160ddd1461018157806323b872dd146101ac57610114565b3661011457005b600080fd5b34801561012557600080fd5b5061012e6103fd565b60405161013b9190612097565b60405180910390f35b34801561015057600080fd5b5061016b60048036038101906101669190612161565b61043a565b60405161017891906121bc565b60405180910390f35b34801561018d57600080fd5b50610196610458565b6040516101a391906121e6565b60405180910390f35b3480156101b857600080fd5b506101d360048036038101906101ce9190612201565b610462565b6040516101e091906121bc565b60405180910390f35b3480156101f557600080fd5b50610210600480360381019061020b9190612254565b61053b565b005b34801561021e57600080fd5b5061022761062b565b604051610234919061229d565b60405180910390f35b34801561024957600080fd5b50610252610634565b005b34801561026057600080fd5b5061027b60048036038101906102769190612254565b6109bb565b60405161028891906121e6565b60405180910390f35b34801561029d57600080fd5b506102a6610a04565b005b3480156102b457600080fd5b506102bd610b57565b005b3480156102cb57600080fd5b506102d4610c09565b6040516102e191906122c7565b60405180910390f35b3480156102f657600080fd5b506102ff610c32565b60405161030c9190612097565b60405180910390f35b34801561032157600080fd5b5061033c60048036038101906103379190612161565b610c6f565b60405161034991906121bc565b60405180910390f35b34801561035e57600080fd5b50610367610c8d565b005b34801561037557600080fd5b50610390600480360381019061038b919061242a565b610c9e565b005b34801561039e57600080fd5b506103a7610f00565b005b3480156103b557600080fd5b506103d060048036038101906103cb9190612473565b610f19565b6040516103dd91906121e6565b60405180910390f35b3480156103f257600080fd5b506103fb610fa0565b005b60606040518060400160405280600b81526020017f4261736564205368696261000000000000000000000000000000000000000000815250905090565b600061044e6104476111d2565b84846111da565b6001905092915050565b6000600654905090565b600061046f8484846113a3565b6105308461047b6111d2565b61052b85604051806060016040528060288152602001612f5f60289139600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006104e16111d2565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461193d9092919063ffffffff16565b6111da565b600190509392505050565b6105436111d2565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146105d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105c7906124ff565b60405180910390fd5b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006012905090565b61063c6111d2565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106c0906124ff565b60405180910390fd5b6106f830600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166006546111da565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610765573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107899190612534565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610812573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108369190612534565b6040518363ffffffff1660e01b8152600401610853929190612561565b6020604051808303816000875af1158015610872573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108969190612534565b600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b815260040161097592919061258a565b6020604051808303816000875af1158015610994573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b891906125df565b50565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a0c6111d2565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a99576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a90906124ff565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610b5f6111d2565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610bec576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610be3906124ff565b60405180910390fd5b6001600b60146101000a81548160ff021916908315150217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600a81526020017f4241534544534849424100000000000000000000000000000000000000000000815250905090565b6000610c83610c7c6111d2565b84846113a3565b6001905092915050565b6000479050610c9b816119a1565b50565b610ca66111d2565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d33576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d2a906124ff565b60405180910390fd5b60005b8151811015610efc57600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16828281518110610d8b57610d8a61260c565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614158015610e1f5750600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16828281518110610dfe57610dfd61260c565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b8015610e7157503073ffffffffffffffffffffffffffffffffffffffff16828281518110610e5057610e4f61260c565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15610ee957600160056000848481518110610e8f57610e8e61260c565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b8080610ef49061266a565b915050610d36565b5050565b6000610f0b306109bb565b9050610f1681611a0d565b50565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610fa86111d2565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611035576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161102c906124ff565b60405180910390fd5b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719473061107e306109bb565b600080611089610c09565b426040518863ffffffff1660e01b81526004016110ab969594939291906126f7565b60606040518083038185885af11580156110c9573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906110ee919061276d565b5050506001600b60166101000a81548160ff021916908315150217905550565b60008083036111205760009050611182565b6000828461112e91906127c0565b905082848261113d9190612849565b1461117d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611174906128ec565b60405180910390fd5b809150505b92915050565b60006111ca83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c86565b905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611249576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112409061297e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036112b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112af90612a10565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161139691906121e6565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611412576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161140990612aa2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611481576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161147890612b34565b60405180910390fd5b600081116114c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114bb90612bc6565b60405180910390fd5b6114cc610c09565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561153a575061150a610c09565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561187d57600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156115e35750600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b611622576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161990612c58565b60405180910390fd5b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156116cd5750600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156117235750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156117bd5760095481111561176d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161176490612cc4565b60405180910390fd5b600b60149054906101000a900460ff166117bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117b390612d30565b60405180910390fd5b5b60006117c8306109bb565b9050600b60159054906101000a900460ff161580156118355750600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b801561184d5750600b60169054906101000a900460ff165b1561187b5761185b81611a0d565b600047905067016345785d8a0000811061187957611878476119a1565b5b505b505b611938838383600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806119245750600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b61193057600754611933565b60005b611ce9565b505050565b6000838311158290611985576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161197c9190612097565b60405180910390fd5b50600083856119949190612d50565b9050809150509392505050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611a09573d6000803e3d6000fd5b5050565b6001600b60156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611a4557611a446122e7565b5b604051908082528060200260200182016040528015611a735781602001602082028036833780820191505090505b5090503081600081518110611a8b57611a8a61260c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611b32573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b569190612534565b81600181518110611b6a57611b6961260c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611bd130600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846111da565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611c35959493929190612e42565b600060405180830381600087803b158015611c4f57600080fd5b505af1158015611c63573d6000803e3d6000fd5b50505050506000600b60156101000a81548160ff02191690831515021790555050565b60008083118290611ccd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cc49190612097565b60405180910390fd5b5060008385611cdc9190612849565b9050809150509392505050565b6000611d116064611d03848661110e90919063ffffffff16565b61118890919063ffffffff16565b90506000611d288285611f5690919063ffffffff16565b9050611d7c84600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f5690919063ffffffff16565b600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611e1181600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fa090919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ea682600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fa090919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611f4691906121e6565b60405180910390a3505050505050565b6000611f9883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061193d565b905092915050565b6000808284611faf9190612e9c565b905083811015611ff4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611feb90612f3e565b60405180910390fd5b8091505092915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561203857808201518184015260208101905061201d565b83811115612047576000848401525b50505050565b6000601f19601f8301169050919050565b600061206982611ffe565b6120738185612009565b935061208381856020860161201a565b61208c8161204d565b840191505092915050565b600060208201905081810360008301526120b1818461205e565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006120f8826120cd565b9050919050565b612108816120ed565b811461211357600080fd5b50565b600081359050612125816120ff565b92915050565b6000819050919050565b61213e8161212b565b811461214957600080fd5b50565b60008135905061215b81612135565b92915050565b60008060408385031215612178576121776120c3565b5b600061218685828601612116565b92505060206121978582860161214c565b9150509250929050565b60008115159050919050565b6121b6816121a1565b82525050565b60006020820190506121d160008301846121ad565b92915050565b6121e08161212b565b82525050565b60006020820190506121fb60008301846121d7565b92915050565b60008060006060848603121561221a576122196120c3565b5b600061222886828701612116565b935050602061223986828701612116565b925050604061224a8682870161214c565b9150509250925092565b60006020828403121561226a576122696120c3565b5b600061227884828501612116565b91505092915050565b600060ff82169050919050565b61229781612281565b82525050565b60006020820190506122b2600083018461228e565b92915050565b6122c1816120ed565b82525050565b60006020820190506122dc60008301846122b8565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61231f8261204d565b810181811067ffffffffffffffff8211171561233e5761233d6122e7565b5b80604052505050565b60006123516120b9565b905061235d8282612316565b919050565b600067ffffffffffffffff82111561237d5761237c6122e7565b5b602082029050602081019050919050565b600080fd5b60006123a66123a184612362565b612347565b905080838252602082019050602084028301858111156123c9576123c861238e565b5b835b818110156123f257806123de8882612116565b8452602084019350506020810190506123cb565b5050509392505050565b600082601f830112612411576124106122e2565b5b8135612421848260208601612393565b91505092915050565b6000602082840312156124405761243f6120c3565b5b600082013567ffffffffffffffff81111561245e5761245d6120c8565b5b61246a848285016123fc565b91505092915050565b6000806040838503121561248a576124896120c3565b5b600061249885828601612116565b92505060206124a985828601612116565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006124e9602083612009565b91506124f4826124b3565b602082019050919050565b60006020820190508181036000830152612518816124dc565b9050919050565b60008151905061252e816120ff565b92915050565b60006020828403121561254a576125496120c3565b5b60006125588482850161251f565b91505092915050565b600060408201905061257660008301856122b8565b61258360208301846122b8565b9392505050565b600060408201905061259f60008301856122b8565b6125ac60208301846121d7565b9392505050565b6125bc816121a1565b81146125c757600080fd5b50565b6000815190506125d9816125b3565b92915050565b6000602082840312156125f5576125f46120c3565b5b6000612603848285016125ca565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006126758261212b565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036126a7576126a661263b565b5b600182019050919050565b6000819050919050565b6000819050919050565b60006126e16126dc6126d7846126b2565b6126bc565b61212b565b9050919050565b6126f1816126c6565b82525050565b600060c08201905061270c60008301896122b8565b61271960208301886121d7565b61272660408301876126e8565b61273360608301866126e8565b61274060808301856122b8565b61274d60a08301846121d7565b979650505050505050565b60008151905061276781612135565b92915050565b600080600060608486031215612786576127856120c3565b5b600061279486828701612758565b93505060206127a586828701612758565b92505060406127b686828701612758565b9150509250925092565b60006127cb8261212b565b91506127d68361212b565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561280f5761280e61263b565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006128548261212b565b915061285f8361212b565b92508261286f5761286e61281a565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b60006128d6602183612009565b91506128e18261287a565b604082019050919050565b60006020820190508181036000830152612905816128c9565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612968602483612009565b91506129738261290c565b604082019050919050565b600060208201905081810360008301526129978161295b565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006129fa602283612009565b9150612a058261299e565b604082019050919050565b60006020820190508181036000830152612a29816129ed565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612a8c602583612009565b9150612a9782612a30565b604082019050919050565b60006020820190508181036000830152612abb81612a7f565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612b1e602383612009565b9150612b2982612ac2565b604082019050919050565b60006020820190508181036000830152612b4d81612b11565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612bb0602983612009565b9150612bbb82612b54565b604082019050919050565b60006020820190508181036000830152612bdf81612ba3565b9050919050565b7f54726164696e672069732070726f6869626974656420666f722074686973206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000612c42602683612009565b9150612c4d82612be6565b604082019050919050565b60006020820190508181036000830152612c7181612c35565b9050919050565b7f5472616e73616374696f6e20616d6f756e74206c696d69746564000000000000600082015250565b6000612cae601a83612009565b9150612cb982612c78565b602082019050919050565b60006020820190508181036000830152612cdd81612ca1565b9050919050565b7f54726164696e67206973206e6f7420656e61626c656420796574000000000000600082015250565b6000612d1a601a83612009565b9150612d2582612ce4565b602082019050919050565b60006020820190508181036000830152612d4981612d0d565b9050919050565b6000612d5b8261212b565b9150612d668361212b565b925082821015612d7957612d7861263b565b5b828203905092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612db9816120ed565b82525050565b6000612dcb8383612db0565b60208301905092915050565b6000602082019050919050565b6000612def82612d84565b612df98185612d8f565b9350612e0483612da0565b8060005b83811015612e35578151612e1c8882612dbf565b9750612e2783612dd7565b925050600181019050612e08565b5085935050505092915050565b600060a082019050612e5760008301886121d7565b612e6460208301876126e8565b8181036040830152612e768186612de4565b9050612e8560608301856122b8565b612e9260808301846121d7565b9695505050505050565b6000612ea78261212b565b9150612eb28361212b565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612ee757612ee661263b565b5b828201905092915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000612f28601b83612009565b9150612f3382612ef2565b602082019050919050565b60006020820190508181036000830152612f5781612f1b565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122064e989198eb385c16b5a3c49dc8b93db148b0ecc8d2c5aba38b7994cd1d4e83664736f6c634300080d0033

Deployed Bytecode Sourcemap

3199:5875:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4418:74;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5160:146;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4659:86;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5311:292;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8990:81;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4580:74;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7450:263;;;;;;;;;;;;;:::i;:::-;;4750:109;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3055:133;;;;;;;;;;;;;:::i;:::-;;7923:69;;;;;;;;;;;;;:::i;:::-;;2871:70;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4497:78;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4864:152;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8613:125;;;;;;;;;;;;;:::i;:::-;;8743:242;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8482:126;;;;;;;;;;;;;:::i;:::-;;5021:134;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7718:200;;;;;;;;;;;;;:::i;:::-;;4418:74;4455:13;4482:5;;;;;;;;;;;;;;;;;4475:12;;4418:74;:::o;5160:146::-;5235:4;5246:39;5255:12;:10;:12::i;:::-;5269:7;5278:6;5246:8;:39::i;:::-;5297:4;5290:11;;5160:146;;;;:::o;4659:86::-;4712:7;4733;;4726:14;;4659:86;:::o;5311:292::-;5409:4;5420:36;5430:6;5438:9;5449:6;5420:9;:36::i;:::-;5461:121;5470:6;5478:12;:10;:12::i;:::-;5492:89;5530:6;5492:89;;;;;;;;;;;;;;;;;:11;:19;5504:6;5492:19;;;;;;;;;;;;;;;:33;5512:12;:10;:12::i;:::-;5492:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;5461:8;:121::i;:::-;5594:4;5587:11;;5311:292;;;;;:::o;8990:81::-;2990:12;:10;:12::i;:::-;2980:22;;:6;;;;;;;;;;:22;;;2972:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9061:5:::1;9045;:13;9051:6;9045:13;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;8990:81:::0;:::o;4580:74::-;4621:5;3789:2;4633:16;;4580:74;:::o;7450:263::-;2990:12;:10;:12::i;:::-;2980:22;;:6;;;;;;;;;;:22;;;2972:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;7503:51:::1;7520:4;7535:8;;;;;;;;;;;7546:7;;7503:8;:51::i;:::-;7585:8;;;;;;;;;;;:16;;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7567:48;;;7624:4;7631:8;;;;;;;;;;;:13;;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7567:80;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7559:5;;:88;;;;;;;;;;;;;;;;;;7659:5;;;;;;;;;;;7652:21;;;7682:8;;;;;;;;;;;7693:14;7652:56;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;7450:263::o:0;4750:109::-;4816:7;4837:8;:17;4846:7;4837:17;;;;;;;;;;;;;;;;4830:24;;4750:109;;;:::o;3055:133::-;2990:12;:10;:12::i;:::-;2980:22;;:6;;;;;;;;;;:22;;;2972:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3156:1:::1;3119:40;;3140:6;::::0;::::1;;;;;;;;3119:40;;;;;;;;;;;;3181:1;3164:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;3055:133::o:0;7923:69::-;2990:12;:10;:12::i;:::-;2980:22;;:6;;;;;;;;;;:22;;;2972:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;7983:4:::1;7971:9;;:16;;;;;;;;;;;;;;;;;;7923:69::o:0;2871:70::-;2909:7;2930:6;;;;;;;;;;;2923:13;;2871:70;:::o;4497:78::-;4536:13;4563:7;;;;;;;;;;;;;;;;;4556:14;;4497:78;:::o;4864:152::-;4942:4;4953:42;4963:12;:10;:12::i;:::-;4977:9;4988:6;4953:9;:42::i;:::-;5007:4;5000:11;;4864:152;;;;:::o;8613:125::-;8646:26;8675:21;8646:50;;8701:32;8714:18;8701:12;:32::i;:::-;8641:97;8613:125::o;8743:242::-;2990:12;:10;:12::i;:::-;2980:22;;:6;;;;;;;;;;:22;;;2972:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;8811:9:::1;8806:175;8830:5;:12;8826:1;:16;8806:175;;;8876:8;;;;;;;;;;;8858:27;;:5;8864:1;8858:8;;;;;;;;:::i;:::-;;;;;;;;:27;;;;:55;;;;;8907:5;;;;;;;;;;;8889:24;;:5;8895:1;8889:8;;;;;;;;:::i;:::-;;;;;;;;:24;;;;8858:55;:81;;;;;8934:4;8916:23;;:5;8922:1;8916:8;;;;;;;;:::i;:::-;;;;;;;;:23;;;;8858:81;8855:121;;;8965:4;8947:5;:15;8953:5;8959:1;8953:8;;;;;;;;:::i;:::-;;;;;;;;8947:15;;;;;;;;;;;;;;;;:22;;;;;;;;;;;;;;;;;;8855:121;8844:3;;;;;:::i;:::-;;;;8806:175;;;;8743:242:::0;:::o;8482:126::-;8515:23;8541:24;8559:4;8541:9;:24::i;:::-;8515:50;;8570:33;8587:15;8570:16;:33::i;:::-;8510:98;8482:126::o;5021:134::-;5102:7;5123:11;:18;5135:5;5123:18;;;;;;;;;;;;;;;:27;5142:7;5123:27;;;;;;;;;;;;;;;;5116:34;;5021:134;;;;:::o;7718:200::-;2990:12;:10;:12::i;:::-;2980:22;;:6;;;;;;;;;;:22;;;2972:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;7765:8:::1;;;;;;;;;;;:24;;;7797:21;7828:4;7834:24;7852:4;7834:9;:24::i;:::-;7859:1;7861::::0;7863:7:::1;:5;:7::i;:::-;7871:15;7765:122;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;7907:4;7892:12;;:19;;;;;;;;;;;;;;;;;;7718:200::o:0;2038:204::-;2096:7;2119:1;2114;:6;2110:32;;2135:1;2128:8;;;;2110:32;2146:9;2162:1;2158;:5;;;;:::i;:::-;2146:17;;2185:1;2180;2176;:5;;;;:::i;:::-;:10;2168:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2236:1;2229:8;;;2038:204;;;;;:::o;2247:123::-;2305:7;2326:39;2330:1;2333;2326:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2319:46;;2247:123;;;;:::o;799:89::-;852:7;873:10;866:17;;799:89;:::o;5608:308::-;5712:1;5695:19;;:5;:19;;;5687:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5787:1;5768:21;;:7;:21;;;5760:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5863:6;5833:11;:18;5845:5;5833:18;;;;;;;;;;;;;;;:27;5852:7;5833:27;;;;;;;;;;;;;;;:36;;;;5895:7;5879:32;;5888:5;5879:32;;;5904:6;5879:32;;;;;;:::i;:::-;;;;;;;;5608:308;;;:::o;5921:1047::-;6019:1;6003:18;;:4;:18;;;5995:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6090:1;6076:16;;:2;:16;;;6068:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;6154:1;6145:6;:10;6137:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;6220:7;:5;:7::i;:::-;6212:15;;:4;:15;;;;:32;;;;;6237:7;:5;:7::i;:::-;6231:13;;:2;:13;;;;6212:32;6208:658;;;6261:5;:11;6267:4;6261:11;;;;;;;;;;;;;;;;;;;;;;;;;6260:12;:24;;;;;6275:5;:9;6281:2;6275:9;;;;;;;;;;;;;;;;;;;;;;;;;6274:10;6260:24;6252:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;6346:5;;;;;;;;;;;6338:13;;:4;:13;;;:40;;;;;6369:8;;;;;;;;;;;6355:23;;:2;:23;;;;6338:40;:68;;;;;6384:18;:22;6403:2;6384:22;;;;;;;;;;;;;;;;;;;;;;;;;6382:24;6338:68;6334:201;;;6432:12;;6424:6;:20;;6416:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;6489:9;;;;;;;;;;;6481:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;6334:201;6542:28;6573:24;6591:4;6573:9;:24::i;:::-;6542:55;;6608:7;;;;;;;;;;;6607:8;:25;;;;;6627:5;;;;;;;;;;;6619:13;;:4;:13;;;;6607:25;:41;;;;;6636:12;;;;;;;;;;;6607:41;6603:258;;;6657:38;6674:20;6657:16;:38::i;:::-;6702:26;6731:21;6702:50;;6784:18;6762;:40;6759:96;;6812:35;6825:21;6812:12;:35::i;:::-;6759:96;6650:211;6603:258;6246:620;6208:658;6872:91;6887:4;6892:2;6895:6;6903:18;:22;6922:2;6903:22;;;;;;;;;;;;;;;;;;;;;;;;;:48;;;;6927:18;:24;6946:4;6927:24;;;;;;;;;;;;;;;;;;;;;;;;;6903:48;6902:60;;6955:7;;6902:60;;;6953:1;6902:60;6872:14;:91::i;:::-;5921:1047;;;:::o;1864:169::-;1950:7;1977:1;1972;:6;;1980:12;1964:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1998:9;2014:1;2010;:5;;;;:::i;:::-;1998:17;;2027:1;2020:8;;;1864:169;;;;;:::o;7362:83::-;7413:10;;;;;;;;;;;:19;;:27;7433:6;7413:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7362:83;:::o;6977:378::-;3994:4;3984:7;;:14;;;;;;;;;;;;;;;;;;7049:21:::1;7087:1;7073:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7049:40;;7112:4;7094;7099:1;7094:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;7132:8;;;;;;;;;;;:13;;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7122:4;7127:1;7122:7;;;;;;;;:::i;:::-;;;;;;;:25;;;;;;;;;::::0;::::1;7152:55;7169:4;7184:8;;;;;;;;;;;7195:11;7152:8;:55::i;:::-;7212:8;;;;;;;;;;;:59;;;7277:11;7294:1;7301:4;7319;7330:15;7212:138;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;7044:311;4019:5:::0;4009:7;;:15;;;;;;;;;;;;;;;;;;6977:378;:::o;2375:168::-;2461:7;2487:1;2483;:5;2490:12;2475:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2508:9;2524:1;2520;:5;;;;:::i;:::-;2508:17;;2537:1;2530:8;;;2375:168;;;;;:::o;7997:446::-;8103:13;8119:29;8144:3;8119:20;8131:7;8119;:11;;:20;;;;:::i;:::-;:24;;:29;;;;:::i;:::-;8103:45;;8153:23;8179:18;8191:5;8179:7;:11;;:18;;;;:::i;:::-;8153:44;;8223:29;8244:7;8223:8;:16;8232:6;8223:16;;;;;;;;;;;;;;;;:20;;:29;;;;:::i;:::-;8204:8;:16;8213:6;8204:16;;;;;;;;;;;;;;;:48;;;;8279:40;8303:15;8279:8;:19;8288:9;8279:19;;;;;;;;;;;;;;;;:23;;:40;;;;:::i;:::-;8257:8;:19;8266:9;8257:19;;;;;;;;;;;;;;;:62;;;;8350:34;8378:5;8350:8;:23;8367:4;8350:23;;;;;;;;;;;;;;;;:27;;:34;;;;:::i;:::-;8324:8;:23;8341:4;8324:23;;;;;;;;;;;;;;;:60;;;;8411:9;8394:44;;8403:6;8394:44;;;8422:15;8394:44;;;;;;:::i;:::-;;;;;;;;8098:345;;7997:446;;;;:::o;1732:127::-;1790:7;1811:43;1815:1;1818;1811:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1804:50;;1732:127;;;;:::o;1569:158::-;1627:7;1641:9;1657:1;1653;:5;;;;:::i;:::-;1641:17;;1676:1;1671;:6;;1663:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1721:1;1714:8;;;1569:158;;;;:::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:118::-;5323:24;5341:5;5323:24;:::i;:::-;5318:3;5311:37;5236:118;;:::o;5360:222::-;5453:4;5491:2;5480:9;5476:18;5468:26;;5504:71;5572:1;5561:9;5557:17;5548:6;5504:71;:::i;:::-;5360:222;;;;:::o;5588:117::-;5697:1;5694;5687:12;5711:180;5759:77;5756:1;5749:88;5856:4;5853:1;5846:15;5880:4;5877:1;5870:15;5897:281;5980:27;6002:4;5980:27;:::i;:::-;5972:6;5968:40;6110:6;6098:10;6095:22;6074:18;6062:10;6059:34;6056:62;6053:88;;;6121:18;;:::i;:::-;6053:88;6161:10;6157:2;6150:22;5940:238;5897:281;;:::o;6184:129::-;6218:6;6245:20;;:::i;:::-;6235:30;;6274:33;6302:4;6294:6;6274:33;:::i;:::-;6184:129;;;:::o;6319:311::-;6396:4;6486:18;6478:6;6475:30;6472:56;;;6508:18;;:::i;:::-;6472:56;6558:4;6550:6;6546:17;6538:25;;6618:4;6612;6608:15;6600:23;;6319:311;;;:::o;6636:117::-;6745:1;6742;6735:12;6776:710;6872:5;6897:81;6913:64;6970:6;6913:64;:::i;:::-;6897:81;:::i;:::-;6888:90;;6998:5;7027:6;7020:5;7013:21;7061:4;7054:5;7050:16;7043:23;;7114:4;7106:6;7102:17;7094:6;7090:30;7143:3;7135:6;7132:15;7129:122;;;7162:79;;:::i;:::-;7129:122;7277:6;7260:220;7294:6;7289:3;7286:15;7260:220;;;7369:3;7398:37;7431:3;7419:10;7398:37;:::i;:::-;7393:3;7386:50;7465:4;7460:3;7456:14;7449:21;;7336:144;7320:4;7315:3;7311:14;7304:21;;7260:220;;;7264:21;6878:608;;6776:710;;;;;:::o;7509:370::-;7580:5;7629:3;7622:4;7614:6;7610:17;7606:27;7596:122;;7637:79;;:::i;:::-;7596:122;7754:6;7741:20;7779:94;7869:3;7861:6;7854:4;7846:6;7842:17;7779:94;:::i;:::-;7770:103;;7586:293;7509:370;;;;:::o;7885:539::-;7969:6;8018:2;8006:9;7997:7;7993:23;7989:32;7986:119;;;8024:79;;:::i;:::-;7986:119;8172:1;8161:9;8157:17;8144:31;8202:18;8194:6;8191:30;8188:117;;;8224:79;;:::i;:::-;8188:117;8329:78;8399:7;8390:6;8379:9;8375:22;8329:78;:::i;:::-;8319:88;;8115:302;7885:539;;;;:::o;8430:474::-;8498:6;8506;8555:2;8543:9;8534:7;8530:23;8526:32;8523:119;;;8561:79;;:::i;:::-;8523:119;8681:1;8706:53;8751:7;8742:6;8731:9;8727:22;8706:53;:::i;:::-;8696:63;;8652:117;8808:2;8834:53;8879:7;8870:6;8859:9;8855:22;8834:53;:::i;:::-;8824:63;;8779:118;8430:474;;;;;:::o;8910:182::-;9050:34;9046:1;9038:6;9034:14;9027:58;8910:182;:::o;9098:366::-;9240:3;9261:67;9325:2;9320:3;9261:67;:::i;:::-;9254:74;;9337:93;9426:3;9337:93;:::i;:::-;9455:2;9450:3;9446:12;9439:19;;9098:366;;;:::o;9470:419::-;9636:4;9674:2;9663:9;9659:18;9651:26;;9723:9;9717:4;9713:20;9709:1;9698:9;9694:17;9687:47;9751:131;9877:4;9751:131;:::i;:::-;9743:139;;9470:419;;;:::o;9895:143::-;9952:5;9983:6;9977:13;9968:22;;9999:33;10026:5;9999:33;:::i;:::-;9895:143;;;;:::o;10044:351::-;10114:6;10163:2;10151:9;10142:7;10138:23;10134:32;10131:119;;;10169:79;;:::i;:::-;10131:119;10289:1;10314:64;10370:7;10361:6;10350:9;10346:22;10314:64;:::i;:::-;10304:74;;10260:128;10044:351;;;;:::o;10401:332::-;10522:4;10560:2;10549:9;10545:18;10537:26;;10573:71;10641:1;10630:9;10626:17;10617:6;10573:71;:::i;:::-;10654:72;10722:2;10711:9;10707:18;10698:6;10654:72;:::i;:::-;10401:332;;;;;:::o;10739:::-;10860:4;10898:2;10887:9;10883:18;10875:26;;10911:71;10979:1;10968:9;10964:17;10955:6;10911:71;:::i;:::-;10992:72;11060:2;11049:9;11045:18;11036:6;10992:72;:::i;:::-;10739:332;;;;;:::o;11077:116::-;11147:21;11162:5;11147:21;:::i;:::-;11140:5;11137:32;11127:60;;11183:1;11180;11173:12;11127:60;11077:116;:::o;11199:137::-;11253:5;11284:6;11278:13;11269:22;;11300:30;11324:5;11300:30;:::i;:::-;11199:137;;;;:::o;11342:345::-;11409:6;11458:2;11446:9;11437:7;11433:23;11429:32;11426:119;;;11464:79;;:::i;:::-;11426:119;11584:1;11609:61;11662:7;11653:6;11642:9;11638:22;11609:61;:::i;:::-;11599:71;;11555:125;11342:345;;;;:::o;11693:180::-;11741:77;11738:1;11731:88;11838:4;11835:1;11828:15;11862:4;11859:1;11852:15;11879:180;11927:77;11924:1;11917:88;12024:4;12021:1;12014:15;12048:4;12045:1;12038:15;12065:233;12104:3;12127:24;12145:5;12127:24;:::i;:::-;12118:33;;12173:66;12166:5;12163:77;12160:103;;12243:18;;:::i;:::-;12160:103;12290:1;12283:5;12279:13;12272:20;;12065:233;;;:::o;12304:85::-;12349:7;12378:5;12367:16;;12304:85;;;:::o;12395:60::-;12423:3;12444:5;12437:12;;12395:60;;;:::o;12461:158::-;12519:9;12552:61;12570:42;12579:32;12605:5;12579:32;:::i;:::-;12570:42;:::i;:::-;12552:61;:::i;:::-;12539:74;;12461:158;;;:::o;12625:147::-;12720:45;12759:5;12720:45;:::i;:::-;12715:3;12708:58;12625:147;;:::o;12778:807::-;13027:4;13065:3;13054:9;13050:19;13042:27;;13079:71;13147:1;13136:9;13132:17;13123:6;13079:71;:::i;:::-;13160:72;13228:2;13217:9;13213:18;13204:6;13160:72;:::i;:::-;13242:80;13318:2;13307:9;13303:18;13294:6;13242:80;:::i;:::-;13332;13408:2;13397:9;13393:18;13384:6;13332:80;:::i;:::-;13422:73;13490:3;13479:9;13475:19;13466:6;13422:73;:::i;:::-;13505;13573:3;13562:9;13558:19;13549:6;13505:73;:::i;:::-;12778:807;;;;;;;;;:::o;13591:143::-;13648:5;13679:6;13673:13;13664:22;;13695:33;13722:5;13695:33;:::i;:::-;13591:143;;;;:::o;13740:663::-;13828:6;13836;13844;13893:2;13881:9;13872:7;13868:23;13864:32;13861:119;;;13899:79;;:::i;:::-;13861:119;14019:1;14044:64;14100:7;14091:6;14080:9;14076:22;14044:64;:::i;:::-;14034:74;;13990:128;14157:2;14183:64;14239:7;14230:6;14219:9;14215:22;14183:64;:::i;:::-;14173:74;;14128:129;14296:2;14322:64;14378:7;14369:6;14358:9;14354:22;14322:64;:::i;:::-;14312:74;;14267:129;13740:663;;;;;:::o;14409:348::-;14449:7;14472:20;14490:1;14472:20;:::i;:::-;14467:25;;14506:20;14524:1;14506:20;:::i;:::-;14501:25;;14694:1;14626:66;14622:74;14619:1;14616:81;14611:1;14604:9;14597:17;14593:105;14590:131;;;14701:18;;:::i;:::-;14590:131;14749:1;14746;14742:9;14731:20;;14409:348;;;;:::o;14763:180::-;14811:77;14808:1;14801:88;14908:4;14905:1;14898:15;14932:4;14929:1;14922:15;14949:185;14989:1;15006:20;15024:1;15006:20;:::i;:::-;15001:25;;15040:20;15058:1;15040:20;:::i;:::-;15035:25;;15079:1;15069:35;;15084:18;;:::i;:::-;15069:35;15126:1;15123;15119:9;15114:14;;14949:185;;;;:::o;15140:220::-;15280:34;15276:1;15268:6;15264:14;15257:58;15349:3;15344:2;15336:6;15332:15;15325:28;15140:220;:::o;15366:366::-;15508:3;15529:67;15593:2;15588:3;15529:67;:::i;:::-;15522:74;;15605:93;15694:3;15605:93;:::i;:::-;15723:2;15718:3;15714:12;15707:19;;15366:366;;;:::o;15738:419::-;15904:4;15942:2;15931:9;15927:18;15919:26;;15991:9;15985:4;15981:20;15977:1;15966:9;15962:17;15955:47;16019:131;16145:4;16019:131;:::i;:::-;16011:139;;15738:419;;;:::o;16163:223::-;16303:34;16299:1;16291:6;16287:14;16280:58;16372:6;16367:2;16359:6;16355:15;16348:31;16163:223;:::o;16392:366::-;16534:3;16555:67;16619:2;16614:3;16555:67;:::i;:::-;16548:74;;16631:93;16720:3;16631:93;:::i;:::-;16749:2;16744:3;16740:12;16733:19;;16392:366;;;:::o;16764:419::-;16930:4;16968:2;16957:9;16953:18;16945:26;;17017:9;17011:4;17007:20;17003:1;16992:9;16988:17;16981:47;17045:131;17171:4;17045:131;:::i;:::-;17037:139;;16764:419;;;:::o;17189:221::-;17329:34;17325:1;17317:6;17313:14;17306:58;17398:4;17393:2;17385:6;17381:15;17374:29;17189:221;:::o;17416:366::-;17558:3;17579:67;17643:2;17638:3;17579:67;:::i;:::-;17572:74;;17655:93;17744:3;17655:93;:::i;:::-;17773:2;17768:3;17764:12;17757:19;;17416:366;;;:::o;17788:419::-;17954:4;17992:2;17981:9;17977:18;17969:26;;18041:9;18035:4;18031:20;18027:1;18016:9;18012:17;18005:47;18069:131;18195:4;18069:131;:::i;:::-;18061:139;;17788:419;;;:::o;18213:224::-;18353:34;18349:1;18341:6;18337:14;18330:58;18422:7;18417:2;18409:6;18405:15;18398:32;18213:224;:::o;18443:366::-;18585:3;18606:67;18670:2;18665:3;18606:67;:::i;:::-;18599:74;;18682:93;18771:3;18682:93;:::i;:::-;18800:2;18795:3;18791:12;18784:19;;18443:366;;;:::o;18815:419::-;18981:4;19019:2;19008:9;19004:18;18996:26;;19068:9;19062:4;19058:20;19054:1;19043:9;19039:17;19032:47;19096:131;19222:4;19096:131;:::i;:::-;19088:139;;18815:419;;;:::o;19240:222::-;19380:34;19376:1;19368:6;19364:14;19357:58;19449:5;19444:2;19436:6;19432:15;19425:30;19240:222;:::o;19468:366::-;19610:3;19631:67;19695:2;19690:3;19631:67;:::i;:::-;19624:74;;19707:93;19796:3;19707:93;:::i;:::-;19825:2;19820:3;19816:12;19809:19;;19468:366;;;:::o;19840:419::-;20006:4;20044:2;20033:9;20029:18;20021:26;;20093:9;20087:4;20083:20;20079:1;20068:9;20064:17;20057:47;20121:131;20247:4;20121:131;:::i;:::-;20113:139;;19840:419;;;:::o;20265:228::-;20405:34;20401:1;20393:6;20389:14;20382:58;20474:11;20469:2;20461:6;20457:15;20450:36;20265:228;:::o;20499:366::-;20641:3;20662:67;20726:2;20721:3;20662:67;:::i;:::-;20655:74;;20738:93;20827:3;20738:93;:::i;:::-;20856:2;20851:3;20847:12;20840:19;;20499:366;;;:::o;20871:419::-;21037:4;21075:2;21064:9;21060:18;21052:26;;21124:9;21118:4;21114:20;21110:1;21099:9;21095:17;21088:47;21152:131;21278:4;21152:131;:::i;:::-;21144:139;;20871:419;;;:::o;21296:225::-;21436:34;21432:1;21424:6;21420:14;21413:58;21505:8;21500:2;21492:6;21488:15;21481:33;21296:225;:::o;21527:366::-;21669:3;21690:67;21754:2;21749:3;21690:67;:::i;:::-;21683:74;;21766:93;21855:3;21766:93;:::i;:::-;21884:2;21879:3;21875:12;21868:19;;21527:366;;;:::o;21899:419::-;22065:4;22103:2;22092:9;22088:18;22080:26;;22152:9;22146:4;22142:20;22138:1;22127:9;22123:17;22116:47;22180:131;22306:4;22180:131;:::i;:::-;22172:139;;21899:419;;;:::o;22324:176::-;22464:28;22460:1;22452:6;22448:14;22441:52;22324:176;:::o;22506:366::-;22648:3;22669:67;22733:2;22728:3;22669:67;:::i;:::-;22662:74;;22745:93;22834:3;22745:93;:::i;:::-;22863:2;22858:3;22854:12;22847:19;;22506:366;;;:::o;22878:419::-;23044:4;23082:2;23071:9;23067:18;23059:26;;23131:9;23125:4;23121:20;23117:1;23106:9;23102:17;23095:47;23159:131;23285:4;23159:131;:::i;:::-;23151:139;;22878:419;;;:::o;23303:176::-;23443:28;23439:1;23431:6;23427:14;23420:52;23303:176;:::o;23485:366::-;23627:3;23648:67;23712:2;23707:3;23648:67;:::i;:::-;23641:74;;23724:93;23813:3;23724:93;:::i;:::-;23842:2;23837:3;23833:12;23826:19;;23485:366;;;:::o;23857:419::-;24023:4;24061:2;24050:9;24046:18;24038:26;;24110:9;24104:4;24100:20;24096:1;24085:9;24081:17;24074:47;24138:131;24264:4;24138:131;:::i;:::-;24130:139;;23857:419;;;:::o;24282:191::-;24322:4;24342:20;24360:1;24342:20;:::i;:::-;24337:25;;24376:20;24394:1;24376:20;:::i;:::-;24371:25;;24415:1;24412;24409:8;24406:34;;;24420:18;;:::i;:::-;24406:34;24465:1;24462;24458:9;24450:17;;24282:191;;;;:::o;24479:114::-;24546:6;24580:5;24574:12;24564:22;;24479:114;;;:::o;24599:184::-;24698:11;24732:6;24727:3;24720:19;24772:4;24767:3;24763:14;24748:29;;24599:184;;;;:::o;24789:132::-;24856:4;24879:3;24871:11;;24909:4;24904:3;24900:14;24892:22;;24789:132;;;:::o;24927:108::-;25004:24;25022:5;25004:24;:::i;:::-;24999:3;24992:37;24927:108;;:::o;25041:179::-;25110:10;25131:46;25173:3;25165:6;25131:46;:::i;:::-;25209:4;25204:3;25200:14;25186:28;;25041:179;;;;:::o;25226:113::-;25296:4;25328;25323:3;25319:14;25311:22;;25226:113;;;:::o;25375:732::-;25494:3;25523:54;25571:5;25523:54;:::i;:::-;25593:86;25672:6;25667:3;25593:86;:::i;:::-;25586:93;;25703:56;25753:5;25703:56;:::i;:::-;25782:7;25813:1;25798:284;25823:6;25820:1;25817:13;25798:284;;;25899:6;25893:13;25926:63;25985:3;25970:13;25926:63;:::i;:::-;25919:70;;26012:60;26065:6;26012:60;:::i;:::-;26002:70;;25858:224;25845:1;25842;25838:9;25833:14;;25798:284;;;25802:14;26098:3;26091:10;;25499:608;;;25375:732;;;;:::o;26113:831::-;26376:4;26414:3;26403:9;26399:19;26391:27;;26428:71;26496:1;26485:9;26481:17;26472:6;26428:71;:::i;:::-;26509:80;26585:2;26574:9;26570:18;26561:6;26509:80;:::i;:::-;26636:9;26630:4;26626:20;26621:2;26610:9;26606:18;26599:48;26664:108;26767:4;26758:6;26664:108;:::i;:::-;26656:116;;26782:72;26850:2;26839:9;26835:18;26826:6;26782:72;:::i;:::-;26864:73;26932:3;26921:9;26917:19;26908:6;26864:73;:::i;:::-;26113:831;;;;;;;;:::o;26950:305::-;26990:3;27009:20;27027:1;27009:20;:::i;:::-;27004:25;;27043:20;27061:1;27043:20;:::i;:::-;27038:25;;27197:1;27129:66;27125:74;27122:1;27119:81;27116:107;;;27203:18;;:::i;:::-;27116:107;27247:1;27244;27240:9;27233:16;;26950:305;;;;:::o;27261:177::-;27401:29;27397:1;27389:6;27385:14;27378:53;27261:177;:::o;27444:366::-;27586:3;27607:67;27671:2;27666:3;27607:67;:::i;:::-;27600:74;;27683:93;27772:3;27683:93;:::i;:::-;27801:2;27796:3;27792:12;27785:19;;27444:366;;;:::o;27816:419::-;27982:4;28020:2;28009:9;28005:18;27997:26;;28069:9;28063:4;28059:20;28055:1;28044:9;28040:17;28033:47;28097:131;28223:4;28097:131;:::i;:::-;28089:139;;27816:419;;;:::o

Swarm Source

ipfs://64e989198eb385c16b5a3c49dc8b93db148b0ecc8d2c5aba38b7994cd1d4e836
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.