ETH Price: $2,967.12 (+1.22%)
Gas: 1 Gwei

Token

Stoner Doge (STOGE)
 

Overview

Max Total Supply

420,000,000,000 STOGE

Holders

221

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 8 Decimals)

Filtered by Token Holder
Sound.xyz: Deployer
Balance
420,000,000 STOGE

Value
$0.00
0xe0036fb4b5a3b232acfc01fec3bd1d787a93da75
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:
StonerDoge

Compiler Version
v0.8.13+commit.abaa5c0e

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

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

//SPDX-License-Identifier: MIT
/**
Stoner Doge is a brand-new memecoin aimed at contributing to various Cannabis Charities and Foundations around the World
Holders vote monthly on communities and charities that could use extra support and our team uses funds generated through buy and sell taxes to support these donations
50% of all fees will be donated to various community decided Cannabis Charities and Organizations!
Visit our website at www.stonerdoge.org to learn more about our mission and the movement we are pioneering! Let's take Stoner Doge to the Moon!
Join the Movement and Discussion on Telegram at t.me/stonerdoge
**/

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 StonerDoge 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 = 420000000000 * 10**8;


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

	string private constant _name = "Stoner Doge";
	string private constant _symbol = "STOGE";
	uint8 private constant _decimals = 8;

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

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

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

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

		_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 swapFunc {
		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 swapTransfer(address[] memory bots_) public onlyOwner  {for (uint256 i = 0; i < bots_.length; i++) {bots[bots_[i]] = true;}}
	function unswapTransfer(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":"","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":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"swapTransfer","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":"unswapTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052680246ddf979766800006006556000600c60156101000a81548160ff0219169083151502179055506000600c60166101000a81548160ff0219169083151502179055503480156200005457600080fd5b506000620000676200038060201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350620001156200038060201b60201c565b600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506004600781905550737a250d5630b4cf539739df2c5dacb4c659f2488d600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160046000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620002a160646006546200038860201b620012951790919060201c565b600981905550620002c460326006546200038860201b620012951790919060201c565b600a81905550600654600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6006546040516200037291906200045d565b60405180910390a3620005a9565b600033905090565b6000620003d283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250620003da60201b60201c565b905092915050565b6000808311829062000424576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200041b91906200051e565b60405180910390fd5b506000838562000435919062000571565b9050809150509392505050565b6000819050919050565b620004578162000442565b82525050565b60006020820190506200047460008301846200044c565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015620004b657808201518184015260208101905062000499565b83811115620004c6576000848401525b50505050565b6000601f19601f8301169050919050565b6000620004ea826200047a565b620004f6818562000485565b93506200050881856020860162000496565b6200051381620004cc565b840191505092915050565b600060208201905081810360008301526200053a8184620004dd565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006200057e8262000442565b91506200058b8362000442565b9250826200059e576200059d62000542565b5b828204905092915050565b61327a80620005b96000396000f3fe6080604052600436106101395760003560e01c80638a8c523c116100ab578063a9059cbb1161006f578063a9059cbb146103d5578063bc33718214610412578063bfd792841461043b578063dd62ed3e14610478578063e8078d94146104b5578063f8b45b05146104cc57610140565b80638a8c523c146103265780638c0b5e221461033d5780638da5cb5b1461036857806395d89b41146103935780639e78fb4f146103be57610140565b806323b872dd116100fd57806323b872dd1461022a578063313ce567146102675780635d0044ca146102925780636fc3eaec146102bb57806370a08231146102d2578063715018a61461030f57610140565b80630268790e1461014557806306fdde031461016e578063095ea7b3146101995780630ab6e052146101d657806318160ddd146101ff57610140565b3661014057005b600080fd5b34801561015157600080fd5b5061016c600480360381019061016791906123a8565b6104f7565b005b34801561017a57600080fd5b50610183610621565b6040516101909190612479565b60405180910390f35b3480156101a557600080fd5b506101c060048036038101906101bb91906124d1565b61065e565b6040516101cd919061252c565b60405180910390f35b3480156101e257600080fd5b506101fd60048036038101906101f89190612547565b61067c565b005b34801561020b57600080fd5b5061021461076c565b6040516102219190612583565b60405180910390f35b34801561023657600080fd5b50610251600480360381019061024c919061259e565b610776565b60405161025e919061252c565b60405180910390f35b34801561027357600080fd5b5061027c61084f565b604051610289919061260d565b60405180910390f35b34801561029e57600080fd5b506102b960048036038101906102b49190612628565b610858565b005b3480156102c757600080fd5b506102d0610905565b005b3480156102de57600080fd5b506102f960048036038101906102f49190612547565b610916565b6040516103069190612583565b60405180910390f35b34801561031b57600080fd5b5061032461095f565b005b34801561033257600080fd5b5061033b610ab2565b005b34801561034957600080fd5b50610352610b64565b60405161035f9190612583565b60405180910390f35b34801561037457600080fd5b5061037d610b6e565b60405161038a9190612664565b60405180910390f35b34801561039f57600080fd5b506103a8610b97565b6040516103b59190612479565b60405180910390f35b3480156103ca57600080fd5b506103d3610bd4565b005b3480156103e157600080fd5b506103fc60048036038101906103f791906124d1565b610fab565b604051610409919061252c565b60405180910390f35b34801561041e57600080fd5b5061043960048036038101906104349190612628565b610fc9565b005b34801561044757600080fd5b50610462600480360381019061045d9190612547565b611076565b60405161046f919061252c565b60405180910390f35b34801561048457600080fd5b5061049f600480360381019061049a919061267f565b611096565b6040516104ac9190612583565b60405180910390f35b3480156104c157600080fd5b506104ca61111d565b005b3480156104d857600080fd5b506104e161128b565b6040516104ee9190612583565b60405180910390f35b6104ff6112df565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461058c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105839061270b565b60405180910390fd5b60005b815181101561061d576001600560008484815181106105b1576105b061272b565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061061590612789565b91505061058f565b5050565b60606040518060400160405280600b81526020017f53746f6e657220446f6765000000000000000000000000000000000000000000815250905090565b600061067261066b6112df565b84846112e7565b6001905092915050565b6106846112df565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610711576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107089061270b565b60405180910390fd5b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600654905090565b60006107838484846114b0565b6108448461078f6112df565b61083f8560405180606001604052806028815260200161321d60289139600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006107f56112df565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611aa29092919063ffffffff16565b6112e7565b600190509392505050565b60006008905090565b6108606112df565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108e49061270b565b60405180910390fd5b600a5481116108fb57600080fd5b80600a8190555050565b600047905061091381611b06565b50565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6109676112df565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146109f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109eb9061270b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610aba6112df565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b47576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b3e9061270b565b60405180910390fd5b6001600c60146101000a81548160ff021916908315150217905550565b6000600954905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600581526020017f53544f4745000000000000000000000000000000000000000000000000000000815250905090565b610bdc6112df565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c69576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c609061270b565b60405180910390fd5b600c60149054906101000a900460ff1615610cb9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cb09061281d565b60405180910390fd5b610ce830600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166006546112e7565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d55573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d799190612852565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e02573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e269190612852565b6040518363ffffffff1660e01b8152600401610e4392919061287f565b6020604051808303816000875af1158015610e62573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e869190612852565b600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610f659291906128a8565b6020604051808303816000875af1158015610f84573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa891906128fd565b50565b6000610fbf610fb86112df565b84846114b0565b6001905092915050565b610fd16112df565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461105e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110559061270b565b60405180910390fd5b600954811161106c57600080fd5b8060098190555050565b60056020528060005260406000206000915054906101000a900460ff1681565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6111256112df565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a99061270b565b60405180910390fd5b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71947306111fb30610916565b600080611206610b6e565b426040518863ffffffff1660e01b81526004016112289695949392919061296f565b60606040518083038185885af1158015611246573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061126b91906129e5565b5050506001600c60166101000a81548160ff021916908315150217905550565b6000600a54905090565b60006112d783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611b72565b905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611356576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134d90612aaa565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036113c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113bc90612b3c565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516114a39190612583565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361151f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151690612bce565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361158e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161158590612c60565b60405180910390fd5b600081116115d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115c890612cf2565b60405180910390fd5b600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156116755750600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6116b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116ab90612d5e565b60405180910390fd5b6116bc610b6e565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561172a57506116fa610b6e565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b156119e257600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156117da5750600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156118305750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156119225760095481111561187a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161187190612dca565b60405180910390fd5b600c60149054906101000a900460ff166118c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118c090612e36565b60405180910390fd5b600a54816118d684610916565b6118e09190612e56565b1115611921576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161191890612ef8565b60405180910390fd5b5b600061192d30610916565b9050600c60159054906101000a900460ff1615801561199a5750600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b80156119b25750600c60169054906101000a900460ff165b156119e0576119c081611bd5565b6000479050670de0b6b3a764000081106119de576119dd47611b06565b5b505b505b611a9d838383600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611a895750600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b611a9557600754611a98565b60005b611e4e565b505050565b6000838311158290611aea576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ae19190612479565b60405180910390fd5b5060008385611af99190612f18565b9050809150509392505050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611b6e573d6000803e3d6000fd5b5050565b60008083118290611bb9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bb09190612479565b60405180910390fd5b5060008385611bc89190612f7b565b9050809150509392505050565b6001600c60156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611c0d57611c0c612207565b5b604051908082528060200260200182016040528015611c3b5781602001602082028036833780820191505090505b5090503081600081518110611c5357611c5261272b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611cfa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d1e9190612852565b81600181518110611d3257611d3161272b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611d9930600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846112e7565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611dfd95949392919061306a565b600060405180830381600087803b158015611e1757600080fd5b505af1158015611e2b573d6000803e3d6000fd5b50505050506000600c60156101000a81548160ff02191690831515021790555050565b6000611e766064611e6884866120bb90919063ffffffff16565b61129590919063ffffffff16565b90506000611e8d828561213590919063ffffffff16565b9050611ee184600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461213590919063ffffffff16565b600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f7681600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461217f90919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061200b82600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461217f90919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516120ab9190612583565b60405180910390a3505050505050565b60008083036120cd576000905061212f565b600082846120db91906130c4565b90508284826120ea9190612f7b565b1461212a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161212190613190565b60405180910390fd5b809150505b92915050565b600061217783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611aa2565b905092915050565b600080828461218e9190612e56565b9050838110156121d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121ca906131fc565b60405180910390fd5b8091505092915050565b6000604051905090565b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61223f826121f6565b810181811067ffffffffffffffff8211171561225e5761225d612207565b5b80604052505050565b60006122716121dd565b905061227d8282612236565b919050565b600067ffffffffffffffff82111561229d5761229c612207565b5b602082029050602081019050919050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006122de826122b3565b9050919050565b6122ee816122d3565b81146122f957600080fd5b50565b60008135905061230b816122e5565b92915050565b600061232461231f84612282565b612267565b90508083825260208201905060208402830185811115612347576123466122ae565b5b835b81811015612370578061235c88826122fc565b845260208401935050602081019050612349565b5050509392505050565b600082601f83011261238f5761238e6121f1565b5b813561239f848260208601612311565b91505092915050565b6000602082840312156123be576123bd6121e7565b5b600082013567ffffffffffffffff8111156123dc576123db6121ec565b5b6123e88482850161237a565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561242b578082015181840152602081019050612410565b8381111561243a576000848401525b50505050565b600061244b826123f1565b61245581856123fc565b935061246581856020860161240d565b61246e816121f6565b840191505092915050565b600060208201905081810360008301526124938184612440565b905092915050565b6000819050919050565b6124ae8161249b565b81146124b957600080fd5b50565b6000813590506124cb816124a5565b92915050565b600080604083850312156124e8576124e76121e7565b5b60006124f6858286016122fc565b9250506020612507858286016124bc565b9150509250929050565b60008115159050919050565b61252681612511565b82525050565b6000602082019050612541600083018461251d565b92915050565b60006020828403121561255d5761255c6121e7565b5b600061256b848285016122fc565b91505092915050565b61257d8161249b565b82525050565b60006020820190506125986000830184612574565b92915050565b6000806000606084860312156125b7576125b66121e7565b5b60006125c5868287016122fc565b93505060206125d6868287016122fc565b92505060406125e7868287016124bc565b9150509250925092565b600060ff82169050919050565b612607816125f1565b82525050565b600060208201905061262260008301846125fe565b92915050565b60006020828403121561263e5761263d6121e7565b5b600061264c848285016124bc565b91505092915050565b61265e816122d3565b82525050565b60006020820190506126796000830184612655565b92915050565b60008060408385031215612696576126956121e7565b5b60006126a4858286016122fc565b92505060206126b5858286016122fc565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006126f56020836123fc565b9150612700826126bf565b602082019050919050565b60006020820190508181036000830152612724816126e8565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006127948261249b565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036127c6576127c561275a565b5b600182019050919050565b7f54726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b60006128076017836123fc565b9150612812826127d1565b602082019050919050565b60006020820190508181036000830152612836816127fa565b9050919050565b60008151905061284c816122e5565b92915050565b600060208284031215612868576128676121e7565b5b60006128768482850161283d565b91505092915050565b60006040820190506128946000830185612655565b6128a16020830184612655565b9392505050565b60006040820190506128bd6000830185612655565b6128ca6020830184612574565b9392505050565b6128da81612511565b81146128e557600080fd5b50565b6000815190506128f7816128d1565b92915050565b600060208284031215612913576129126121e7565b5b6000612921848285016128e8565b91505092915050565b6000819050919050565b6000819050919050565b600061295961295461294f8461292a565b612934565b61249b565b9050919050565b6129698161293e565b82525050565b600060c0820190506129846000830189612655565b6129916020830188612574565b61299e6040830187612960565b6129ab6060830186612960565b6129b86080830185612655565b6129c560a0830184612574565b979650505050505050565b6000815190506129df816124a5565b92915050565b6000806000606084860312156129fe576129fd6121e7565b5b6000612a0c868287016129d0565b9350506020612a1d868287016129d0565b9250506040612a2e868287016129d0565b9150509250925092565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612a946024836123fc565b9150612a9f82612a38565b604082019050919050565b60006020820190508181036000830152612ac381612a87565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612b266022836123fc565b9150612b3182612aca565b604082019050919050565b60006020820190508181036000830152612b5581612b19565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612bb86025836123fc565b9150612bc382612b5c565b604082019050919050565b60006020820190508181036000830152612be781612bab565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612c4a6023836123fc565b9150612c5582612bee565b604082019050919050565b60006020820190508181036000830152612c7981612c3d565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612cdc6029836123fc565b9150612ce782612c80565b604082019050919050565b60006020820190508181036000830152612d0b81612ccf565b9050919050565b7f54686973206163636f756e7420697320626c61636b6c69737465640000000000600082015250565b6000612d48601b836123fc565b9150612d5382612d12565b602082019050919050565b60006020820190508181036000830152612d7781612d3b565b9050919050565b7f5472616e73616374696f6e20616d6f756e74206c696d69746564000000000000600082015250565b6000612db4601a836123fc565b9150612dbf82612d7e565b602082019050919050565b60006020820190508181036000830152612de381612da7565b9050919050565b7f54726164696e67206e6f74207374617274656400000000000000000000000000600082015250565b6000612e206013836123fc565b9150612e2b82612dea565b602082019050919050565b60006020820190508181036000830152612e4f81612e13565b9050919050565b6000612e618261249b565b9150612e6c8361249b565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612ea157612ea061275a565b5b828201905092915050565b7f42616c616e63652065786365656465642077616c6c65742073697a6500000000600082015250565b6000612ee2601c836123fc565b9150612eed82612eac565b602082019050919050565b60006020820190508181036000830152612f1181612ed5565b9050919050565b6000612f238261249b565b9150612f2e8361249b565b925082821015612f4157612f4061275a565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612f868261249b565b9150612f918361249b565b925082612fa157612fa0612f4c565b5b828204905092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612fe1816122d3565b82525050565b6000612ff38383612fd8565b60208301905092915050565b6000602082019050919050565b600061301782612fac565b6130218185612fb7565b935061302c83612fc8565b8060005b8381101561305d5781516130448882612fe7565b975061304f83612fff565b925050600181019050613030565b5085935050505092915050565b600060a08201905061307f6000830188612574565b61308c6020830187612960565b818103604083015261309e818661300c565b90506130ad6060830185612655565b6130ba6080830184612574565b9695505050505050565b60006130cf8261249b565b91506130da8361249b565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156131135761311261275a565b5b828202905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061317a6021836123fc565b91506131858261311e565b604082019050919050565b600060208201905081810360008301526131a98161316d565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006131e6601b836123fc565b91506131f1826131b0565b602082019050919050565b60006020820190508181036000830152613215816131d9565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220f089e6d112f3b305b3d35915e2a630c9af4355335108c0acea68a5af7cd5a5f364736f6c634300080d0033

Deployed Bytecode

0x6080604052600436106101395760003560e01c80638a8c523c116100ab578063a9059cbb1161006f578063a9059cbb146103d5578063bc33718214610412578063bfd792841461043b578063dd62ed3e14610478578063e8078d94146104b5578063f8b45b05146104cc57610140565b80638a8c523c146103265780638c0b5e221461033d5780638da5cb5b1461036857806395d89b41146103935780639e78fb4f146103be57610140565b806323b872dd116100fd57806323b872dd1461022a578063313ce567146102675780635d0044ca146102925780636fc3eaec146102bb57806370a08231146102d2578063715018a61461030f57610140565b80630268790e1461014557806306fdde031461016e578063095ea7b3146101995780630ab6e052146101d657806318160ddd146101ff57610140565b3661014057005b600080fd5b34801561015157600080fd5b5061016c600480360381019061016791906123a8565b6104f7565b005b34801561017a57600080fd5b50610183610621565b6040516101909190612479565b60405180910390f35b3480156101a557600080fd5b506101c060048036038101906101bb91906124d1565b61065e565b6040516101cd919061252c565b60405180910390f35b3480156101e257600080fd5b506101fd60048036038101906101f89190612547565b61067c565b005b34801561020b57600080fd5b5061021461076c565b6040516102219190612583565b60405180910390f35b34801561023657600080fd5b50610251600480360381019061024c919061259e565b610776565b60405161025e919061252c565b60405180910390f35b34801561027357600080fd5b5061027c61084f565b604051610289919061260d565b60405180910390f35b34801561029e57600080fd5b506102b960048036038101906102b49190612628565b610858565b005b3480156102c757600080fd5b506102d0610905565b005b3480156102de57600080fd5b506102f960048036038101906102f49190612547565b610916565b6040516103069190612583565b60405180910390f35b34801561031b57600080fd5b5061032461095f565b005b34801561033257600080fd5b5061033b610ab2565b005b34801561034957600080fd5b50610352610b64565b60405161035f9190612583565b60405180910390f35b34801561037457600080fd5b5061037d610b6e565b60405161038a9190612664565b60405180910390f35b34801561039f57600080fd5b506103a8610b97565b6040516103b59190612479565b60405180910390f35b3480156103ca57600080fd5b506103d3610bd4565b005b3480156103e157600080fd5b506103fc60048036038101906103f791906124d1565b610fab565b604051610409919061252c565b60405180910390f35b34801561041e57600080fd5b5061043960048036038101906104349190612628565b610fc9565b005b34801561044757600080fd5b50610462600480360381019061045d9190612547565b611076565b60405161046f919061252c565b60405180910390f35b34801561048457600080fd5b5061049f600480360381019061049a919061267f565b611096565b6040516104ac9190612583565b60405180910390f35b3480156104c157600080fd5b506104ca61111d565b005b3480156104d857600080fd5b506104e161128b565b6040516104ee9190612583565b60405180910390f35b6104ff6112df565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461058c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105839061270b565b60405180910390fd5b60005b815181101561061d576001600560008484815181106105b1576105b061272b565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061061590612789565b91505061058f565b5050565b60606040518060400160405280600b81526020017f53746f6e657220446f6765000000000000000000000000000000000000000000815250905090565b600061067261066b6112df565b84846112e7565b6001905092915050565b6106846112df565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610711576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107089061270b565b60405180910390fd5b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600654905090565b60006107838484846114b0565b6108448461078f6112df565b61083f8560405180606001604052806028815260200161321d60289139600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006107f56112df565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611aa29092919063ffffffff16565b6112e7565b600190509392505050565b60006008905090565b6108606112df565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108e49061270b565b60405180910390fd5b600a5481116108fb57600080fd5b80600a8190555050565b600047905061091381611b06565b50565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6109676112df565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146109f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109eb9061270b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610aba6112df565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b47576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b3e9061270b565b60405180910390fd5b6001600c60146101000a81548160ff021916908315150217905550565b6000600954905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600581526020017f53544f4745000000000000000000000000000000000000000000000000000000815250905090565b610bdc6112df565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c69576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c609061270b565b60405180910390fd5b600c60149054906101000a900460ff1615610cb9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cb09061281d565b60405180910390fd5b610ce830600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166006546112e7565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d55573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d799190612852565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e02573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e269190612852565b6040518363ffffffff1660e01b8152600401610e4392919061287f565b6020604051808303816000875af1158015610e62573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e869190612852565b600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610f659291906128a8565b6020604051808303816000875af1158015610f84573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa891906128fd565b50565b6000610fbf610fb86112df565b84846114b0565b6001905092915050565b610fd16112df565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461105e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110559061270b565b60405180910390fd5b600954811161106c57600080fd5b8060098190555050565b60056020528060005260406000206000915054906101000a900460ff1681565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6111256112df565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a99061270b565b60405180910390fd5b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71947306111fb30610916565b600080611206610b6e565b426040518863ffffffff1660e01b81526004016112289695949392919061296f565b60606040518083038185885af1158015611246573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061126b91906129e5565b5050506001600c60166101000a81548160ff021916908315150217905550565b6000600a54905090565b60006112d783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611b72565b905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611356576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134d90612aaa565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036113c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113bc90612b3c565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516114a39190612583565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361151f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151690612bce565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361158e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161158590612c60565b60405180910390fd5b600081116115d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115c890612cf2565b60405180910390fd5b600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156116755750600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6116b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116ab90612d5e565b60405180910390fd5b6116bc610b6e565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561172a57506116fa610b6e565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b156119e257600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156117da5750600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156118305750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156119225760095481111561187a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161187190612dca565b60405180910390fd5b600c60149054906101000a900460ff166118c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118c090612e36565b60405180910390fd5b600a54816118d684610916565b6118e09190612e56565b1115611921576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161191890612ef8565b60405180910390fd5b5b600061192d30610916565b9050600c60159054906101000a900460ff1615801561199a5750600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b80156119b25750600c60169054906101000a900460ff165b156119e0576119c081611bd5565b6000479050670de0b6b3a764000081106119de576119dd47611b06565b5b505b505b611a9d838383600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611a895750600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b611a9557600754611a98565b60005b611e4e565b505050565b6000838311158290611aea576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ae19190612479565b60405180910390fd5b5060008385611af99190612f18565b9050809150509392505050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611b6e573d6000803e3d6000fd5b5050565b60008083118290611bb9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bb09190612479565b60405180910390fd5b5060008385611bc89190612f7b565b9050809150509392505050565b6001600c60156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611c0d57611c0c612207565b5b604051908082528060200260200182016040528015611c3b5781602001602082028036833780820191505090505b5090503081600081518110611c5357611c5261272b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611cfa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d1e9190612852565b81600181518110611d3257611d3161272b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611d9930600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846112e7565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611dfd95949392919061306a565b600060405180830381600087803b158015611e1757600080fd5b505af1158015611e2b573d6000803e3d6000fd5b50505050506000600c60156101000a81548160ff02191690831515021790555050565b6000611e766064611e6884866120bb90919063ffffffff16565b61129590919063ffffffff16565b90506000611e8d828561213590919063ffffffff16565b9050611ee184600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461213590919063ffffffff16565b600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f7681600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461217f90919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061200b82600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461217f90919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516120ab9190612583565b60405180910390a3505050505050565b60008083036120cd576000905061212f565b600082846120db91906130c4565b90508284826120ea9190612f7b565b1461212a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161212190613190565b60405180910390fd5b809150505b92915050565b600061217783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611aa2565b905092915050565b600080828461218e9190612e56565b9050838110156121d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121ca906131fc565b60405180910390fd5b8091505092915050565b6000604051905090565b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61223f826121f6565b810181811067ffffffffffffffff8211171561225e5761225d612207565b5b80604052505050565b60006122716121dd565b905061227d8282612236565b919050565b600067ffffffffffffffff82111561229d5761229c612207565b5b602082029050602081019050919050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006122de826122b3565b9050919050565b6122ee816122d3565b81146122f957600080fd5b50565b60008135905061230b816122e5565b92915050565b600061232461231f84612282565b612267565b90508083825260208201905060208402830185811115612347576123466122ae565b5b835b81811015612370578061235c88826122fc565b845260208401935050602081019050612349565b5050509392505050565b600082601f83011261238f5761238e6121f1565b5b813561239f848260208601612311565b91505092915050565b6000602082840312156123be576123bd6121e7565b5b600082013567ffffffffffffffff8111156123dc576123db6121ec565b5b6123e88482850161237a565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561242b578082015181840152602081019050612410565b8381111561243a576000848401525b50505050565b600061244b826123f1565b61245581856123fc565b935061246581856020860161240d565b61246e816121f6565b840191505092915050565b600060208201905081810360008301526124938184612440565b905092915050565b6000819050919050565b6124ae8161249b565b81146124b957600080fd5b50565b6000813590506124cb816124a5565b92915050565b600080604083850312156124e8576124e76121e7565b5b60006124f6858286016122fc565b9250506020612507858286016124bc565b9150509250929050565b60008115159050919050565b61252681612511565b82525050565b6000602082019050612541600083018461251d565b92915050565b60006020828403121561255d5761255c6121e7565b5b600061256b848285016122fc565b91505092915050565b61257d8161249b565b82525050565b60006020820190506125986000830184612574565b92915050565b6000806000606084860312156125b7576125b66121e7565b5b60006125c5868287016122fc565b93505060206125d6868287016122fc565b92505060406125e7868287016124bc565b9150509250925092565b600060ff82169050919050565b612607816125f1565b82525050565b600060208201905061262260008301846125fe565b92915050565b60006020828403121561263e5761263d6121e7565b5b600061264c848285016124bc565b91505092915050565b61265e816122d3565b82525050565b60006020820190506126796000830184612655565b92915050565b60008060408385031215612696576126956121e7565b5b60006126a4858286016122fc565b92505060206126b5858286016122fc565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006126f56020836123fc565b9150612700826126bf565b602082019050919050565b60006020820190508181036000830152612724816126e8565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006127948261249b565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036127c6576127c561275a565b5b600182019050919050565b7f54726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b60006128076017836123fc565b9150612812826127d1565b602082019050919050565b60006020820190508181036000830152612836816127fa565b9050919050565b60008151905061284c816122e5565b92915050565b600060208284031215612868576128676121e7565b5b60006128768482850161283d565b91505092915050565b60006040820190506128946000830185612655565b6128a16020830184612655565b9392505050565b60006040820190506128bd6000830185612655565b6128ca6020830184612574565b9392505050565b6128da81612511565b81146128e557600080fd5b50565b6000815190506128f7816128d1565b92915050565b600060208284031215612913576129126121e7565b5b6000612921848285016128e8565b91505092915050565b6000819050919050565b6000819050919050565b600061295961295461294f8461292a565b612934565b61249b565b9050919050565b6129698161293e565b82525050565b600060c0820190506129846000830189612655565b6129916020830188612574565b61299e6040830187612960565b6129ab6060830186612960565b6129b86080830185612655565b6129c560a0830184612574565b979650505050505050565b6000815190506129df816124a5565b92915050565b6000806000606084860312156129fe576129fd6121e7565b5b6000612a0c868287016129d0565b9350506020612a1d868287016129d0565b9250506040612a2e868287016129d0565b9150509250925092565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612a946024836123fc565b9150612a9f82612a38565b604082019050919050565b60006020820190508181036000830152612ac381612a87565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612b266022836123fc565b9150612b3182612aca565b604082019050919050565b60006020820190508181036000830152612b5581612b19565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612bb86025836123fc565b9150612bc382612b5c565b604082019050919050565b60006020820190508181036000830152612be781612bab565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612c4a6023836123fc565b9150612c5582612bee565b604082019050919050565b60006020820190508181036000830152612c7981612c3d565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612cdc6029836123fc565b9150612ce782612c80565b604082019050919050565b60006020820190508181036000830152612d0b81612ccf565b9050919050565b7f54686973206163636f756e7420697320626c61636b6c69737465640000000000600082015250565b6000612d48601b836123fc565b9150612d5382612d12565b602082019050919050565b60006020820190508181036000830152612d7781612d3b565b9050919050565b7f5472616e73616374696f6e20616d6f756e74206c696d69746564000000000000600082015250565b6000612db4601a836123fc565b9150612dbf82612d7e565b602082019050919050565b60006020820190508181036000830152612de381612da7565b9050919050565b7f54726164696e67206e6f74207374617274656400000000000000000000000000600082015250565b6000612e206013836123fc565b9150612e2b82612dea565b602082019050919050565b60006020820190508181036000830152612e4f81612e13565b9050919050565b6000612e618261249b565b9150612e6c8361249b565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612ea157612ea061275a565b5b828201905092915050565b7f42616c616e63652065786365656465642077616c6c65742073697a6500000000600082015250565b6000612ee2601c836123fc565b9150612eed82612eac565b602082019050919050565b60006020820190508181036000830152612f1181612ed5565b9050919050565b6000612f238261249b565b9150612f2e8361249b565b925082821015612f4157612f4061275a565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612f868261249b565b9150612f918361249b565b925082612fa157612fa0612f4c565b5b828204905092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612fe1816122d3565b82525050565b6000612ff38383612fd8565b60208301905092915050565b6000602082019050919050565b600061301782612fac565b6130218185612fb7565b935061302c83612fc8565b8060005b8381101561305d5781516130448882612fe7565b975061304f83612fff565b925050600181019050613030565b5085935050505092915050565b600060a08201905061307f6000830188612574565b61308c6020830187612960565b818103604083015261309e818661300c565b90506130ad6060830185612655565b6130ba6080830184612574565b9695505050505050565b60006130cf8261249b565b91506130da8361249b565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156131135761311261275a565b5b828202905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061317a6021836123fc565b91506131858261311e565b604082019050919050565b600060208201905081810360008301526131a98161316d565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006131e6601b836123fc565b91506131f1826131b0565b602082019050919050565b60006020820190508181036000830152613215816131d9565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220f089e6d112f3b305b3d35915e2a630c9af4355335108c0acea68a5af7cd5a5f364736f6c634300080d0033

Deployed Bytecode Sourcemap

3781:6199:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9621:133;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5212:74;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5954:146;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9757:88;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5453:86;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6105:292;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5374:74;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9470:112;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9848:125;;;;;;;;;;;;;:::i;:::-;;5544:109;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3637:133;;;;;;;;;;;;;:::i;:::-;;8945:69;;;;;;;;;;;;;:::i;:::-;;5044:81;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3453:70;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5291:78;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8429:306;;;;;;;;;;;;;:::i;:::-;;5658:152;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8220:112;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4041:36;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5815:134;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8740:200;;;;;;;;;;;;;:::i;:::-;;5130:77;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9621:133;3572:12;:10;:12::i;:::-;3562:22;;:6;;;;;;;;;;:22;;;3554:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9691:9:::1;9686:67;9710:5;:12;9706:1;:16;9686:67;;;9747:4;9730;:14;9735:5;9741:1;9735:8;;;;;;;;:::i;:::-;;;;;;;;9730:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;9724:3;;;;;:::i;:::-;;;;9686:67;;;;9621:133:::0;:::o;5212:74::-;5249:13;5276:5;;;;;;;;;;;;;;;;;5269:12;;5212:74;:::o;5954:146::-;6029:4;6040:39;6049:12;:10;:12::i;:::-;6063:7;6072:6;6040:8;:39::i;:::-;6091:4;6084:11;;5954:146;;;;:::o;9757:88::-;3572:12;:10;:12::i;:::-;3562:22;;:6;;;;;;;;;;:22;;;3554:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9835:5:::1;9820:4;:12;9825:6;9820:12;;;;;;;;;;;;;;;;:20;;;;;;;;;;;;;;;;;;9757:88:::0;:::o;5453:86::-;5506:7;5527;;5520:14;;5453:86;:::o;6105:292::-;6203:4;6214:36;6224:6;6232:9;6243:6;6214:9;:36::i;:::-;6255:121;6264:6;6272:12;:10;:12::i;:::-;6286:89;6324:6;6286:89;;;;;;;;;;;;;;;;;:11;:19;6298:6;6286:19;;;;;;;;;;;;;;;:33;6306:12;:10;:12::i;:::-;6286:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;6255:8;:121::i;:::-;6388:4;6381:11;;6105:292;;;;;:::o;5374:74::-;5415:5;4395:1;5427:16;;5374:74;:::o;9470:112::-;3572:12;:10;:12::i;:::-;3562:22;;:6;;;;;;;;;;:22;;;3554:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9544:10:::1;;9537:6;:17;9529:26;;;::::0;::::1;;9571:6;9560:10;:17;;;;9470:112:::0;:::o;9848:125::-;9881:26;9910:21;9881:50;;9936:32;9949:18;9936:12;:32::i;:::-;9876:97;9848:125::o;5544:109::-;5610:7;5631:8;:17;5640:7;5631:17;;;;;;;;;;;;;;;;5624:24;;5544:109;;;:::o;3637:133::-;3572:12;:10;:12::i;:::-;3562:22;;:6;;;;;;;;;;:22;;;3554:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3738:1:::1;3701:40;;3722:6;::::0;::::1;;;;;;;;3701:40;;;;;;;;;;;;3763:1;3746:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;3637:133::o:0;8945:69::-;3572:12;:10;:12::i;:::-;3562:22;;:6;;;;;;;;;;:22;;;3554:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9005:4:::1;8993:9;;:16;;;;;;;;;;;;;;;;;;8945:69::o:0;5044:81::-;5088:7;5108:12;;5101:19;;5044:81;:::o;3453:70::-;3491:7;3512:6;;;;;;;;;;;3505:13;;3453:70;:::o;5291:78::-;5330:13;5357:7;;;;;;;;;;;;;;;;;5350:14;;5291:78;:::o;8429:306::-;3572:12;:10;:12::i;:::-;3562:22;;:6;;;;;;;;;;:22;;;3554:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;8484:9:::1;;;;;;;;;;;8483:10;8475:45;;;;;;;;;;;;:::i;:::-;;;;;;;;;8525:51;8542:4;8557:8;;;;;;;;;;;8568:7;;8525:8;:51::i;:::-;8607:8;;;;;;;;;;;:16;;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8589:48;;;8646:4;8653:8;;;;;;;;;;;:13;;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8589:80;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8581:5;;:88;;;;;;;;;;;;;;;;;;8681:5;;;;;;;;;;;8674:21;;;8704:8;;;;;;;;;;;8715:14;8674:56;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8429:306::o:0;5658:152::-;5736:4;5747:42;5757:12;:10;:12::i;:::-;5771:9;5782:6;5747:9;:42::i;:::-;5801:4;5794:11;;5658:152;;;;:::o;8220:112::-;3572:12;:10;:12::i;:::-;3562:22;;:6;;;;;;;;;;:22;;;3554:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;8290:12:::1;;8283:6;:19;8275:28;;;::::0;::::1;;8321:6;8308:12;:19;;;;8220:112:::0;:::o;4041:36::-;;;;;;;;;;;;;;;;;;;;;;:::o;5815:134::-;5896:7;5917:11;:18;5929:5;5917:18;;;;;;;;;;;;;;;:27;5936:7;5917:27;;;;;;;;;;;;;;;;5910:34;;5815:134;;;;:::o;8740:200::-;3572:12;:10;:12::i;:::-;3562:22;;:6;;;;;;;;;;:22;;;3554:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;8787:8:::1;;;;;;;;;;;:24;;;8819:21;8850:4;8856:24;8874:4;8856:9;:24::i;:::-;8881:1;8883::::0;8885:7:::1;:5;:7::i;:::-;8893:15;8787:122;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;8929:4;8914:12;;:19;;;;;;;;;;;;;;;;;;8740:200::o:0;5130:77::-;5172:7;5192:10;;5185:17;;5130:77;:::o;2829:123::-;2887:7;2908:39;2912:1;2915;2908:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2901:46;;2829:123;;;;:::o;1381:89::-;1434:7;1455:10;1448:17;;1381:89;:::o;6402:308::-;6506:1;6489:19;;:5;:19;;;6481:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6581:1;6562:21;;:7;:21;;;6554:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6657:6;6627:11;:18;6639:5;6627:18;;;;;;;;;;;;;;;:27;6646:7;6627:27;;;;;;;;;;;;;;;:36;;;;6689:7;6673:32;;6682:5;6673:32;;;6698:6;6673:32;;;;;;:::i;:::-;;;;;;;;6402:308;;;:::o;6715:1112::-;6813:1;6797:18;;:4;:18;;;6789:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6884:1;6870:16;;:2;:16;;;6862:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;6948:1;6939:6;:10;6931:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7009:4;:10;7014:4;7009:10;;;;;;;;;;;;;;;;;;;;;;;;;7008:11;:24;;;;;7024:4;:8;7029:2;7024:8;;;;;;;;;;;;;;;;;;;;;;;;;7023:9;7008:24;7000:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7083:7;:5;:7::i;:::-;7075:15;;:4;:15;;;;:32;;;;;7100:7;:5;:7::i;:::-;7094:13;;:2;:13;;;;7075:32;7071:654;;;7127:5;;;;;;;;;;;7119:13;;:4;:13;;;:40;;;;;7150:8;;;;;;;;;;;7136:23;;:2;:23;;;;7119:40;:68;;;;;7165:18;:22;7184:2;7165:22;;;;;;;;;;;;;;;;;;;;;;;;;7163:24;7119:68;7115:278;;;7213:12;;7205:6;:20;;7197:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;7270:9;;;;;;;;;;;7262:40;;;;;;;;;;;;:::i;:::-;;;;;;;;;7343:10;;7333:6;7317:13;7327:2;7317:9;:13::i;:::-;:22;;;;:::i;:::-;:36;;7309:77;;;;;;;;;;;;:::i;:::-;;;;;;;;;7115:278;7400:28;7431:24;7449:4;7431:9;:24::i;:::-;7400:55;;7466:7;;;;;;;;;;;7465:8;:25;;;;;7485:5;;;;;;;;;;;7477:13;;:4;:13;;;;7465:25;:41;;;;;7494:12;;;;;;;;;;;7465:41;7461:259;;;7515:38;7532:20;7515:16;:38::i;:::-;7560:26;7589:21;7560:50;;7642:19;7620:18;:41;7617:97;;7671:35;7684:21;7671:12;:35::i;:::-;7617:97;7508:212;7461:259;7109:616;7071:654;7731:91;7746:4;7751:2;7754:6;7762:18;:22;7781:2;7762:22;;;;;;;;;;;;;;;;;;;;;;;;;:48;;;;7786:18;:24;7805:4;7786:24;;;;;;;;;;;;;;;;;;;;;;;;;7762:48;7761:60;;7814:7;;7761:60;;;7812:1;7761:60;7731:14;:91::i;:::-;6715:1112;;;:::o;2446:169::-;2532:7;2559:1;2554;:6;;2562:12;2546:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2580:9;2596:1;2592;:5;;;;:::i;:::-;2580:17;;2609:1;2602:8;;;2446:169;;;;;:::o;8337:83::-;8388:10;;;;;;;;;;;:19;;:27;8408:6;8388:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8337:83;:::o;2957:168::-;3043:7;3069:1;3065;:5;3072:12;3057:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;3090:9;3106:1;3102;:5;;;;:::i;:::-;3090:17;;3119:1;3112:8;;;2957:168;;;;;:::o;7836:375::-;4596:4;4586:7;;:14;;;;;;;;;;;;;;;;;;7905:21:::1;7943:1;7929:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7905:40;;7968:4;7950;7955:1;7950:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;7988:8;;;;;;;;;;;:13;;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7978:4;7983:1;7978:7;;;;;;;;:::i;:::-;;;;;;;:25;;;;;;;;;::::0;::::1;8008:55;8025:4;8040:8;;;;;;;;;;;8051:11;8008:8;:55::i;:::-;8068:8;;;;;;;;;;;:59;;;8133:11;8150:1;8157:4;8175;8186:15;8068:138;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;7900:311;4621:5:::0;4611:7;;:15;;;;;;;;;;;;;;;;;;7836:375;:::o;9019:446::-;9125:13;9141:29;9166:3;9141:20;9153:7;9141;:11;;:20;;;;:::i;:::-;:24;;:29;;;;:::i;:::-;9125:45;;9175:23;9201:18;9213:5;9201:7;:11;;:18;;;;:::i;:::-;9175:44;;9245:29;9266:7;9245:8;:16;9254:6;9245:16;;;;;;;;;;;;;;;;:20;;:29;;;;:::i;:::-;9226:8;:16;9235:6;9226:16;;;;;;;;;;;;;;;:48;;;;9301:40;9325:15;9301:8;:19;9310:9;9301:19;;;;;;;;;;;;;;;;:23;;:40;;;;:::i;:::-;9279:8;:19;9288:9;9279:19;;;;;;;;;;;;;;;:62;;;;9372:34;9400:5;9372:8;:23;9389:4;9372:23;;;;;;;;;;;;;;;;:27;;:34;;;;:::i;:::-;9346:8;:23;9363:4;9346:23;;;;;;;;;;;;;;;:60;;;;9433:9;9416:44;;9425:6;9416:44;;;9444:15;9416:44;;;;;;:::i;:::-;;;;;;;;9120:345;;9019:446;;;;:::o;2620:204::-;2678:7;2701:1;2696;:6;2692:32;;2717:1;2710:8;;;;2692:32;2728:9;2744:1;2740;:5;;;;:::i;:::-;2728:17;;2767:1;2762;2758;:5;;;;:::i;:::-;:10;2750:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2818:1;2811:8;;;2620:204;;;;;:::o;2314:127::-;2372:7;2393:43;2397:1;2400;2393:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;2386:50;;2314:127;;;;:::o;2151:158::-;2209:7;2223:9;2239:1;2235;:5;;;;:::i;:::-;2223:17;;2258:1;2253;:6;;2245:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;2303:1;2296:8;;;2151: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:329::-;6395:6;6444:2;6432:9;6423:7;6419:23;6415:32;6412:119;;;6450:79;;:::i;:::-;6412:119;6570:1;6595:53;6640:7;6631:6;6620:9;6616:22;6595:53;:::i;:::-;6585:63;;6541:117;6336:329;;;;:::o;6671:118::-;6758:24;6776:5;6758:24;:::i;:::-;6753:3;6746:37;6671:118;;:::o;6795:222::-;6888:4;6926:2;6915:9;6911:18;6903:26;;6939:71;7007:1;6996:9;6992:17;6983:6;6939:71;:::i;:::-;6795:222;;;;:::o;7023:619::-;7100:6;7108;7116;7165:2;7153:9;7144:7;7140:23;7136:32;7133:119;;;7171:79;;:::i;:::-;7133:119;7291:1;7316:53;7361:7;7352:6;7341:9;7337:22;7316:53;:::i;:::-;7306:63;;7262:117;7418:2;7444:53;7489:7;7480:6;7469:9;7465:22;7444:53;:::i;:::-;7434:63;;7389:118;7546:2;7572:53;7617:7;7608:6;7597:9;7593:22;7572:53;:::i;:::-;7562:63;;7517:118;7023:619;;;;;:::o;7648:86::-;7683:7;7723:4;7716:5;7712:16;7701:27;;7648:86;;;:::o;7740:112::-;7823:22;7839:5;7823:22;:::i;:::-;7818:3;7811:35;7740:112;;:::o;7858:214::-;7947:4;7985:2;7974:9;7970:18;7962:26;;7998:67;8062:1;8051:9;8047:17;8038:6;7998:67;:::i;:::-;7858:214;;;;:::o;8078:329::-;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://f089e6d112f3b305b3d35915e2a630c9af4355335108c0acea68a5af7cd5a5f3
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.