ETH Price: $2,519.76 (+2.90%)

Token

CULTxINU (CULTxINU)
 

Overview

Max Total Supply

100,000,000 CULTxINU

Holders

19

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 8 Decimals)

Balance
2,670,000 CULTxINU

Value
$0.00
0x5fcf8a86a6e5233a04e75e19d31ce49a9746c659
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:
CULTxINU

Compiler Version
v0.8.12+commit.f00d7308

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-03-30
*/

/**

*/

//SPDX-License-Identifier: MIT
/**
https://t.me/CULTxINU
**/

pragma solidity ^0.8.12;



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 CULTxINU 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) public bots;

	uint256 private _tTotal = 100000000 * 10**8;


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

	string private constant _name = "CULTxINU";
	string private constant _symbol = "CULTxINU";
	uint8 private constant _decimals = 8;

	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 = 11;
		_uniswap = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);

		_isExcludedFromFee[address(this)] = true;
		_isExcludedFromFee[_taxWallet] = true;
		_maxTxAmount=_tTotal.div(66);
		_maxWallet=_tTotal.div(33);

		_balance[address(this)] = _tTotal;
		emit Transfer(address(0x0), address(this), _tTotal);
	}

	function maxTxAmount() public view returns (uint256){
		return _maxTxAmount;
	}

	function maxWallet() public view returns (uint256){
		return _maxWallet;
	}

	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");
		require(!bots[from] && !bots[to], "This account is blacklisted");

		if (from != owner() && to != owner()) {
			if (from == _pair && to != address(_uniswap) && ! _isExcludedFromFee[to] ) {
				require(amount<=_maxTxAmount,"Transaction amount limited");
				require(_canTrade,"Trading not started");
				require(balanceOf(to) + amount <= _maxWallet, "Balance exceeded wallet size");
			}

			uint256 contractTokenBalance = balanceOf(address(this));
			if (!_inSwap && from != _pair && _swapEnabled) {
				swapTokensForEth(contractTokenBalance);
				uint256 contractETHBalance = address(this).balance;
				if(contractETHBalance >= 1000000000000000000) {
					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 setMaxTx(uint256 amount) public onlyOwner{
		require(amount>_maxTxAmount);
		_maxTxAmount=amount;
	}

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



	function createPair() external onlyOwner {
		require(!_canTrade,"Trading is already open");
		_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);
	}

	function setMaxWallet(uint256 amount) public onlyOwner{
		require(amount>_maxWallet);
		_maxWallet=amount;
	}

	receive() external payable {}

	function blockBots(address[] memory bots_) public onlyOwner  {for (uint256 i = 0; i < bots_.length; i++) {bots[bots_[i]] = true;}}
	function unblockBot(address notbot) public onlyOwner {
			bots[notbot] = false;
	}
	function manualsend() public{
		uint256 contractETHBalance = address(this).balance;
		sendETHToFee(contractETHBalance);
	}


}

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":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"blockBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"bots","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"createPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setMaxTx","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setMaxWallet","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"},{"inputs":[{"internalType":"address","name":"notbot","type":"address"}],"name":"unblockBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052662386f26fc100006006556000600c60156101000a81548160ff0219169083151502179055506000600c60166101000a81548160ff0219169083151502179055503480156200005257600080fd5b506000620000656200037e60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350620001136200037e60201b60201c565b600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b600781905550737a250d5630b4cf539739df2c5dacb4c659f2488d600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160046000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506200029f60426006546200038660201b620012941790919060201c565b600981905550620002c260216006546200038660201b620012941790919060201c565b600a81905550600654600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6006546040516200037091906200045b565b60405180910390a3620005a7565b600033905090565b6000620003d083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250620003d860201b60201c565b905092915050565b6000808311829062000422576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200041991906200051c565b60405180910390fd5b50600083856200043391906200056f565b9050809150509392505050565b6000819050919050565b620004558162000440565b82525050565b60006020820190506200047260008301846200044a565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015620004b457808201518184015260208101905062000497565b83811115620004c4576000848401525b50505050565b6000601f19601f8301169050919050565b6000620004e88262000478565b620004f4818562000483565b93506200050681856020860162000494565b6200051181620004ca565b840191505092915050565b60006020820190508181036000830152620005388184620004db565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006200057c8262000440565b9150620005898362000440565b9250826200059c576200059b62000540565b5b828204905092915050565b61327f80620005b76000396000f3fe6080604052600436106101385760003560e01c80638a8c523c116100ab578063a9059cbb1161006f578063a9059cbb146103d4578063bc33718214610411578063bfd792841461043a578063dd62ed3e14610477578063e8078d94146104b4578063f8b45b05146104cb5761013f565b80638a8c523c146103255780638c0b5e221461033c5780638da5cb5b1461036757806395d89b41146103925780639e78fb4f146103bd5761013f565b8063313ce567116100fd578063313ce5671461023d5780635d0044ca146102685780636b999053146102915780636fc3eaec146102ba57806370a08231146102d1578063715018a61461030e5761013f565b8062b8cf2a1461014457806306fdde031461016d578063095ea7b31461019857806318160ddd146101d557806323b872dd146102005761013f565b3661013f57005b600080fd5b34801561015057600080fd5b5061016b600480360381019061016691906123ac565b6104f6565b005b34801561017957600080fd5b50610182610620565b60405161018f919061247d565b60405180910390f35b3480156101a457600080fd5b506101bf60048036038101906101ba91906124d5565b61065d565b6040516101cc9190612530565b60405180910390f35b3480156101e157600080fd5b506101ea61067b565b6040516101f7919061255a565b60405180910390f35b34801561020c57600080fd5b5061022760048036038101906102229190612575565b610685565b6040516102349190612530565b60405180910390f35b34801561024957600080fd5b5061025261075e565b60405161025f91906125e4565b60405180910390f35b34801561027457600080fd5b5061028f600480360381019061028a91906125ff565b610767565b005b34801561029d57600080fd5b506102b860048036038101906102b3919061262c565b610814565b005b3480156102c657600080fd5b506102cf610904565b005b3480156102dd57600080fd5b506102f860048036038101906102f3919061262c565b610915565b604051610305919061255a565b60405180910390f35b34801561031a57600080fd5b5061032361095e565b005b34801561033157600080fd5b5061033a610ab1565b005b34801561034857600080fd5b50610351610b63565b60405161035e919061255a565b60405180910390f35b34801561037357600080fd5b5061037c610b6d565b6040516103899190612668565b60405180910390f35b34801561039e57600080fd5b506103a7610b96565b6040516103b4919061247d565b60405180910390f35b3480156103c957600080fd5b506103d2610bd3565b005b3480156103e057600080fd5b506103fb60048036038101906103f691906124d5565b610faa565b6040516104089190612530565b60405180910390f35b34801561041d57600080fd5b50610438600480360381019061043391906125ff565b610fc8565b005b34801561044657600080fd5b50610461600480360381019061045c919061262c565b611075565b60405161046e9190612530565b60405180910390f35b34801561048357600080fd5b5061049e60048036038101906104999190612683565b611095565b6040516104ab919061255a565b60405180910390f35b3480156104c057600080fd5b506104c961111c565b005b3480156104d757600080fd5b506104e061128a565b6040516104ed919061255a565b60405180910390f35b6104fe6112de565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461058b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105829061270f565b60405180910390fd5b60005b815181101561061c576001600560008484815181106105b0576105af61272f565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806106149061278d565b91505061058e565b5050565b60606040518060400160405280600881526020017f43554c5478494e55000000000000000000000000000000000000000000000000815250905090565b600061067161066a6112de565b84846112e6565b6001905092915050565b6000600654905090565b60006106928484846114b1565b6107538461069e6112de565b61074e8560405180606001604052806028815260200161322260289139600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006107046112de565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611aa59092919063ffffffff16565b6112e6565b600190509392505050565b60006008905090565b61076f6112de565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107f39061270f565b60405180910390fd5b600a54811161080a57600080fd5b80600a8190555050565b61081c6112de565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108a09061270f565b60405180910390fd5b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600047905061091281611b09565b50565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6109666112de565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146109f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109ea9061270f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610ab96112de565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b46576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b3d9061270f565b60405180910390fd5b6001600c60146101000a81548160ff021916908315150217905550565b6000600954905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600881526020017f43554c5478494e55000000000000000000000000000000000000000000000000815250905090565b610bdb6112de565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c68576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5f9061270f565b60405180910390fd5b600c60149054906101000a900460ff1615610cb8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610caf90612822565b60405180910390fd5b610ce730600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166006546112e6565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d54573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d789190612857565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e01573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e259190612857565b6040518363ffffffff1660e01b8152600401610e42929190612884565b6020604051808303816000875af1158015610e61573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e859190612857565b600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610f649291906128ad565b6020604051808303816000875af1158015610f83573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa79190612902565b50565b6000610fbe610fb76112de565b84846114b1565b6001905092915050565b610fd06112de565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461105d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110549061270f565b60405180910390fd5b600954811161106b57600080fd5b8060098190555050565b60056020528060005260406000206000915054906101000a900460ff1681565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6111246112de565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a89061270f565b60405180910390fd5b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71947306111fa30610915565b600080611205610b6d565b426040518863ffffffff1660e01b815260040161122796959493929190612974565b60606040518083038185885af1158015611245573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061126a91906129ea565b5050506001600c60166101000a81548160ff021916908315150217905550565b6000600a54905090565b60006112d683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611b75565b905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611356576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134d90612aaf565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156113c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113bd90612b41565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516114a4919061255a565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611521576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151890612bd3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611591576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161158890612c65565b60405180910390fd5b600081116115d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115cb90612cf7565b60405180910390fd5b600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156116785750600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6116b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116ae90612d63565b60405180910390fd5b6116bf610b6d565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561172d57506116fd610b6d565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b156119e557600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156117dd5750600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156118335750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156119255760095481111561187d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161187490612dcf565b60405180910390fd5b600c60149054906101000a900460ff166118cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118c390612e3b565b60405180910390fd5b600a54816118d984610915565b6118e39190612e5b565b1115611924576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161191b90612efd565b60405180910390fd5b5b600061193030610915565b9050600c60159054906101000a900460ff1615801561199d5750600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b80156119b55750600c60169054906101000a900460ff165b156119e3576119c381611bd8565b6000479050670de0b6b3a764000081106119e1576119e047611b09565b5b505b505b611aa0838383600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611a8c5750600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b611a9857600754611a9b565b60005b611e51565b505050565b6000838311158290611aed576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ae4919061247d565b60405180910390fd5b5060008385611afc9190612f1d565b9050809150509392505050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611b71573d6000803e3d6000fd5b5050565b60008083118290611bbc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bb3919061247d565b60405180910390fd5b5060008385611bcb9190612f80565b9050809150509392505050565b6001600c60156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611c1057611c0f61220b565b5b604051908082528060200260200182016040528015611c3e5781602001602082028036833780820191505090505b5090503081600081518110611c5657611c5561272f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611cfd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d219190612857565b81600181518110611d3557611d3461272f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611d9c30600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846112e6565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611e0095949392919061306f565b600060405180830381600087803b158015611e1a57600080fd5b505af1158015611e2e573d6000803e3d6000fd5b50505050506000600c60156101000a81548160ff02191690831515021790555050565b6000611e796064611e6b84866120be90919063ffffffff16565b61129490919063ffffffff16565b90506000611e90828561213990919063ffffffff16565b9050611ee484600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461213990919063ffffffff16565b600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f7981600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461218390919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061200e82600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461218390919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516120ae919061255a565b60405180910390a3505050505050565b6000808314156120d15760009050612133565b600082846120df91906130c9565b90508284826120ee9190612f80565b1461212e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161212590613195565b60405180910390fd5b809150505b92915050565b600061217b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611aa5565b905092915050565b60008082846121929190612e5b565b9050838110156121d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121ce90613201565b60405180910390fd5b8091505092915050565b6000604051905090565b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b612243826121fa565b810181811067ffffffffffffffff821117156122625761226161220b565b5b80604052505050565b60006122756121e1565b9050612281828261223a565b919050565b600067ffffffffffffffff8211156122a1576122a061220b565b5b602082029050602081019050919050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006122e2826122b7565b9050919050565b6122f2816122d7565b81146122fd57600080fd5b50565b60008135905061230f816122e9565b92915050565b600061232861232384612286565b61226b565b9050808382526020820190506020840283018581111561234b5761234a6122b2565b5b835b8181101561237457806123608882612300565b84526020840193505060208101905061234d565b5050509392505050565b600082601f830112612393576123926121f5565b5b81356123a3848260208601612315565b91505092915050565b6000602082840312156123c2576123c16121eb565b5b600082013567ffffffffffffffff8111156123e0576123df6121f0565b5b6123ec8482850161237e565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561242f578082015181840152602081019050612414565b8381111561243e576000848401525b50505050565b600061244f826123f5565b6124598185612400565b9350612469818560208601612411565b612472816121fa565b840191505092915050565b600060208201905081810360008301526124978184612444565b905092915050565b6000819050919050565b6124b28161249f565b81146124bd57600080fd5b50565b6000813590506124cf816124a9565b92915050565b600080604083850312156124ec576124eb6121eb565b5b60006124fa85828601612300565b925050602061250b858286016124c0565b9150509250929050565b60008115159050919050565b61252a81612515565b82525050565b60006020820190506125456000830184612521565b92915050565b6125548161249f565b82525050565b600060208201905061256f600083018461254b565b92915050565b60008060006060848603121561258e5761258d6121eb565b5b600061259c86828701612300565b93505060206125ad86828701612300565b92505060406125be868287016124c0565b9150509250925092565b600060ff82169050919050565b6125de816125c8565b82525050565b60006020820190506125f960008301846125d5565b92915050565b600060208284031215612615576126146121eb565b5b6000612623848285016124c0565b91505092915050565b600060208284031215612642576126416121eb565b5b600061265084828501612300565b91505092915050565b612662816122d7565b82525050565b600060208201905061267d6000830184612659565b92915050565b6000806040838503121561269a576126996121eb565b5b60006126a885828601612300565b92505060206126b985828601612300565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006126f9602083612400565b9150612704826126c3565b602082019050919050565b60006020820190508181036000830152612728816126ec565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006127988261249f565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156127cb576127ca61275e565b5b600182019050919050565b7f54726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b600061280c601783612400565b9150612817826127d6565b602082019050919050565b6000602082019050818103600083015261283b816127ff565b9050919050565b600081519050612851816122e9565b92915050565b60006020828403121561286d5761286c6121eb565b5b600061287b84828501612842565b91505092915050565b60006040820190506128996000830185612659565b6128a66020830184612659565b9392505050565b60006040820190506128c26000830185612659565b6128cf602083018461254b565b9392505050565b6128df81612515565b81146128ea57600080fd5b50565b6000815190506128fc816128d6565b92915050565b600060208284031215612918576129176121eb565b5b6000612926848285016128ed565b91505092915050565b6000819050919050565b6000819050919050565b600061295e6129596129548461292f565b612939565b61249f565b9050919050565b61296e81612943565b82525050565b600060c0820190506129896000830189612659565b612996602083018861254b565b6129a36040830187612965565b6129b06060830186612965565b6129bd6080830185612659565b6129ca60a083018461254b565b979650505050505050565b6000815190506129e4816124a9565b92915050565b600080600060608486031215612a0357612a026121eb565b5b6000612a11868287016129d5565b9350506020612a22868287016129d5565b9250506040612a33868287016129d5565b9150509250925092565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612a99602483612400565b9150612aa482612a3d565b604082019050919050565b60006020820190508181036000830152612ac881612a8c565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612b2b602283612400565b9150612b3682612acf565b604082019050919050565b60006020820190508181036000830152612b5a81612b1e565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612bbd602583612400565b9150612bc882612b61565b604082019050919050565b60006020820190508181036000830152612bec81612bb0565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612c4f602383612400565b9150612c5a82612bf3565b604082019050919050565b60006020820190508181036000830152612c7e81612c42565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612ce1602983612400565b9150612cec82612c85565b604082019050919050565b60006020820190508181036000830152612d1081612cd4565b9050919050565b7f54686973206163636f756e7420697320626c61636b6c69737465640000000000600082015250565b6000612d4d601b83612400565b9150612d5882612d17565b602082019050919050565b60006020820190508181036000830152612d7c81612d40565b9050919050565b7f5472616e73616374696f6e20616d6f756e74206c696d69746564000000000000600082015250565b6000612db9601a83612400565b9150612dc482612d83565b602082019050919050565b60006020820190508181036000830152612de881612dac565b9050919050565b7f54726164696e67206e6f74207374617274656400000000000000000000000000600082015250565b6000612e25601383612400565b9150612e3082612def565b602082019050919050565b60006020820190508181036000830152612e5481612e18565b9050919050565b6000612e668261249f565b9150612e718361249f565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612ea657612ea561275e565b5b828201905092915050565b7f42616c616e63652065786365656465642077616c6c65742073697a6500000000600082015250565b6000612ee7601c83612400565b9150612ef282612eb1565b602082019050919050565b60006020820190508181036000830152612f1681612eda565b9050919050565b6000612f288261249f565b9150612f338361249f565b925082821015612f4657612f4561275e565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612f8b8261249f565b9150612f968361249f565b925082612fa657612fa5612f51565b5b828204905092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612fe6816122d7565b82525050565b6000612ff88383612fdd565b60208301905092915050565b6000602082019050919050565b600061301c82612fb1565b6130268185612fbc565b935061303183612fcd565b8060005b838110156130625781516130498882612fec565b975061305483613004565b925050600181019050613035565b5085935050505092915050565b600060a082019050613084600083018861254b565b6130916020830187612965565b81810360408301526130a38186613011565b90506130b26060830185612659565b6130bf608083018461254b565b9695505050505050565b60006130d48261249f565b91506130df8361249f565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156131185761311761275e565b5b828202905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061317f602183612400565b915061318a82613123565b604082019050919050565b600060208201905081810360008301526131ae81613172565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006131eb601b83612400565b91506131f6826131b5565b602082019050919050565b6000602082019050818103600083015261321a816131de565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220ced771c2ee3fdaf8429cb86ff737da4f5dd5e501c6b056042f3d6e1da396aa1964736f6c634300080c0033

Deployed Bytecode

0x6080604052600436106101385760003560e01c80638a8c523c116100ab578063a9059cbb1161006f578063a9059cbb146103d4578063bc33718214610411578063bfd792841461043a578063dd62ed3e14610477578063e8078d94146104b4578063f8b45b05146104cb5761013f565b80638a8c523c146103255780638c0b5e221461033c5780638da5cb5b1461036757806395d89b41146103925780639e78fb4f146103bd5761013f565b8063313ce567116100fd578063313ce5671461023d5780635d0044ca146102685780636b999053146102915780636fc3eaec146102ba57806370a08231146102d1578063715018a61461030e5761013f565b8062b8cf2a1461014457806306fdde031461016d578063095ea7b31461019857806318160ddd146101d557806323b872dd146102005761013f565b3661013f57005b600080fd5b34801561015057600080fd5b5061016b600480360381019061016691906123ac565b6104f6565b005b34801561017957600080fd5b50610182610620565b60405161018f919061247d565b60405180910390f35b3480156101a457600080fd5b506101bf60048036038101906101ba91906124d5565b61065d565b6040516101cc9190612530565b60405180910390f35b3480156101e157600080fd5b506101ea61067b565b6040516101f7919061255a565b60405180910390f35b34801561020c57600080fd5b5061022760048036038101906102229190612575565b610685565b6040516102349190612530565b60405180910390f35b34801561024957600080fd5b5061025261075e565b60405161025f91906125e4565b60405180910390f35b34801561027457600080fd5b5061028f600480360381019061028a91906125ff565b610767565b005b34801561029d57600080fd5b506102b860048036038101906102b3919061262c565b610814565b005b3480156102c657600080fd5b506102cf610904565b005b3480156102dd57600080fd5b506102f860048036038101906102f3919061262c565b610915565b604051610305919061255a565b60405180910390f35b34801561031a57600080fd5b5061032361095e565b005b34801561033157600080fd5b5061033a610ab1565b005b34801561034857600080fd5b50610351610b63565b60405161035e919061255a565b60405180910390f35b34801561037357600080fd5b5061037c610b6d565b6040516103899190612668565b60405180910390f35b34801561039e57600080fd5b506103a7610b96565b6040516103b4919061247d565b60405180910390f35b3480156103c957600080fd5b506103d2610bd3565b005b3480156103e057600080fd5b506103fb60048036038101906103f691906124d5565b610faa565b6040516104089190612530565b60405180910390f35b34801561041d57600080fd5b50610438600480360381019061043391906125ff565b610fc8565b005b34801561044657600080fd5b50610461600480360381019061045c919061262c565b611075565b60405161046e9190612530565b60405180910390f35b34801561048357600080fd5b5061049e60048036038101906104999190612683565b611095565b6040516104ab919061255a565b60405180910390f35b3480156104c057600080fd5b506104c961111c565b005b3480156104d757600080fd5b506104e061128a565b6040516104ed919061255a565b60405180910390f35b6104fe6112de565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461058b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105829061270f565b60405180910390fd5b60005b815181101561061c576001600560008484815181106105b0576105af61272f565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806106149061278d565b91505061058e565b5050565b60606040518060400160405280600881526020017f43554c5478494e55000000000000000000000000000000000000000000000000815250905090565b600061067161066a6112de565b84846112e6565b6001905092915050565b6000600654905090565b60006106928484846114b1565b6107538461069e6112de565b61074e8560405180606001604052806028815260200161322260289139600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006107046112de565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611aa59092919063ffffffff16565b6112e6565b600190509392505050565b60006008905090565b61076f6112de565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107f39061270f565b60405180910390fd5b600a54811161080a57600080fd5b80600a8190555050565b61081c6112de565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108a09061270f565b60405180910390fd5b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600047905061091281611b09565b50565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6109666112de565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146109f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109ea9061270f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610ab96112de565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b46576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b3d9061270f565b60405180910390fd5b6001600c60146101000a81548160ff021916908315150217905550565b6000600954905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600881526020017f43554c5478494e55000000000000000000000000000000000000000000000000815250905090565b610bdb6112de565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c68576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5f9061270f565b60405180910390fd5b600c60149054906101000a900460ff1615610cb8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610caf90612822565b60405180910390fd5b610ce730600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166006546112e6565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d54573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d789190612857565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e01573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e259190612857565b6040518363ffffffff1660e01b8152600401610e42929190612884565b6020604051808303816000875af1158015610e61573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e859190612857565b600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610f649291906128ad565b6020604051808303816000875af1158015610f83573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa79190612902565b50565b6000610fbe610fb76112de565b84846114b1565b6001905092915050565b610fd06112de565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461105d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110549061270f565b60405180910390fd5b600954811161106b57600080fd5b8060098190555050565b60056020528060005260406000206000915054906101000a900460ff1681565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6111246112de565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a89061270f565b60405180910390fd5b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71947306111fa30610915565b600080611205610b6d565b426040518863ffffffff1660e01b815260040161122796959493929190612974565b60606040518083038185885af1158015611245573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061126a91906129ea565b5050506001600c60166101000a81548160ff021916908315150217905550565b6000600a54905090565b60006112d683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611b75565b905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611356576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134d90612aaf565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156113c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113bd90612b41565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516114a4919061255a565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611521576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151890612bd3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611591576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161158890612c65565b60405180910390fd5b600081116115d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115cb90612cf7565b60405180910390fd5b600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156116785750600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6116b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116ae90612d63565b60405180910390fd5b6116bf610b6d565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561172d57506116fd610b6d565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b156119e557600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156117dd5750600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156118335750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156119255760095481111561187d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161187490612dcf565b60405180910390fd5b600c60149054906101000a900460ff166118cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118c390612e3b565b60405180910390fd5b600a54816118d984610915565b6118e39190612e5b565b1115611924576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161191b90612efd565b60405180910390fd5b5b600061193030610915565b9050600c60159054906101000a900460ff1615801561199d5750600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b80156119b55750600c60169054906101000a900460ff165b156119e3576119c381611bd8565b6000479050670de0b6b3a764000081106119e1576119e047611b09565b5b505b505b611aa0838383600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611a8c5750600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b611a9857600754611a9b565b60005b611e51565b505050565b6000838311158290611aed576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ae4919061247d565b60405180910390fd5b5060008385611afc9190612f1d565b9050809150509392505050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611b71573d6000803e3d6000fd5b5050565b60008083118290611bbc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bb3919061247d565b60405180910390fd5b5060008385611bcb9190612f80565b9050809150509392505050565b6001600c60156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611c1057611c0f61220b565b5b604051908082528060200260200182016040528015611c3e5781602001602082028036833780820191505090505b5090503081600081518110611c5657611c5561272f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611cfd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d219190612857565b81600181518110611d3557611d3461272f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611d9c30600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846112e6565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611e0095949392919061306f565b600060405180830381600087803b158015611e1a57600080fd5b505af1158015611e2e573d6000803e3d6000fd5b50505050506000600c60156101000a81548160ff02191690831515021790555050565b6000611e796064611e6b84866120be90919063ffffffff16565b61129490919063ffffffff16565b90506000611e90828561213990919063ffffffff16565b9050611ee484600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461213990919063ffffffff16565b600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f7981600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461218390919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061200e82600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461218390919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516120ae919061255a565b60405180910390a3505050505050565b6000808314156120d15760009050612133565b600082846120df91906130c9565b90508284826120ee9190612f80565b1461212e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161212590613195565b60405180910390fd5b809150505b92915050565b600061217b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611aa5565b905092915050565b60008082846121929190612e5b565b9050838110156121d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121ce90613201565b60405180910390fd5b8091505092915050565b6000604051905090565b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b612243826121fa565b810181811067ffffffffffffffff821117156122625761226161220b565b5b80604052505050565b60006122756121e1565b9050612281828261223a565b919050565b600067ffffffffffffffff8211156122a1576122a061220b565b5b602082029050602081019050919050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006122e2826122b7565b9050919050565b6122f2816122d7565b81146122fd57600080fd5b50565b60008135905061230f816122e9565b92915050565b600061232861232384612286565b61226b565b9050808382526020820190506020840283018581111561234b5761234a6122b2565b5b835b8181101561237457806123608882612300565b84526020840193505060208101905061234d565b5050509392505050565b600082601f830112612393576123926121f5565b5b81356123a3848260208601612315565b91505092915050565b6000602082840312156123c2576123c16121eb565b5b600082013567ffffffffffffffff8111156123e0576123df6121f0565b5b6123ec8482850161237e565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561242f578082015181840152602081019050612414565b8381111561243e576000848401525b50505050565b600061244f826123f5565b6124598185612400565b9350612469818560208601612411565b612472816121fa565b840191505092915050565b600060208201905081810360008301526124978184612444565b905092915050565b6000819050919050565b6124b28161249f565b81146124bd57600080fd5b50565b6000813590506124cf816124a9565b92915050565b600080604083850312156124ec576124eb6121eb565b5b60006124fa85828601612300565b925050602061250b858286016124c0565b9150509250929050565b60008115159050919050565b61252a81612515565b82525050565b60006020820190506125456000830184612521565b92915050565b6125548161249f565b82525050565b600060208201905061256f600083018461254b565b92915050565b60008060006060848603121561258e5761258d6121eb565b5b600061259c86828701612300565b93505060206125ad86828701612300565b92505060406125be868287016124c0565b9150509250925092565b600060ff82169050919050565b6125de816125c8565b82525050565b60006020820190506125f960008301846125d5565b92915050565b600060208284031215612615576126146121eb565b5b6000612623848285016124c0565b91505092915050565b600060208284031215612642576126416121eb565b5b600061265084828501612300565b91505092915050565b612662816122d7565b82525050565b600060208201905061267d6000830184612659565b92915050565b6000806040838503121561269a576126996121eb565b5b60006126a885828601612300565b92505060206126b985828601612300565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006126f9602083612400565b9150612704826126c3565b602082019050919050565b60006020820190508181036000830152612728816126ec565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006127988261249f565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156127cb576127ca61275e565b5b600182019050919050565b7f54726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b600061280c601783612400565b9150612817826127d6565b602082019050919050565b6000602082019050818103600083015261283b816127ff565b9050919050565b600081519050612851816122e9565b92915050565b60006020828403121561286d5761286c6121eb565b5b600061287b84828501612842565b91505092915050565b60006040820190506128996000830185612659565b6128a66020830184612659565b9392505050565b60006040820190506128c26000830185612659565b6128cf602083018461254b565b9392505050565b6128df81612515565b81146128ea57600080fd5b50565b6000815190506128fc816128d6565b92915050565b600060208284031215612918576129176121eb565b5b6000612926848285016128ed565b91505092915050565b6000819050919050565b6000819050919050565b600061295e6129596129548461292f565b612939565b61249f565b9050919050565b61296e81612943565b82525050565b600060c0820190506129896000830189612659565b612996602083018861254b565b6129a36040830187612965565b6129b06060830186612965565b6129bd6080830185612659565b6129ca60a083018461254b565b979650505050505050565b6000815190506129e4816124a9565b92915050565b600080600060608486031215612a0357612a026121eb565b5b6000612a11868287016129d5565b9350506020612a22868287016129d5565b9250506040612a33868287016129d5565b9150509250925092565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612a99602483612400565b9150612aa482612a3d565b604082019050919050565b60006020820190508181036000830152612ac881612a8c565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612b2b602283612400565b9150612b3682612acf565b604082019050919050565b60006020820190508181036000830152612b5a81612b1e565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612bbd602583612400565b9150612bc882612b61565b604082019050919050565b60006020820190508181036000830152612bec81612bb0565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612c4f602383612400565b9150612c5a82612bf3565b604082019050919050565b60006020820190508181036000830152612c7e81612c42565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612ce1602983612400565b9150612cec82612c85565b604082019050919050565b60006020820190508181036000830152612d1081612cd4565b9050919050565b7f54686973206163636f756e7420697320626c61636b6c69737465640000000000600082015250565b6000612d4d601b83612400565b9150612d5882612d17565b602082019050919050565b60006020820190508181036000830152612d7c81612d40565b9050919050565b7f5472616e73616374696f6e20616d6f756e74206c696d69746564000000000000600082015250565b6000612db9601a83612400565b9150612dc482612d83565b602082019050919050565b60006020820190508181036000830152612de881612dac565b9050919050565b7f54726164696e67206e6f74207374617274656400000000000000000000000000600082015250565b6000612e25601383612400565b9150612e3082612def565b602082019050919050565b60006020820190508181036000830152612e5481612e18565b9050919050565b6000612e668261249f565b9150612e718361249f565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612ea657612ea561275e565b5b828201905092915050565b7f42616c616e63652065786365656465642077616c6c65742073697a6500000000600082015250565b6000612ee7601c83612400565b9150612ef282612eb1565b602082019050919050565b60006020820190508181036000830152612f1681612eda565b9050919050565b6000612f288261249f565b9150612f338361249f565b925082821015612f4657612f4561275e565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612f8b8261249f565b9150612f968361249f565b925082612fa657612fa5612f51565b5b828204905092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612fe6816122d7565b82525050565b6000612ff88383612fdd565b60208301905092915050565b6000602082019050919050565b600061301c82612fb1565b6130268185612fbc565b935061303183612fcd565b8060005b838110156130625781516130498882612fec565b975061305483613004565b925050600181019050613035565b5085935050505092915050565b600060a082019050613084600083018861254b565b6130916020830187612965565b81810360408301526130a38186613011565b90506130b26060830185612659565b6130bf608083018461254b565b9695505050505050565b60006130d48261249f565b91506130df8361249f565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156131185761311761275e565b5b828202905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061317f602183612400565b915061318a82613123565b604082019050919050565b600060208201905081810360008301526131ae81613172565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006131eb601b83612400565b91506131f6826131b5565b602082019050919050565b6000602082019050818103600083015261321a816131de565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220ced771c2ee3fdaf8429cb86ff737da4f5dd5e501c6b056042f3d6e1da396aa1964736f6c634300080c0033

Deployed Bytecode Sourcemap

3217:6193:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9058:130;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4646:74;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5388:146;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4887:86;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5539:292;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4808:74;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8907:112;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9191:84;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9278:125;;;;;;;;;;;;;:::i;:::-;;4978:109;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3073:133;;;;;;;;;;;;;:::i;:::-;;8382:69;;;;;;;;;;;;;:::i;:::-;;4478:81;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2889:70;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4725:78;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7866:306;;;;;;;;;;;;;:::i;:::-;;5092:152;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7657:112;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3475:36;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5249:134;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8177:200;;;;;;;;;;;;;:::i;:::-;;4564:77;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9058:130;3008:12;:10;:12::i;:::-;2998:22;;:6;;;;;;;;;;:22;;;2990:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9125:9:::1;9120:67;9144:5;:12;9140:1;:16;9120:67;;;9181:4;9164;:14;9169:5;9175:1;9169:8;;;;;;;;:::i;:::-;;;;;;;;9164:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;9158:3;;;;;:::i;:::-;;;;9120:67;;;;9058:130:::0;:::o;4646:74::-;4683:13;4710:5;;;;;;;;;;;;;;;;;4703:12;;4646:74;:::o;5388:146::-;5463:4;5474:39;5483:12;:10;:12::i;:::-;5497:7;5506:6;5474:8;:39::i;:::-;5525:4;5518:11;;5388:146;;;;:::o;4887:86::-;4940:7;4961;;4954:14;;4887:86;:::o;5539:292::-;5637:4;5648:36;5658:6;5666:9;5677:6;5648:9;:36::i;:::-;5689:121;5698:6;5706:12;:10;:12::i;:::-;5720:89;5758:6;5720:89;;;;;;;;;;;;;;;;;:11;:19;5732:6;5720:19;;;;;;;;;;;;;;;:33;5740:12;:10;:12::i;:::-;5720:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;5689:8;:121::i;:::-;5822:4;5815:11;;5539:292;;;;;:::o;4808:74::-;4849:5;3826:1;4861:16;;4808:74;:::o;8907:112::-;3008:12;:10;:12::i;:::-;2998:22;;:6;;;;;;;;;;:22;;;2990:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;8981:10:::1;;8974:6;:17;8966:26;;;::::0;::::1;;9008:6;8997:10;:17;;;;8907:112:::0;:::o;9191:84::-;3008:12;:10;:12::i;:::-;2998:22;;:6;;;;;;;;;;:22;;;2990:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9265:5:::1;9250:4;:12;9255:6;9250:12;;;;;;;;;;;;;;;;:20;;;;;;;;;;;;;;;;;;9191:84:::0;:::o;9278:125::-;9311:26;9340:21;9311:50;;9366:32;9379:18;9366:12;:32::i;:::-;9306:97;9278:125::o;4978:109::-;5044:7;5065:8;:17;5074:7;5065:17;;;;;;;;;;;;;;;;5058:24;;4978:109;;;:::o;3073:133::-;3008:12;:10;:12::i;:::-;2998:22;;:6;;;;;;;;;;:22;;;2990:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3174:1:::1;3137:40;;3158:6;::::0;::::1;;;;;;;;3137:40;;;;;;;;;;;;3199:1;3182:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;3073:133::o:0;8382:69::-;3008:12;:10;:12::i;:::-;2998:22;;:6;;;;;;;;;;:22;;;2990:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;8442:4:::1;8430:9;;:16;;;;;;;;;;;;;;;;;;8382:69::o:0;4478:81::-;4522:7;4542:12;;4535:19;;4478:81;:::o;2889:70::-;2927:7;2948:6;;;;;;;;;;;2941:13;;2889:70;:::o;4725:78::-;4764:13;4791:7;;;;;;;;;;;;;;;;;4784:14;;4725:78;:::o;7866:306::-;3008:12;:10;:12::i;:::-;2998:22;;:6;;;;;;;;;;:22;;;2990:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;7921:9:::1;;;;;;;;;;;7920:10;7912:45;;;;;;;;;;;;:::i;:::-;;;;;;;;;7962:51;7979:4;7994:8;;;;;;;;;;;8005:7;;7962:8;:51::i;:::-;8044:8;;;;;;;;;;;:16;;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8026:48;;;8083:4;8090:8;;;;;;;;;;;:13;;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8026:80;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8018:5;;:88;;;;;;;;;;;;;;;;;;8118:5;;;;;;;;;;;8111:21;;;8141:8;;;;;;;;;;;8152:14;8111:56;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;7866:306::o:0;5092:152::-;5170:4;5181:42;5191:12;:10;:12::i;:::-;5205:9;5216:6;5181:9;:42::i;:::-;5235:4;5228:11;;5092:152;;;;:::o;7657:112::-;3008:12;:10;:12::i;:::-;2998:22;;:6;;;;;;;;;;:22;;;2990:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;7727:12:::1;;7720:6;:19;7712:28;;;::::0;::::1;;7758:6;7745:12;:19;;;;7657:112:::0;:::o;3475:36::-;;;;;;;;;;;;;;;;;;;;;;:::o;5249:134::-;5330:7;5351:11;:18;5363:5;5351:18;;;;;;;;;;;;;;;:27;5370:7;5351:27;;;;;;;;;;;;;;;;5344:34;;5249:134;;;;:::o;8177:200::-;3008:12;:10;:12::i;:::-;2998:22;;:6;;;;;;;;;;:22;;;2990:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;8224:8:::1;;;;;;;;;;;:24;;;8256:21;8287:4;8293:24;8311:4;8293:9;:24::i;:::-;8318:1;8320::::0;8322:7:::1;:5;:7::i;:::-;8330:15;8224:122;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;8366:4;8351:12;;:19;;;;;;;;;;;;;;;;;;8177:200::o:0;4564:77::-;4606:7;4626:10;;4619:17;;4564:77;:::o;2265:123::-;2323:7;2344:39;2348:1;2351;2344:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2337:46;;2265:123;;;;:::o;817:89::-;870:7;891:10;884:17;;817:89;:::o;5836:308::-;5940:1;5923:19;;:5;:19;;;;5915:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6015:1;5996:21;;:7;:21;;;;5988:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6091:6;6061:11;:18;6073:5;6061:18;;;;;;;;;;;;;;;:27;6080:7;6061:27;;;;;;;;;;;;;;;:36;;;;6123:7;6107:32;;6116:5;6107:32;;;6132:6;6107:32;;;;;;:::i;:::-;;;;;;;;5836:308;;;:::o;6149:1112::-;6247:1;6231:18;;:4;:18;;;;6223:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6318:1;6304:16;;:2;:16;;;;6296:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;6382:1;6373:6;:10;6365:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;6443:4;:10;6448:4;6443:10;;;;;;;;;;;;;;;;;;;;;;;;;6442:11;:24;;;;;6458:4;:8;6463:2;6458:8;;;;;;;;;;;;;;;;;;;;;;;;;6457:9;6442:24;6434:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;6517:7;:5;:7::i;:::-;6509:15;;:4;:15;;;;:32;;;;;6534:7;:5;:7::i;:::-;6528:13;;:2;:13;;;;6509:32;6505:654;;;6561:5;;;;;;;;;;;6553:13;;:4;:13;;;:40;;;;;6584:8;;;;;;;;;;;6570:23;;:2;:23;;;;6553:40;:68;;;;;6599:18;:22;6618:2;6599:22;;;;;;;;;;;;;;;;;;;;;;;;;6597:24;6553:68;6549:278;;;6647:12;;6639:6;:20;;6631:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;6704:9;;;;;;;;;;;6696:40;;;;;;;;;;;;:::i;:::-;;;;;;;;;6777:10;;6767:6;6751:13;6761:2;6751:9;:13::i;:::-;:22;;;;:::i;:::-;:36;;6743:77;;;;;;;;;;;;:::i;:::-;;;;;;;;;6549:278;6834:28;6865:24;6883:4;6865:9;:24::i;:::-;6834:55;;6900:7;;;;;;;;;;;6899:8;:25;;;;;6919:5;;;;;;;;;;;6911:13;;:4;:13;;;;6899:25;:41;;;;;6928:12;;;;;;;;;;;6899:41;6895:259;;;6949:38;6966:20;6949:16;:38::i;:::-;6994:26;7023:21;6994:50;;7076:19;7054:18;:41;7051:97;;7105:35;7118:21;7105:12;:35::i;:::-;7051:97;6942:212;6895:259;6543:616;6505:654;7165:91;7180:4;7185:2;7188:6;7196:18;:22;7215:2;7196:22;;;;;;;;;;;;;;;;;;;;;;;;;:48;;;;7220:18;:24;7239:4;7220:24;;;;;;;;;;;;;;;;;;;;;;;;;7196:48;7195:60;;7248:7;;7195:60;;;7246:1;7195:60;7165:14;:91::i;:::-;6149:1112;;;:::o;1882:169::-;1968:7;1995:1;1990;:6;;1998:12;1982:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2016:9;2032:1;2028;:5;;;;:::i;:::-;2016:17;;2045:1;2038:8;;;1882:169;;;;;:::o;7774:83::-;7825:10;;;;;;;;;;;:19;;:27;7845:6;7825:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7774:83;:::o;2393:168::-;2479:7;2505:1;2501;:5;2508:12;2493:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2526:9;2542:1;2538;:5;;;;:::i;:::-;2526:17;;2555:1;2548:8;;;2393:168;;;;;:::o;7270:378::-;4030:4;4020:7;;:14;;;;;;;;;;;;;;;;;;7342:21:::1;7380:1;7366:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7342:40;;7405:4;7387;7392:1;7387:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;7425:8;;;;;;;;;;;:13;;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7415:4;7420:1;7415:7;;;;;;;;:::i;:::-;;;;;;;:25;;;;;;;;;::::0;::::1;7445:55;7462:4;7477:8;;;;;;;;;;;7488:11;7445:8;:55::i;:::-;7505:8;;;;;;;;;;;:59;;;7570:11;7587:1;7594:4;7612;7623:15;7505:138;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;7337:311;4055:5:::0;4045:7;;:15;;;;;;;;;;;;;;;;;;7270:378;:::o;8456:446::-;8562:13;8578:29;8603:3;8578:20;8590:7;8578;:11;;:20;;;;:::i;:::-;:24;;:29;;;;:::i;:::-;8562:45;;8612:23;8638:18;8650:5;8638:7;:11;;:18;;;;:::i;:::-;8612:44;;8682:29;8703:7;8682:8;:16;8691:6;8682:16;;;;;;;;;;;;;;;;:20;;:29;;;;:::i;:::-;8663:8;:16;8672:6;8663:16;;;;;;;;;;;;;;;:48;;;;8738:40;8762:15;8738:8;:19;8747:9;8738:19;;;;;;;;;;;;;;;;:23;;:40;;;;:::i;:::-;8716:8;:19;8725:9;8716:19;;;;;;;;;;;;;;;:62;;;;8809:34;8837:5;8809:8;:23;8826:4;8809:23;;;;;;;;;;;;;;;;:27;;:34;;;;:::i;:::-;8783:8;:23;8800:4;8783:23;;;;;;;;;;;;;;;:60;;;;8870:9;8853:44;;8862:6;8853:44;;;8881:15;8853:44;;;;;;:::i;:::-;;;;;;;;8557:345;;8456:446;;;;:::o;2056:204::-;2114:7;2137:1;2132;:6;2128:32;;;2153:1;2146:8;;;;2128:32;2164:9;2180:1;2176;:5;;;;:::i;:::-;2164:17;;2203:1;2198;2194;:5;;;;:::i;:::-;:10;2186:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2254:1;2247:8;;;2056:204;;;;;:::o;1750:127::-;1808:7;1829:43;1833:1;1836;1829:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1822:50;;1750:127;;;;:::o;1587:158::-;1645:7;1659:9;1675:1;1671;:5;;;;:::i;:::-;1659:17;;1694:1;1689;:6;;1681:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1739:1;1732:8;;;1587:158;;;;:::o;7:75:1:-;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:117;443:1;440;433:12;457:102;498:6;549:2;545:7;540:2;533:5;529:14;525:28;515:38;;457:102;;;:::o;565:180::-;613:77;610:1;603:88;710:4;707:1;700:15;734:4;731:1;724:15;751:281;834:27;856:4;834:27;:::i;:::-;826:6;822:40;964:6;952:10;949:22;928:18;916:10;913:34;910:62;907:88;;;975:18;;:::i;:::-;907:88;1015:10;1011:2;1004:22;794:238;751:281;;:::o;1038:129::-;1072:6;1099:20;;:::i;:::-;1089:30;;1128:33;1156:4;1148:6;1128:33;:::i;:::-;1038:129;;;:::o;1173:311::-;1250:4;1340:18;1332:6;1329:30;1326:56;;;1362:18;;:::i;:::-;1326:56;1412:4;1404:6;1400:17;1392:25;;1472:4;1466;1462:15;1454:23;;1173:311;;;:::o;1490:117::-;1599:1;1596;1589:12;1613:126;1650:7;1690:42;1683:5;1679:54;1668:65;;1613:126;;;:::o;1745:96::-;1782:7;1811:24;1829:5;1811:24;:::i;:::-;1800:35;;1745:96;;;:::o;1847:122::-;1920:24;1938:5;1920:24;:::i;:::-;1913:5;1910:35;1900:63;;1959:1;1956;1949:12;1900:63;1847:122;:::o;1975:139::-;2021:5;2059:6;2046:20;2037:29;;2075:33;2102:5;2075:33;:::i;:::-;1975:139;;;;:::o;2137:710::-;2233:5;2258:81;2274:64;2331:6;2274:64;:::i;:::-;2258:81;:::i;:::-;2249:90;;2359:5;2388:6;2381:5;2374:21;2422:4;2415:5;2411:16;2404:23;;2475:4;2467:6;2463:17;2455:6;2451:30;2504:3;2496:6;2493:15;2490:122;;;2523:79;;:::i;:::-;2490:122;2638:6;2621:220;2655:6;2650:3;2647:15;2621:220;;;2730:3;2759:37;2792:3;2780:10;2759:37;:::i;:::-;2754:3;2747:50;2826:4;2821:3;2817:14;2810:21;;2697:144;2681:4;2676:3;2672:14;2665:21;;2621:220;;;2625:21;2239:608;;2137:710;;;;;:::o;2870:370::-;2941:5;2990:3;2983:4;2975:6;2971:17;2967:27;2957:122;;2998:79;;:::i;:::-;2957:122;3115:6;3102:20;3140:94;3230:3;3222:6;3215:4;3207:6;3203:17;3140:94;:::i;:::-;3131:103;;2947:293;2870:370;;;;:::o;3246:539::-;3330:6;3379:2;3367:9;3358:7;3354:23;3350:32;3347:119;;;3385:79;;:::i;:::-;3347:119;3533:1;3522:9;3518:17;3505:31;3563:18;3555:6;3552:30;3549:117;;;3585:79;;:::i;:::-;3549:117;3690:78;3760:7;3751:6;3740:9;3736:22;3690:78;:::i;:::-;3680:88;;3476:302;3246:539;;;;:::o;3791:99::-;3843:6;3877:5;3871:12;3861:22;;3791:99;;;:::o;3896:169::-;3980:11;4014:6;4009:3;4002:19;4054:4;4049:3;4045:14;4030:29;;3896:169;;;;:::o;4071:307::-;4139:1;4149:113;4163:6;4160:1;4157:13;4149:113;;;4248:1;4243:3;4239:11;4233:18;4229:1;4224:3;4220:11;4213:39;4185:2;4182:1;4178:10;4173:15;;4149:113;;;4280:6;4277:1;4274:13;4271:101;;;4360:1;4351:6;4346:3;4342:16;4335:27;4271:101;4120:258;4071:307;;;:::o;4384:364::-;4472:3;4500:39;4533:5;4500:39;:::i;:::-;4555:71;4619:6;4614:3;4555:71;:::i;:::-;4548:78;;4635:52;4680:6;4675:3;4668:4;4661:5;4657:16;4635:52;:::i;:::-;4712:29;4734:6;4712:29;:::i;:::-;4707:3;4703:39;4696:46;;4476:272;4384:364;;;;:::o;4754:313::-;4867:4;4905:2;4894:9;4890:18;4882:26;;4954:9;4948:4;4944:20;4940:1;4929:9;4925:17;4918:47;4982:78;5055:4;5046:6;4982:78;:::i;:::-;4974:86;;4754:313;;;;:::o;5073:77::-;5110:7;5139:5;5128:16;;5073:77;;;:::o;5156:122::-;5229:24;5247:5;5229:24;:::i;:::-;5222:5;5219:35;5209:63;;5268:1;5265;5258:12;5209:63;5156:122;:::o;5284:139::-;5330:5;5368:6;5355:20;5346:29;;5384:33;5411:5;5384:33;:::i;:::-;5284:139;;;;:::o;5429:474::-;5497:6;5505;5554:2;5542:9;5533:7;5529:23;5525:32;5522:119;;;5560:79;;:::i;:::-;5522:119;5680:1;5705:53;5750:7;5741:6;5730:9;5726:22;5705:53;:::i;:::-;5695:63;;5651:117;5807:2;5833:53;5878:7;5869:6;5858:9;5854:22;5833:53;:::i;:::-;5823:63;;5778:118;5429:474;;;;;:::o;5909:90::-;5943:7;5986:5;5979:13;5972:21;5961:32;;5909:90;;;:::o;6005:109::-;6086:21;6101:5;6086:21;:::i;:::-;6081:3;6074:34;6005:109;;:::o;6120:210::-;6207:4;6245:2;6234:9;6230:18;6222:26;;6258:65;6320:1;6309:9;6305:17;6296:6;6258:65;:::i;:::-;6120:210;;;;:::o;6336:118::-;6423:24;6441:5;6423:24;:::i;:::-;6418:3;6411:37;6336:118;;:::o;6460:222::-;6553:4;6591:2;6580:9;6576:18;6568:26;;6604:71;6672:1;6661:9;6657:17;6648:6;6604:71;:::i;:::-;6460:222;;;;:::o;6688:619::-;6765:6;6773;6781;6830:2;6818:9;6809:7;6805:23;6801:32;6798:119;;;6836:79;;:::i;:::-;6798:119;6956:1;6981:53;7026:7;7017:6;7006:9;7002:22;6981:53;:::i;:::-;6971:63;;6927:117;7083:2;7109:53;7154:7;7145:6;7134:9;7130:22;7109:53;:::i;:::-;7099:63;;7054:118;7211:2;7237:53;7282:7;7273:6;7262:9;7258:22;7237:53;:::i;:::-;7227:63;;7182:118;6688:619;;;;;:::o;7313:86::-;7348:7;7388:4;7381:5;7377:16;7366:27;;7313:86;;;:::o;7405:112::-;7488:22;7504:5;7488:22;:::i;:::-;7483:3;7476:35;7405:112;;:::o;7523:214::-;7612:4;7650:2;7639:9;7635:18;7627:26;;7663:67;7727:1;7716:9;7712:17;7703:6;7663:67;:::i;:::-;7523:214;;;;:::o;7743:329::-;7802:6;7851:2;7839:9;7830:7;7826:23;7822:32;7819:119;;;7857:79;;:::i;:::-;7819:119;7977:1;8002:53;8047:7;8038:6;8027:9;8023:22;8002:53;:::i;:::-;7992:63;;7948:117;7743:329;;;;:::o;8078:::-;8137:6;8186:2;8174:9;8165:7;8161:23;8157:32;8154:119;;;8192:79;;:::i;:::-;8154:119;8312:1;8337:53;8382:7;8373:6;8362:9;8358:22;8337:53;:::i;:::-;8327:63;;8283:117;8078:329;;;;:::o;8413:118::-;8500:24;8518:5;8500:24;:::i;:::-;8495:3;8488:37;8413:118;;:::o;8537:222::-;8630:4;8668:2;8657:9;8653:18;8645:26;;8681:71;8749:1;8738:9;8734:17;8725:6;8681:71;:::i;:::-;8537:222;;;;:::o;8765:474::-;8833:6;8841;8890:2;8878:9;8869:7;8865:23;8861:32;8858:119;;;8896:79;;:::i;:::-;8858:119;9016:1;9041:53;9086:7;9077:6;9066:9;9062:22;9041:53;:::i;:::-;9031:63;;8987:117;9143:2;9169:53;9214:7;9205:6;9194:9;9190:22;9169:53;:::i;:::-;9159:63;;9114:118;8765:474;;;;;:::o;9245:182::-;9385:34;9381:1;9373:6;9369:14;9362:58;9245:182;:::o;9433:366::-;9575:3;9596:67;9660:2;9655:3;9596:67;:::i;:::-;9589:74;;9672:93;9761:3;9672:93;:::i;:::-;9790:2;9785:3;9781:12;9774:19;;9433:366;;;:::o;9805:419::-;9971:4;10009:2;9998:9;9994:18;9986:26;;10058:9;10052:4;10048:20;10044:1;10033:9;10029:17;10022:47;10086:131;10212:4;10086:131;:::i;:::-;10078:139;;9805:419;;;:::o;10230:180::-;10278:77;10275:1;10268:88;10375:4;10372:1;10365:15;10399:4;10396:1;10389:15;10416:180;10464:77;10461:1;10454:88;10561:4;10558:1;10551:15;10585:4;10582:1;10575:15;10602:233;10641:3;10664:24;10682:5;10664:24;:::i;:::-;10655:33;;10710:66;10703:5;10700:77;10697:103;;;10780:18;;:::i;:::-;10697:103;10827:1;10820:5;10816:13;10809:20;;10602:233;;;:::o;10841:173::-;10981:25;10977:1;10969:6;10965:14;10958:49;10841:173;:::o;11020:366::-;11162:3;11183:67;11247:2;11242:3;11183:67;:::i;:::-;11176:74;;11259:93;11348:3;11259:93;:::i;:::-;11377:2;11372:3;11368:12;11361:19;;11020:366;;;:::o;11392:419::-;11558:4;11596:2;11585:9;11581:18;11573:26;;11645:9;11639:4;11635:20;11631:1;11620:9;11616:17;11609:47;11673:131;11799:4;11673:131;:::i;:::-;11665:139;;11392:419;;;:::o;11817:143::-;11874:5;11905:6;11899:13;11890:22;;11921:33;11948:5;11921:33;:::i;:::-;11817:143;;;;:::o;11966:351::-;12036:6;12085:2;12073:9;12064:7;12060:23;12056:32;12053:119;;;12091:79;;:::i;:::-;12053:119;12211:1;12236:64;12292:7;12283:6;12272:9;12268:22;12236:64;:::i;:::-;12226:74;;12182:128;11966:351;;;;:::o;12323:332::-;12444:4;12482:2;12471:9;12467:18;12459:26;;12495:71;12563:1;12552:9;12548:17;12539:6;12495:71;:::i;:::-;12576:72;12644:2;12633:9;12629:18;12620:6;12576:72;:::i;:::-;12323:332;;;;;:::o;12661:::-;12782:4;12820:2;12809:9;12805:18;12797:26;;12833:71;12901:1;12890:9;12886:17;12877:6;12833:71;:::i;:::-;12914:72;12982:2;12971:9;12967:18;12958:6;12914:72;:::i;:::-;12661:332;;;;;:::o;12999:116::-;13069:21;13084:5;13069:21;:::i;:::-;13062:5;13059:32;13049:60;;13105:1;13102;13095:12;13049:60;12999:116;:::o;13121:137::-;13175:5;13206:6;13200:13;13191:22;;13222:30;13246:5;13222:30;:::i;:::-;13121:137;;;;:::o;13264:345::-;13331:6;13380:2;13368:9;13359:7;13355:23;13351:32;13348:119;;;13386:79;;:::i;:::-;13348:119;13506:1;13531:61;13584:7;13575:6;13564:9;13560:22;13531:61;:::i;:::-;13521:71;;13477:125;13264:345;;;;:::o;13615:85::-;13660:7;13689:5;13678:16;;13615:85;;;:::o;13706:60::-;13734:3;13755:5;13748:12;;13706:60;;;:::o;13772:158::-;13830:9;13863:61;13881:42;13890:32;13916:5;13890:32;:::i;:::-;13881:42;:::i;:::-;13863:61;:::i;:::-;13850:74;;13772:158;;;:::o;13936:147::-;14031:45;14070:5;14031:45;:::i;:::-;14026:3;14019:58;13936:147;;:::o;14089:807::-;14338:4;14376:3;14365:9;14361:19;14353:27;;14390:71;14458:1;14447:9;14443:17;14434:6;14390:71;:::i;:::-;14471:72;14539:2;14528:9;14524:18;14515:6;14471:72;:::i;:::-;14553:80;14629:2;14618:9;14614:18;14605:6;14553:80;:::i;:::-;14643;14719:2;14708:9;14704:18;14695:6;14643:80;:::i;:::-;14733:73;14801:3;14790:9;14786:19;14777:6;14733:73;:::i;:::-;14816;14884:3;14873:9;14869:19;14860:6;14816:73;:::i;:::-;14089:807;;;;;;;;;:::o;14902:143::-;14959:5;14990:6;14984:13;14975:22;;15006:33;15033:5;15006:33;:::i;:::-;14902:143;;;;:::o;15051:663::-;15139:6;15147;15155;15204:2;15192:9;15183:7;15179:23;15175:32;15172:119;;;15210:79;;:::i;:::-;15172:119;15330:1;15355:64;15411:7;15402:6;15391:9;15387:22;15355:64;:::i;:::-;15345:74;;15301:128;15468:2;15494:64;15550:7;15541:6;15530:9;15526:22;15494:64;:::i;:::-;15484:74;;15439:129;15607:2;15633:64;15689:7;15680:6;15669:9;15665:22;15633:64;:::i;:::-;15623:74;;15578:129;15051:663;;;;;:::o;15720:223::-;15860:34;15856:1;15848:6;15844:14;15837:58;15929:6;15924:2;15916:6;15912:15;15905:31;15720:223;:::o;15949:366::-;16091:3;16112:67;16176:2;16171:3;16112:67;:::i;:::-;16105:74;;16188:93;16277:3;16188:93;:::i;:::-;16306:2;16301:3;16297:12;16290:19;;15949:366;;;:::o;16321:419::-;16487:4;16525:2;16514:9;16510:18;16502:26;;16574:9;16568:4;16564:20;16560:1;16549:9;16545:17;16538:47;16602:131;16728:4;16602:131;:::i;:::-;16594:139;;16321:419;;;:::o;16746:221::-;16886:34;16882:1;16874:6;16870:14;16863:58;16955:4;16950:2;16942:6;16938:15;16931:29;16746:221;:::o;16973:366::-;17115:3;17136:67;17200:2;17195:3;17136:67;:::i;:::-;17129:74;;17212:93;17301:3;17212:93;:::i;:::-;17330:2;17325:3;17321:12;17314:19;;16973:366;;;:::o;17345:419::-;17511:4;17549:2;17538:9;17534:18;17526:26;;17598:9;17592:4;17588:20;17584:1;17573:9;17569:17;17562:47;17626:131;17752:4;17626:131;:::i;:::-;17618:139;;17345:419;;;:::o;17770:224::-;17910:34;17906:1;17898:6;17894:14;17887:58;17979:7;17974:2;17966:6;17962:15;17955:32;17770:224;:::o;18000:366::-;18142:3;18163:67;18227:2;18222:3;18163:67;:::i;:::-;18156:74;;18239:93;18328:3;18239:93;:::i;:::-;18357:2;18352:3;18348:12;18341:19;;18000:366;;;:::o;18372:419::-;18538:4;18576:2;18565:9;18561:18;18553:26;;18625:9;18619:4;18615:20;18611:1;18600:9;18596:17;18589:47;18653:131;18779:4;18653:131;:::i;:::-;18645:139;;18372:419;;;:::o;18797:222::-;18937:34;18933:1;18925:6;18921:14;18914:58;19006:5;19001:2;18993:6;18989:15;18982:30;18797:222;:::o;19025:366::-;19167:3;19188:67;19252:2;19247:3;19188:67;:::i;:::-;19181:74;;19264:93;19353:3;19264:93;:::i;:::-;19382:2;19377:3;19373:12;19366:19;;19025:366;;;:::o;19397:419::-;19563:4;19601:2;19590:9;19586:18;19578:26;;19650:9;19644:4;19640:20;19636:1;19625:9;19621:17;19614:47;19678:131;19804:4;19678:131;:::i;:::-;19670:139;;19397:419;;;:::o;19822:228::-;19962:34;19958:1;19950:6;19946:14;19939:58;20031:11;20026:2;20018:6;20014:15;20007:36;19822:228;:::o;20056:366::-;20198:3;20219:67;20283:2;20278:3;20219:67;:::i;:::-;20212:74;;20295:93;20384:3;20295:93;:::i;:::-;20413:2;20408:3;20404:12;20397:19;;20056:366;;;:::o;20428:419::-;20594:4;20632:2;20621:9;20617:18;20609:26;;20681:9;20675:4;20671:20;20667:1;20656:9;20652:17;20645:47;20709:131;20835:4;20709:131;:::i;:::-;20701:139;;20428:419;;;:::o;20853:177::-;20993:29;20989:1;20981:6;20977:14;20970:53;20853:177;:::o;21036:366::-;21178:3;21199:67;21263:2;21258:3;21199:67;:::i;:::-;21192:74;;21275:93;21364:3;21275:93;:::i;:::-;21393:2;21388:3;21384:12;21377:19;;21036:366;;;:::o;21408:419::-;21574:4;21612:2;21601:9;21597:18;21589:26;;21661:9;21655:4;21651:20;21647:1;21636:9;21632:17;21625:47;21689:131;21815:4;21689:131;:::i;:::-;21681:139;;21408:419;;;:::o;21833:176::-;21973:28;21969:1;21961:6;21957:14;21950:52;21833:176;:::o;22015:366::-;22157:3;22178:67;22242:2;22237:3;22178:67;:::i;:::-;22171:74;;22254:93;22343:3;22254:93;:::i;:::-;22372:2;22367:3;22363:12;22356:19;;22015:366;;;:::o;22387:419::-;22553:4;22591:2;22580:9;22576:18;22568:26;;22640:9;22634:4;22630:20;22626:1;22615:9;22611:17;22604:47;22668:131;22794:4;22668:131;:::i;:::-;22660:139;;22387:419;;;:::o;22812:169::-;22952:21;22948:1;22940:6;22936:14;22929:45;22812:169;:::o;22987:366::-;23129:3;23150:67;23214:2;23209:3;23150:67;:::i;:::-;23143:74;;23226:93;23315:3;23226:93;:::i;:::-;23344:2;23339:3;23335:12;23328:19;;22987:366;;;:::o;23359:419::-;23525:4;23563:2;23552:9;23548:18;23540:26;;23612:9;23606:4;23602:20;23598:1;23587:9;23583:17;23576:47;23640:131;23766:4;23640:131;:::i;:::-;23632:139;;23359:419;;;:::o;23784:305::-;23824:3;23843:20;23861:1;23843:20;:::i;:::-;23838:25;;23877:20;23895:1;23877:20;:::i;:::-;23872:25;;24031:1;23963:66;23959:74;23956:1;23953:81;23950:107;;;24037:18;;:::i;:::-;23950:107;24081:1;24078;24074:9;24067:16;;23784:305;;;;:::o;24095:178::-;24235:30;24231:1;24223:6;24219:14;24212:54;24095:178;:::o;24279:366::-;24421:3;24442:67;24506:2;24501:3;24442:67;:::i;:::-;24435:74;;24518:93;24607:3;24518:93;:::i;:::-;24636:2;24631:3;24627:12;24620:19;;24279:366;;;:::o;24651:419::-;24817:4;24855:2;24844:9;24840:18;24832:26;;24904:9;24898:4;24894:20;24890:1;24879:9;24875:17;24868:47;24932:131;25058:4;24932:131;:::i;:::-;24924:139;;24651:419;;;:::o;25076:191::-;25116:4;25136:20;25154:1;25136:20;:::i;:::-;25131:25;;25170:20;25188:1;25170:20;:::i;:::-;25165:25;;25209:1;25206;25203:8;25200:34;;;25214:18;;:::i;:::-;25200:34;25259:1;25256;25252:9;25244:17;;25076:191;;;;:::o;25273:180::-;25321:77;25318:1;25311:88;25418:4;25415:1;25408:15;25442:4;25439:1;25432:15;25459:185;25499:1;25516:20;25534:1;25516:20;:::i;:::-;25511:25;;25550:20;25568:1;25550:20;:::i;:::-;25545:25;;25589:1;25579:35;;25594:18;;:::i;:::-;25579:35;25636:1;25633;25629:9;25624:14;;25459:185;;;;:::o;25650:114::-;25717:6;25751:5;25745:12;25735:22;;25650:114;;;:::o;25770:184::-;25869:11;25903:6;25898:3;25891:19;25943:4;25938:3;25934:14;25919:29;;25770:184;;;;:::o;25960:132::-;26027:4;26050:3;26042:11;;26080:4;26075:3;26071:14;26063:22;;25960:132;;;:::o;26098:108::-;26175:24;26193:5;26175:24;:::i;:::-;26170:3;26163:37;26098:108;;:::o;26212:179::-;26281:10;26302:46;26344:3;26336:6;26302:46;:::i;:::-;26380:4;26375:3;26371:14;26357:28;;26212:179;;;;:::o;26397:113::-;26467:4;26499;26494:3;26490:14;26482:22;;26397:113;;;:::o;26546:732::-;26665:3;26694:54;26742:5;26694:54;:::i;:::-;26764:86;26843:6;26838:3;26764:86;:::i;:::-;26757:93;;26874:56;26924:5;26874:56;:::i;:::-;26953:7;26984:1;26969:284;26994:6;26991:1;26988:13;26969:284;;;27070:6;27064:13;27097:63;27156:3;27141:13;27097:63;:::i;:::-;27090:70;;27183:60;27236:6;27183:60;:::i;:::-;27173:70;;27029:224;27016:1;27013;27009:9;27004:14;;26969:284;;;26973:14;27269:3;27262:10;;26670:608;;;26546:732;;;;:::o;27284:831::-;27547:4;27585:3;27574:9;27570:19;27562:27;;27599:71;27667:1;27656:9;27652:17;27643:6;27599:71;:::i;:::-;27680:80;27756:2;27745:9;27741:18;27732:6;27680:80;:::i;:::-;27807:9;27801:4;27797:20;27792:2;27781:9;27777:18;27770:48;27835:108;27938:4;27929:6;27835:108;:::i;:::-;27827:116;;27953:72;28021:2;28010:9;28006:18;27997:6;27953:72;:::i;:::-;28035:73;28103:3;28092:9;28088:19;28079:6;28035:73;:::i;:::-;27284:831;;;;;;;;:::o;28121:348::-;28161:7;28184:20;28202:1;28184:20;:::i;:::-;28179:25;;28218:20;28236:1;28218:20;:::i;:::-;28213:25;;28406:1;28338:66;28334:74;28331:1;28328:81;28323:1;28316:9;28309:17;28305:105;28302:131;;;28413:18;;:::i;:::-;28302:131;28461:1;28458;28454:9;28443:20;;28121:348;;;;:::o;28475:220::-;28615:34;28611:1;28603:6;28599:14;28592:58;28684:3;28679:2;28671:6;28667:15;28660:28;28475:220;:::o;28701:366::-;28843:3;28864:67;28928:2;28923:3;28864:67;:::i;:::-;28857:74;;28940:93;29029:3;28940:93;:::i;:::-;29058:2;29053:3;29049:12;29042:19;;28701:366;;;:::o;29073:419::-;29239:4;29277:2;29266:9;29262:18;29254:26;;29326:9;29320:4;29316:20;29312:1;29301:9;29297:17;29290:47;29354:131;29480:4;29354:131;:::i;:::-;29346:139;;29073:419;;;:::o;29498:177::-;29638:29;29634:1;29626:6;29622:14;29615:53;29498:177;:::o;29681:366::-;29823:3;29844:67;29908:2;29903:3;29844:67;:::i;:::-;29837:74;;29920:93;30009:3;29920:93;:::i;:::-;30038:2;30033:3;30029:12;30022:19;;29681:366;;;:::o;30053:419::-;30219:4;30257:2;30246:9;30242:18;30234:26;;30306:9;30300:4;30296:20;30292:1;30281:9;30277:17;30270:47;30334:131;30460:4;30334:131;:::i;:::-;30326:139;;30053:419;;;:::o

Swarm Source

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