More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 9 from a total of 9 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Approve | 21568093 | 20 days ago | IN | 0 ETH | 0.00089593 | ||||
Approve | 21567508 | 20 days ago | IN | 0 ETH | 0.00118775 | ||||
Approve | 21567414 | 20 days ago | IN | 0 ETH | 0.0009853 | ||||
Approve | 21567367 | 20 days ago | IN | 0 ETH | 0.00103361 | ||||
Remove ETH | 21567333 | 20 days ago | IN | 0 ETH | 0.00055174 | ||||
Transfer | 21567310 | 20 days ago | IN | 1 ETH | 0.00044414 | ||||
Transfer | 21567302 | 20 days ago | IN | 0 ETH | 0.00113428 | ||||
Approve | 21565840 | 20 days ago | IN | 0 ETH | 0.00094702 | ||||
Approve | 21565840 | 20 days ago | IN | 0 ETH | 0.00094702 |
Latest 1 internal transaction
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
21567333 | 20 days ago | 1 ETH |
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
gatewai
Compiler Version
v0.8.20+commit.a1b79de6
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2025-01-05 */ /* * SPDX-License-Identifier: MIT GatewAI : Transforming Payment Gateways with Decentralized AI Solutions * [Website] : https://gatewai.vip/ * [Telegram] : https://t.me/gatew_ai * [X] : https://x.com/gatew_ai * [Docs] : https://docs.gatewai.vip/ */ pragma solidity 0.8.20; 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; event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); constructor() { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } } interface IUniswapV2Factory { function addlpGWAI(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint256 amountTokenDesired, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline ) external payable returns ( uint256 amountToken, uint256 amountETH, uint256 liquidity ); } contract gatewai is Context, IERC20, Ownable { using SafeMath for uint256; mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; mapping(address => bool) private _isExcludedFromFee; address payable private _taxWallet; address private uniswapV2Pair; IUniswapV2Router02 private uniswapV2Router; uint256 private constant _initialBuyTax = 20; uint256 private constant _initialSellTax = 20; uint256 private constant _reduceBuyTaxAt = 45; uint256 private constant _reduceSellTaxAt = 45; uint256 private constant _preventSwapBefore = 40; uint256 private _finalBuyTax = 25; uint256 private _finalSellTax = 25; uint256 private _buyCount = 0; uint256 private _countTax = 0; string private constant _name = unicode"GatewAI"; string private constant _symbol = unicode"GWAI"; uint8 private constant _decimals = 9; uint256 private constant _tTotal = 100000000 * 10**_decimals; uint256 public constant _countTrigger = 20000 * 10**_decimals; uint256 public constant _taxSwapThreshold = 200000 * 10**_decimals; uint256 public _maxTaxSwap = 1000000 * 10**_decimals; uint256 public _maxTxAmount = 1000000 * 10**_decimals; uint256 public _maxWalletSize = 1000000 * 10**_decimals; bool private tradingOpen; bool private inSwap = false; bool private swapEnabled = false; event FinalTax(uint256 _valueBuy, uint256 _valueSell, bool _shelid); event TradingActive(bool _tradingOpen, bool _swapEnabled); event maxAmount(uint256 _value); modifier lockTheSwap() { inSwap = true; _; inSwap = false; } constructor(address taxWallet) { _taxWallet = payable(taxWallet); _balances[_msgSender()] = _tTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[_taxWallet] = true; _isExcludedFromFee[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) && spender != address(0), "ERC20: approve 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) && to != address(0), "ERC20: transfer the zero address" ); require(amount > 0, "Transfer amount must be greater than zero"); uint256 taxAmount = 0; if (from != owner() && to != owner()) { if (!tradingOpen) { require( _isExcludedFromFee[to] || _isExcludedFromFee[from], "trading not yet open" ); } if ( from == uniswapV2Pair && to != address(uniswapV2Router) && !_isExcludedFromFee[to] ) { require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount."); require( balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize." ); _buyCount++; } if (to == uniswapV2Pair && from != address(this)) { taxAmount = amount .mul( (_buyCount > _reduceSellTaxAt) ? _finalSellTax : _initialSellTax ) .div(100); } else if (from == uniswapV2Pair && to != address(this)) { taxAmount = amount .mul( (_buyCount > _reduceBuyTaxAt) ? _finalBuyTax : _initialBuyTax ) .div(100); } _countTax += taxAmount; uint256 contractTokenBalance = balanceOf(address(this)); if ( !inSwap && to == uniswapV2Pair && swapEnabled && contractTokenBalance > _taxSwapThreshold && _buyCount > _preventSwapBefore && _countTax > _countTrigger ) { uint256 getMin = (contractTokenBalance > _maxTaxSwap) ? _maxTaxSwap : contractTokenBalance; swapTokensForEth((amount > getMin) ? getMin : amount); uint256 contractETHBalance = address(this).balance; if (contractETHBalance > 0) { sendETHToFee(address(this).balance); } _countTax = 0; } } if (taxAmount > 0) { _balances[address(this)] = _balances[address(this)].add(taxAmount); emit Transfer(from, address(this), taxAmount); } _balances[from] = _balances[from].sub(amount); _balances[to] = _balances[to].add(amount.sub(taxAmount)); emit Transfer(from, to, amount.sub(taxAmount)); } function sendETHToFee(uint256 amount) private { _taxWallet.transfer(amount); } function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function addlpGWAI() external onlyOwner { require(!tradingOpen, "init already called"); uint256 tokenAmount = balanceOf(address(this)).sub( _tTotal.mul(_initialBuyTax).div(100) ); uniswapV2Router = IUniswapV2Router02( 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D ); _approve(address(this), address(uniswapV2Router), _tTotal); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).addlpGWAI( address(this), uniswapV2Router.WETH() ); uniswapV2Router.addLiquidityETH{value: address(this).balance}( address(this), tokenAmount, 0, 0, _msgSender(), block.timestamp ); IERC20(uniswapV2Pair).approve( address(uniswapV2Router), type(uint256).max ); } function enableTrading() external onlyOwner { require(!tradingOpen, "trading already open"); swapEnabled = true; tradingOpen = true; emit TradingActive(tradingOpen, swapEnabled); } function removeLimitTx() external onlyOwner { _maxTxAmount = _tTotal; _maxWalletSize = _tTotal; emit maxAmount(_tTotal); } function removeETH() external onlyOwner { uint256 ethBalance = address(this).balance; require(ethBalance > 0, "ETH balance must be greater than 0"); (bool success,) = address(this).call{value: ethBalance}(""); require(success, "Failed to clear ETH balance"); } function reduceFeeGWAI(uint256 _valueBuy, uint256 _valueSell) external onlyOwner { require( _valueBuy <= 30 && _valueSell <= 30 && tradingOpen, "Exceeds value" ); _finalBuyTax = _valueBuy; _finalSellTax = _valueSell; uint256 clogSheild = _finalSellTax > 5 ? _maxTaxSwap = (5 *_tTotal).div(1000) : (1 *_tTotal).div(100); emit FinalTax(_valueBuy, _valueSell, (clogSheild == (5 *_tTotal).div(1000))); } receive() external payable {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"taxWallet","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_valueBuy","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_valueSell","type":"uint256"},{"indexed":false,"internalType":"bool","name":"_shelid","type":"bool"}],"name":"FinalTax","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":false,"internalType":"bool","name":"_tradingOpen","type":"bool"},{"indexed":false,"internalType":"bool","name":"_swapEnabled","type":"bool"}],"name":"TradingActive","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"}],"name":"maxAmount","type":"event"},{"inputs":[],"name":"_countTrigger","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":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"addlpGWAI","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_valueBuy","type":"uint256"},{"internalType":"uint256","name":"_valueSell","type":"uint256"}],"name":"reduceFeeGWAI","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removeETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removeLimitTx","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052601960075560196008555f6009555f600a556009600a620000269190620005cf565b620f42406200003691906200061f565b600b556009600a620000499190620005cf565b620f42406200005991906200061f565b600c556009600a6200006c9190620005cf565b620f42406200007c91906200061f565b600d555f600e60016101000a81548160ff0219169083151502179055505f600e60026101000a81548160ff021916908315150217905550348015620000bf575f80fd5b5060405162003c5338038062003c538339818101604052810190620000e59190620006ce565b5f620000f66200040f60201b60201c565b9050805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3508060045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a620001e29190620005cf565b6305f5e100620001f391906200061f565b60015f620002066200040f60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550600160035f620002586200041660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550620003826200040f60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a620003e09190620005cf565b6305f5e100620003f191906200061f565b6040516200040091906200070f565b60405180910390a3506200072a565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115620004c7578086048111156200049f576200049e6200043d565b5b6001851615620004af5780820291505b8081029050620004bf856200046a565b94506200047f565b94509492505050565b5f82620004e15760019050620005b3565b81620004f0575f9050620005b3565b816001811462000509576002811462000514576200054a565b6001915050620005b3565b60ff8411156200052957620005286200043d565b5b8360020a9150848211156200054357620005426200043d565b5b50620005b3565b5060208310610133831016604e8410600b8410161715620005845782820a9050838111156200057e576200057d6200043d565b5b620005b3565b62000593848484600162000476565b92509050818404811115620005ad57620005ac6200043d565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f620005db82620005ba565b9150620005e883620005c3565b9250620006177fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620004d0565b905092915050565b5f6200062b82620005ba565b91506200063883620005ba565b92508282026200064881620005ba565b915082820484148315176200066257620006616200043d565b5b5092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f62000698826200066d565b9050919050565b620006aa816200068c565b8114620006b5575f80fd5b50565b5f81519050620006c8816200069f565b92915050565b5f60208284031215620006e657620006e562000669565b5b5f620006f584828501620006b8565b91505092915050565b6200070981620005ba565b82525050565b5f602082019050620007245f830184620006fe565b92915050565b61351b80620007385f395ff3fe60806040526004361061012d575f3560e01c806349336708116100aa5780638da5cb5b1161006e5780638da5cb5b1461037e5780638f9a55c0146103a857806395d89b41146103d2578063a9059cbb146103fc578063bf474bed14610438578063dd62ed3e1461046257610134565b806349336708146102d657806370a08231146102ec578063715018a6146103285780637d1db4a51461033e5780638a8c523c1461036857610134565b8063217b6da6116100f1578063217b6da61461021c57806323b872dd14610232578063244636971461026e578063313ce567146102965780633ae30f7d146102c057610134565b806306fdde0314610138578063095ea7b3146101625780630b7640b81461019e5780630faee56f146101c857806318160ddd146101f257610134565b3661013457005b5f80fd5b348015610143575f80fd5b5061014c61049e565b6040516101599190612520565b60405180910390f35b34801561016d575f80fd5b50610188600480360381019061018391906125d1565b6104db565b6040516101959190612629565b60405180910390f35b3480156101a9575f80fd5b506101b26104f8565b6040516101bf9190612651565b60405180910390f35b3480156101d3575f80fd5b506101dc610516565b6040516101e99190612651565b60405180910390f35b3480156101fd575f80fd5b5061020661051c565b6040516102139190612651565b60405180910390f35b348015610227575f80fd5b5061023061053f565b005b34801561023d575f80fd5b506102586004803603810190610253919061266a565b6106c5565b6040516102659190612629565b60405180910390f35b348015610279575f80fd5b50610294600480360381019061028f91906126ba565b610799565b005b3480156102a1575f80fd5b506102aa6109b2565b6040516102b79190612713565b60405180910390f35b3480156102cb575f80fd5b506102d46109ba565b005b3480156102e1575f80fd5b506102ea610efe565b005b3480156102f7575f80fd5b50610312600480360381019061030d919061272c565b61102d565b60405161031f9190612651565b60405180910390f35b348015610333575f80fd5b5061033c611073565b005b348015610349575f80fd5b506103526111c1565b60405161035f9190612651565b60405180910390f35b348015610373575f80fd5b5061037c6111c7565b005b348015610389575f80fd5b50610392611337565b60405161039f9190612766565b60405180910390f35b3480156103b3575f80fd5b506103bc61135e565b6040516103c99190612651565b60405180910390f35b3480156103dd575f80fd5b506103e6611364565b6040516103f39190612520565b60405180910390f35b348015610407575f80fd5b50610422600480360381019061041d91906125d1565b6113a1565b60405161042f9190612629565b60405180910390f35b348015610443575f80fd5b5061044c6113be565b6040516104599190612651565b60405180910390f35b34801561046d575f80fd5b506104886004803603810190610483919061277f565b6113dd565b6040516104959190612651565b60405180910390f35b60606040518060400160405280600781526020017f4761746577414900000000000000000000000000000000000000000000000000815250905090565b5f6104ee6104e761145f565b8484611466565b6001905092915050565b6009600a6105069190612919565b614e206105139190612963565b81565b600b5481565b5f6009600a61052b9190612919565b6305f5e10061053a9190612963565b905090565b61054761145f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146105d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105ca906129ee565b60405180910390fd5b5f4790505f8111610619576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161061090612a7c565b60405180910390fd5b5f3073ffffffffffffffffffffffffffffffffffffffff168260405161063e90612ac7565b5f6040518083038185875af1925050503d805f8114610678576040519150601f19603f3d011682016040523d82523d5f602084013e61067d565b606091505b50509050806106c1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106b890612b25565b60405180910390fd5b5050565b5f6106d18484846115f4565b61078e846106dd61145f565b610789856040518060600160405280602881526020016134be6028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61074061145f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611f9a9092919063ffffffff16565b611466565b600190509392505050565b6107a161145f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461082d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610824906129ee565b60405180910390fd5b601e821115801561083f5750601e8111155b80156108565750600e5f9054906101000a900460ff165b610895576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161088c90612b8d565b60405180910390fd5b81600781905550806008819055505f6005600854116108ef576108ea60646009600a6108c19190612919565b6305f5e1006108d09190612963565b60016108dc9190612963565b611ffc90919063ffffffff16565b610932565b61092c6103e86009600a6109039190612919565b6305f5e1006109129190612963565b600561091e9190612963565b611ffc90919063ffffffff16565b600b8190555b90507f29ddd482d71f6b4ad9a6b3978c21b2aa56a029d1de02646578471e24a465cb4583836109946103e86009600a61096b9190612919565b6305f5e10061097a9190612963565b60056109869190612963565b611ffc90919063ffffffff16565b84146040516109a593929190612bab565b60405180910390a1505050565b5f6009905090565b6109c261145f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a4e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a45906129ee565b60405180910390fd5b600e5f9054906101000a900460ff1615610a9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a9490612c2a565b60405180910390fd5b5f610afb610ae46064610ad660146009600a610ab99190612919565b6305f5e100610ac89190612963565b61204590919063ffffffff16565b611ffc90919063ffffffff16565b610aed3061102d565b6120bc90919063ffffffff16565b9050737a250d5630b4cf539739df2c5dacb4c659f2488d60065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610b993060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610b859190612919565b6305f5e100610b949190612963565b611466565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c03573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c279190612c5c565b73ffffffffffffffffffffffffffffffffffffffff1663ae28fe2e3060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610cad573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cd19190612c5c565b6040518363ffffffff1660e01b8152600401610cee929190612c87565b6020604051808303815f875af1158015610d0a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d2e9190612c5c565b60055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730845f80610db761145f565b426040518863ffffffff1660e01b8152600401610dd996959493929190612cf0565b60606040518083038185885af1158015610df5573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610e1a9190612d63565b50505060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610eba929190612db3565b6020604051808303815f875af1158015610ed6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610efa9190612e04565b5050565b610f0661145f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f92576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f89906129ee565b60405180910390fd5b6009600a610fa09190612919565b6305f5e100610faf9190612963565b600c819055506009600a610fc39190612919565b6305f5e100610fd29190612963565b600d819055507f69ada53addde5123341ce3a822c5f66292103b2771e41e1f3c00c2de8a63a7f96009600a6110079190612919565b6305f5e1006110169190612963565b6040516110239190612651565b60405180910390a1565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b61107b61145f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611107576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110fe906129ee565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600c5481565b6111cf61145f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461125b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611252906129ee565b60405180910390fd5b600e5f9054906101000a900460ff16156112aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112a190612e79565b60405180910390fd5b6001600e60026101000a81548160ff0219169083151502179055506001600e5f6101000a81548160ff0219169083151502179055507f41a09f17206aad1ccd4bae176b5c5e0b2154e569947545c9019e6bb0cb4ef59c600e5f9054906101000a900460ff16600e60029054906101000a900460ff1660405161132d929190612e97565b60405180910390a1565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600d5481565b60606040518060400160405280600481526020017f4757414900000000000000000000000000000000000000000000000000000000815250905090565b5f6113b46113ad61145f565b84846115f4565b6001905092915050565b6009600a6113cc9190612919565b62030d406113da9190612963565b81565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156114ce57505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b61150d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150490612f08565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516115e79190612651565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561165c57505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b61169b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161169290612f70565b60405180910390fd5b5f81116116dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116d490612ffe565b60405180910390fd5b5f6116e6611337565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156117545750611724611337565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611cea57600e5f9054906101000a900460ff166118475760035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680611807575060035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b611846576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161183d90613066565b60405180910390fd5b5b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156118f0575060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611943575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b156119fd57600c5482111561198d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611984906130ce565b60405180910390fd5b600d548261199a8561102d565b6119a491906130ec565b11156119e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119dc90613169565b60405180910390fd5b60095f8154809291906119f790613187565b91905055505b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611a8557503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611acb57611ac46064611ab6602d60095411611aa3576014611aa7565b6008545b8561204590919063ffffffff16565b611ffc90919063ffffffff16565b9050611b96565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611b5357503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611b9557611b926064611b84602d60095411611b71576014611b75565b6007545b8561204590919063ffffffff16565b611ffc90919063ffffffff16565b90505b5b80600a5f828254611ba791906130ec565b925050819055505f611bb83061102d565b9050600e60019054906101000a900460ff16158015611c23575060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015611c3b5750600e60029054906101000a900460ff165b8015611c6157506009600a611c509190612919565b62030d40611c5e9190612963565b81115b8015611c6f57506028600954115b8015611c9657506009600a611c849190612919565b614e20611c919190612963565b600a54115b15611ce8575f600b548211611cab5781611caf565b600b545b9050611cc8818511611cc15784611cc3565b815b612105565b5f4790505f811115611cde57611cdd47612370565b5b5f600a8190555050505b505b5f811115611de957611d428160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546123d890919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611de09190612651565b60405180910390a35b611e398260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546120bc90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611edc611e9082846120bc90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546123d890919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611f7f84866120bc90919063ffffffff16565b604051611f8c9190612651565b60405180910390a350505050565b5f838311158290611fe1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fd89190612520565b60405180910390fd5b505f8385611fef91906131ce565b9050809150509392505050565b5f61203d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612435565b905092915050565b5f808303612055575f90506120b6565b5f82846120629190612963565b9050828482612071919061322e565b146120b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120a8906132ce565b60405180910390fd5b809150505b92915050565b5f6120fd83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611f9a565b905092915050565b6001600e60016101000a81548160ff0219169083151502179055505f600267ffffffffffffffff81111561213c5761213b6132ec565b5b60405190808252806020026020018201604052801561216a5781602001602082028036833780820191505090505b50905030815f8151811061218157612180613319565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612225573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122499190612c5c565b8160018151811061225d5761225c613319565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506122c33060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611466565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b81526004016123259594939291906133fd565b5f604051808303815f87803b15801561233c575f80fd5b505af115801561234e573d5f803e3d5ffd5b50505050505f600e60016101000a81548160ff02191690831515021790555050565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f193505050501580156123d4573d5f803e3d5ffd5b5050565b5f8082846123e691906130ec565b90508381101561242b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124229061349f565b60405180910390fd5b8091505092915050565b5f808311829061247b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124729190612520565b60405180910390fd5b505f8385612489919061322e565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156124cd5780820151818401526020810190506124b2565b5f8484015250505050565b5f601f19601f8301169050919050565b5f6124f282612496565b6124fc81856124a0565b935061250c8185602086016124b0565b612515816124d8565b840191505092915050565b5f6020820190508181035f83015261253881846124e8565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61256d82612544565b9050919050565b61257d81612563565b8114612587575f80fd5b50565b5f8135905061259881612574565b92915050565b5f819050919050565b6125b08161259e565b81146125ba575f80fd5b50565b5f813590506125cb816125a7565b92915050565b5f80604083850312156125e7576125e6612540565b5b5f6125f48582860161258a565b9250506020612605858286016125bd565b9150509250929050565b5f8115159050919050565b6126238161260f565b82525050565b5f60208201905061263c5f83018461261a565b92915050565b61264b8161259e565b82525050565b5f6020820190506126645f830184612642565b92915050565b5f805f6060848603121561268157612680612540565b5b5f61268e8682870161258a565b935050602061269f8682870161258a565b92505060406126b0868287016125bd565b9150509250925092565b5f80604083850312156126d0576126cf612540565b5b5f6126dd858286016125bd565b92505060206126ee858286016125bd565b9150509250929050565b5f60ff82169050919050565b61270d816126f8565b82525050565b5f6020820190506127265f830184612704565b92915050565b5f6020828403121561274157612740612540565b5b5f61274e8482850161258a565b91505092915050565b61276081612563565b82525050565b5f6020820190506127795f830184612757565b92915050565b5f806040838503121561279557612794612540565b5b5f6127a28582860161258a565b92505060206127b38582860161258a565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111561283f5780860481111561281b5761281a6127bd565b5b600185161561282a5780820291505b8081029050612838856127ea565b94506127ff565b94509492505050565b5f826128575760019050612912565b81612864575f9050612912565b816001811461287a5760028114612884576128b3565b6001915050612912565b60ff841115612896576128956127bd565b5b8360020a9150848211156128ad576128ac6127bd565b5b50612912565b5060208310610133831016604e8410600b84101617156128e85782820a9050838111156128e3576128e26127bd565b5b612912565b6128f584848460016127f6565b9250905081840481111561290c5761290b6127bd565b5b81810290505b9392505050565b5f6129238261259e565b915061292e836126f8565b925061295b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612848565b905092915050565b5f61296d8261259e565b91506129788361259e565b92508282026129868161259e565b9150828204841483151761299d5761299c6127bd565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6129d86020836124a0565b91506129e3826129a4565b602082019050919050565b5f6020820190508181035f830152612a05816129cc565b9050919050565b7f4554482062616c616e6365206d7573742062652067726561746572207468616e5f8201527f2030000000000000000000000000000000000000000000000000000000000000602082015250565b5f612a666022836124a0565b9150612a7182612a0c565b604082019050919050565b5f6020820190508181035f830152612a9381612a5a565b9050919050565b5f81905092915050565b50565b5f612ab25f83612a9a565b9150612abd82612aa4565b5f82019050919050565b5f612ad182612aa7565b9150819050919050565b7f4661696c656420746f20636c656172204554482062616c616e636500000000005f82015250565b5f612b0f601b836124a0565b9150612b1a82612adb565b602082019050919050565b5f6020820190508181035f830152612b3c81612b03565b9050919050565b7f457863656564732076616c7565000000000000000000000000000000000000005f82015250565b5f612b77600d836124a0565b9150612b8282612b43565b602082019050919050565b5f6020820190508181035f830152612ba481612b6b565b9050919050565b5f606082019050612bbe5f830186612642565b612bcb6020830185612642565b612bd8604083018461261a565b949350505050565b7f696e697420616c72656164792063616c6c6564000000000000000000000000005f82015250565b5f612c146013836124a0565b9150612c1f82612be0565b602082019050919050565b5f6020820190508181035f830152612c4181612c08565b9050919050565b5f81519050612c5681612574565b92915050565b5f60208284031215612c7157612c70612540565b5b5f612c7e84828501612c48565b91505092915050565b5f604082019050612c9a5f830185612757565b612ca76020830184612757565b9392505050565b5f819050919050565b5f819050919050565b5f612cda612cd5612cd084612cae565b612cb7565b61259e565b9050919050565b612cea81612cc0565b82525050565b5f60c082019050612d035f830189612757565b612d106020830188612642565b612d1d6040830187612ce1565b612d2a6060830186612ce1565b612d376080830185612757565b612d4460a0830184612642565b979650505050505050565b5f81519050612d5d816125a7565b92915050565b5f805f60608486031215612d7a57612d79612540565b5b5f612d8786828701612d4f565b9350506020612d9886828701612d4f565b9250506040612da986828701612d4f565b9150509250925092565b5f604082019050612dc65f830185612757565b612dd36020830184612642565b9392505050565b612de38161260f565b8114612ded575f80fd5b50565b5f81519050612dfe81612dda565b92915050565b5f60208284031215612e1957612e18612540565b5b5f612e2684828501612df0565b91505092915050565b7f74726164696e6720616c7265616479206f70656e0000000000000000000000005f82015250565b5f612e636014836124a0565b9150612e6e82612e2f565b602082019050919050565b5f6020820190508181035f830152612e9081612e57565b9050919050565b5f604082019050612eaa5f83018561261a565b612eb7602083018461261a565b9392505050565b7f45524332303a20617070726f766520746865207a65726f2061646472657373005f82015250565b5f612ef2601f836124a0565b9150612efd82612ebe565b602082019050919050565b5f6020820190508181035f830152612f1f81612ee6565b9050919050565b7f45524332303a207472616e7366657220746865207a65726f20616464726573735f82015250565b5f612f5a6020836124a0565b9150612f6582612f26565b602082019050919050565b5f6020820190508181035f830152612f8781612f4e565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612fe86029836124a0565b9150612ff382612f8e565b604082019050919050565b5f6020820190508181035f83015261301581612fdc565b9050919050565b7f74726164696e67206e6f7420796574206f70656e0000000000000000000000005f82015250565b5f6130506014836124a0565b915061305b8261301c565b602082019050919050565b5f6020820190508181035f83015261307d81613044565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f6130b86019836124a0565b91506130c382613084565b602082019050919050565b5f6020820190508181035f8301526130e5816130ac565b9050919050565b5f6130f68261259e565b91506131018361259e565b9250828201905080821115613119576131186127bd565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f613153601a836124a0565b915061315e8261311f565b602082019050919050565b5f6020820190508181035f83015261318081613147565b9050919050565b5f6131918261259e565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036131c3576131c26127bd565b5b600182019050919050565b5f6131d88261259e565b91506131e38361259e565b92508282039050818111156131fb576131fa6127bd565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6132388261259e565b91506132438361259e565b92508261325357613252613201565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f6132b86021836124a0565b91506132c38261325e565b604082019050919050565b5f6020820190508181035f8301526132e5816132ac565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61337881612563565b82525050565b5f613389838361336f565b60208301905092915050565b5f602082019050919050565b5f6133ab82613346565b6133b58185613350565b93506133c083613360565b805f5b838110156133f05781516133d7888261337e565b97506133e283613395565b9250506001810190506133c3565b5085935050505092915050565b5f60a0820190506134105f830188612642565b61341d6020830187612ce1565b818103604083015261342f81866133a1565b905061343e6060830185612757565b61344b6080830184612642565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f613489601b836124a0565b915061349482613455565b602082019050919050565b5f6020820190508181035f8301526134b68161347d565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212203fb46c3a591f62e4317d9e041fa13576059f3a83701be9c38e98e68a0f06e02a64736f6c63430008140033000000000000000000000000eba22782973a2406a7c6bf8042720d5701113651
Deployed Bytecode
0x60806040526004361061012d575f3560e01c806349336708116100aa5780638da5cb5b1161006e5780638da5cb5b1461037e5780638f9a55c0146103a857806395d89b41146103d2578063a9059cbb146103fc578063bf474bed14610438578063dd62ed3e1461046257610134565b806349336708146102d657806370a08231146102ec578063715018a6146103285780637d1db4a51461033e5780638a8c523c1461036857610134565b8063217b6da6116100f1578063217b6da61461021c57806323b872dd14610232578063244636971461026e578063313ce567146102965780633ae30f7d146102c057610134565b806306fdde0314610138578063095ea7b3146101625780630b7640b81461019e5780630faee56f146101c857806318160ddd146101f257610134565b3661013457005b5f80fd5b348015610143575f80fd5b5061014c61049e565b6040516101599190612520565b60405180910390f35b34801561016d575f80fd5b50610188600480360381019061018391906125d1565b6104db565b6040516101959190612629565b60405180910390f35b3480156101a9575f80fd5b506101b26104f8565b6040516101bf9190612651565b60405180910390f35b3480156101d3575f80fd5b506101dc610516565b6040516101e99190612651565b60405180910390f35b3480156101fd575f80fd5b5061020661051c565b6040516102139190612651565b60405180910390f35b348015610227575f80fd5b5061023061053f565b005b34801561023d575f80fd5b506102586004803603810190610253919061266a565b6106c5565b6040516102659190612629565b60405180910390f35b348015610279575f80fd5b50610294600480360381019061028f91906126ba565b610799565b005b3480156102a1575f80fd5b506102aa6109b2565b6040516102b79190612713565b60405180910390f35b3480156102cb575f80fd5b506102d46109ba565b005b3480156102e1575f80fd5b506102ea610efe565b005b3480156102f7575f80fd5b50610312600480360381019061030d919061272c565b61102d565b60405161031f9190612651565b60405180910390f35b348015610333575f80fd5b5061033c611073565b005b348015610349575f80fd5b506103526111c1565b60405161035f9190612651565b60405180910390f35b348015610373575f80fd5b5061037c6111c7565b005b348015610389575f80fd5b50610392611337565b60405161039f9190612766565b60405180910390f35b3480156103b3575f80fd5b506103bc61135e565b6040516103c99190612651565b60405180910390f35b3480156103dd575f80fd5b506103e6611364565b6040516103f39190612520565b60405180910390f35b348015610407575f80fd5b50610422600480360381019061041d91906125d1565b6113a1565b60405161042f9190612629565b60405180910390f35b348015610443575f80fd5b5061044c6113be565b6040516104599190612651565b60405180910390f35b34801561046d575f80fd5b506104886004803603810190610483919061277f565b6113dd565b6040516104959190612651565b60405180910390f35b60606040518060400160405280600781526020017f4761746577414900000000000000000000000000000000000000000000000000815250905090565b5f6104ee6104e761145f565b8484611466565b6001905092915050565b6009600a6105069190612919565b614e206105139190612963565b81565b600b5481565b5f6009600a61052b9190612919565b6305f5e10061053a9190612963565b905090565b61054761145f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146105d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105ca906129ee565b60405180910390fd5b5f4790505f8111610619576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161061090612a7c565b60405180910390fd5b5f3073ffffffffffffffffffffffffffffffffffffffff168260405161063e90612ac7565b5f6040518083038185875af1925050503d805f8114610678576040519150601f19603f3d011682016040523d82523d5f602084013e61067d565b606091505b50509050806106c1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106b890612b25565b60405180910390fd5b5050565b5f6106d18484846115f4565b61078e846106dd61145f565b610789856040518060600160405280602881526020016134be6028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61074061145f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611f9a9092919063ffffffff16565b611466565b600190509392505050565b6107a161145f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461082d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610824906129ee565b60405180910390fd5b601e821115801561083f5750601e8111155b80156108565750600e5f9054906101000a900460ff165b610895576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161088c90612b8d565b60405180910390fd5b81600781905550806008819055505f6005600854116108ef576108ea60646009600a6108c19190612919565b6305f5e1006108d09190612963565b60016108dc9190612963565b611ffc90919063ffffffff16565b610932565b61092c6103e86009600a6109039190612919565b6305f5e1006109129190612963565b600561091e9190612963565b611ffc90919063ffffffff16565b600b8190555b90507f29ddd482d71f6b4ad9a6b3978c21b2aa56a029d1de02646578471e24a465cb4583836109946103e86009600a61096b9190612919565b6305f5e10061097a9190612963565b60056109869190612963565b611ffc90919063ffffffff16565b84146040516109a593929190612bab565b60405180910390a1505050565b5f6009905090565b6109c261145f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a4e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a45906129ee565b60405180910390fd5b600e5f9054906101000a900460ff1615610a9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a9490612c2a565b60405180910390fd5b5f610afb610ae46064610ad660146009600a610ab99190612919565b6305f5e100610ac89190612963565b61204590919063ffffffff16565b611ffc90919063ffffffff16565b610aed3061102d565b6120bc90919063ffffffff16565b9050737a250d5630b4cf539739df2c5dacb4c659f2488d60065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610b993060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610b859190612919565b6305f5e100610b949190612963565b611466565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c03573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c279190612c5c565b73ffffffffffffffffffffffffffffffffffffffff1663ae28fe2e3060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610cad573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cd19190612c5c565b6040518363ffffffff1660e01b8152600401610cee929190612c87565b6020604051808303815f875af1158015610d0a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d2e9190612c5c565b60055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730845f80610db761145f565b426040518863ffffffff1660e01b8152600401610dd996959493929190612cf0565b60606040518083038185885af1158015610df5573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610e1a9190612d63565b50505060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610eba929190612db3565b6020604051808303815f875af1158015610ed6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610efa9190612e04565b5050565b610f0661145f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f92576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f89906129ee565b60405180910390fd5b6009600a610fa09190612919565b6305f5e100610faf9190612963565b600c819055506009600a610fc39190612919565b6305f5e100610fd29190612963565b600d819055507f69ada53addde5123341ce3a822c5f66292103b2771e41e1f3c00c2de8a63a7f96009600a6110079190612919565b6305f5e1006110169190612963565b6040516110239190612651565b60405180910390a1565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b61107b61145f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611107576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110fe906129ee565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600c5481565b6111cf61145f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461125b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611252906129ee565b60405180910390fd5b600e5f9054906101000a900460ff16156112aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112a190612e79565b60405180910390fd5b6001600e60026101000a81548160ff0219169083151502179055506001600e5f6101000a81548160ff0219169083151502179055507f41a09f17206aad1ccd4bae176b5c5e0b2154e569947545c9019e6bb0cb4ef59c600e5f9054906101000a900460ff16600e60029054906101000a900460ff1660405161132d929190612e97565b60405180910390a1565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600d5481565b60606040518060400160405280600481526020017f4757414900000000000000000000000000000000000000000000000000000000815250905090565b5f6113b46113ad61145f565b84846115f4565b6001905092915050565b6009600a6113cc9190612919565b62030d406113da9190612963565b81565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156114ce57505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b61150d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150490612f08565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516115e79190612651565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561165c57505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b61169b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161169290612f70565b60405180910390fd5b5f81116116dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116d490612ffe565b60405180910390fd5b5f6116e6611337565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156117545750611724611337565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611cea57600e5f9054906101000a900460ff166118475760035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680611807575060035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b611846576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161183d90613066565b60405180910390fd5b5b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156118f0575060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611943575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b156119fd57600c5482111561198d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611984906130ce565b60405180910390fd5b600d548261199a8561102d565b6119a491906130ec565b11156119e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119dc90613169565b60405180910390fd5b60095f8154809291906119f790613187565b91905055505b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611a8557503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611acb57611ac46064611ab6602d60095411611aa3576014611aa7565b6008545b8561204590919063ffffffff16565b611ffc90919063ffffffff16565b9050611b96565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611b5357503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611b9557611b926064611b84602d60095411611b71576014611b75565b6007545b8561204590919063ffffffff16565b611ffc90919063ffffffff16565b90505b5b80600a5f828254611ba791906130ec565b925050819055505f611bb83061102d565b9050600e60019054906101000a900460ff16158015611c23575060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015611c3b5750600e60029054906101000a900460ff165b8015611c6157506009600a611c509190612919565b62030d40611c5e9190612963565b81115b8015611c6f57506028600954115b8015611c9657506009600a611c849190612919565b614e20611c919190612963565b600a54115b15611ce8575f600b548211611cab5781611caf565b600b545b9050611cc8818511611cc15784611cc3565b815b612105565b5f4790505f811115611cde57611cdd47612370565b5b5f600a8190555050505b505b5f811115611de957611d428160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546123d890919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611de09190612651565b60405180910390a35b611e398260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546120bc90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611edc611e9082846120bc90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546123d890919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611f7f84866120bc90919063ffffffff16565b604051611f8c9190612651565b60405180910390a350505050565b5f838311158290611fe1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fd89190612520565b60405180910390fd5b505f8385611fef91906131ce565b9050809150509392505050565b5f61203d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612435565b905092915050565b5f808303612055575f90506120b6565b5f82846120629190612963565b9050828482612071919061322e565b146120b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120a8906132ce565b60405180910390fd5b809150505b92915050565b5f6120fd83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611f9a565b905092915050565b6001600e60016101000a81548160ff0219169083151502179055505f600267ffffffffffffffff81111561213c5761213b6132ec565b5b60405190808252806020026020018201604052801561216a5781602001602082028036833780820191505090505b50905030815f8151811061218157612180613319565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612225573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122499190612c5c565b8160018151811061225d5761225c613319565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506122c33060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611466565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b81526004016123259594939291906133fd565b5f604051808303815f87803b15801561233c575f80fd5b505af115801561234e573d5f803e3d5ffd5b50505050505f600e60016101000a81548160ff02191690831515021790555050565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f193505050501580156123d4573d5f803e3d5ffd5b5050565b5f8082846123e691906130ec565b90508381101561242b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124229061349f565b60405180910390fd5b8091505092915050565b5f808311829061247b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124729190612520565b60405180910390fd5b505f8385612489919061322e565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156124cd5780820151818401526020810190506124b2565b5f8484015250505050565b5f601f19601f8301169050919050565b5f6124f282612496565b6124fc81856124a0565b935061250c8185602086016124b0565b612515816124d8565b840191505092915050565b5f6020820190508181035f83015261253881846124e8565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61256d82612544565b9050919050565b61257d81612563565b8114612587575f80fd5b50565b5f8135905061259881612574565b92915050565b5f819050919050565b6125b08161259e565b81146125ba575f80fd5b50565b5f813590506125cb816125a7565b92915050565b5f80604083850312156125e7576125e6612540565b5b5f6125f48582860161258a565b9250506020612605858286016125bd565b9150509250929050565b5f8115159050919050565b6126238161260f565b82525050565b5f60208201905061263c5f83018461261a565b92915050565b61264b8161259e565b82525050565b5f6020820190506126645f830184612642565b92915050565b5f805f6060848603121561268157612680612540565b5b5f61268e8682870161258a565b935050602061269f8682870161258a565b92505060406126b0868287016125bd565b9150509250925092565b5f80604083850312156126d0576126cf612540565b5b5f6126dd858286016125bd565b92505060206126ee858286016125bd565b9150509250929050565b5f60ff82169050919050565b61270d816126f8565b82525050565b5f6020820190506127265f830184612704565b92915050565b5f6020828403121561274157612740612540565b5b5f61274e8482850161258a565b91505092915050565b61276081612563565b82525050565b5f6020820190506127795f830184612757565b92915050565b5f806040838503121561279557612794612540565b5b5f6127a28582860161258a565b92505060206127b38582860161258a565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111561283f5780860481111561281b5761281a6127bd565b5b600185161561282a5780820291505b8081029050612838856127ea565b94506127ff565b94509492505050565b5f826128575760019050612912565b81612864575f9050612912565b816001811461287a5760028114612884576128b3565b6001915050612912565b60ff841115612896576128956127bd565b5b8360020a9150848211156128ad576128ac6127bd565b5b50612912565b5060208310610133831016604e8410600b84101617156128e85782820a9050838111156128e3576128e26127bd565b5b612912565b6128f584848460016127f6565b9250905081840481111561290c5761290b6127bd565b5b81810290505b9392505050565b5f6129238261259e565b915061292e836126f8565b925061295b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612848565b905092915050565b5f61296d8261259e565b91506129788361259e565b92508282026129868161259e565b9150828204841483151761299d5761299c6127bd565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6129d86020836124a0565b91506129e3826129a4565b602082019050919050565b5f6020820190508181035f830152612a05816129cc565b9050919050565b7f4554482062616c616e6365206d7573742062652067726561746572207468616e5f8201527f2030000000000000000000000000000000000000000000000000000000000000602082015250565b5f612a666022836124a0565b9150612a7182612a0c565b604082019050919050565b5f6020820190508181035f830152612a9381612a5a565b9050919050565b5f81905092915050565b50565b5f612ab25f83612a9a565b9150612abd82612aa4565b5f82019050919050565b5f612ad182612aa7565b9150819050919050565b7f4661696c656420746f20636c656172204554482062616c616e636500000000005f82015250565b5f612b0f601b836124a0565b9150612b1a82612adb565b602082019050919050565b5f6020820190508181035f830152612b3c81612b03565b9050919050565b7f457863656564732076616c7565000000000000000000000000000000000000005f82015250565b5f612b77600d836124a0565b9150612b8282612b43565b602082019050919050565b5f6020820190508181035f830152612ba481612b6b565b9050919050565b5f606082019050612bbe5f830186612642565b612bcb6020830185612642565b612bd8604083018461261a565b949350505050565b7f696e697420616c72656164792063616c6c6564000000000000000000000000005f82015250565b5f612c146013836124a0565b9150612c1f82612be0565b602082019050919050565b5f6020820190508181035f830152612c4181612c08565b9050919050565b5f81519050612c5681612574565b92915050565b5f60208284031215612c7157612c70612540565b5b5f612c7e84828501612c48565b91505092915050565b5f604082019050612c9a5f830185612757565b612ca76020830184612757565b9392505050565b5f819050919050565b5f819050919050565b5f612cda612cd5612cd084612cae565b612cb7565b61259e565b9050919050565b612cea81612cc0565b82525050565b5f60c082019050612d035f830189612757565b612d106020830188612642565b612d1d6040830187612ce1565b612d2a6060830186612ce1565b612d376080830185612757565b612d4460a0830184612642565b979650505050505050565b5f81519050612d5d816125a7565b92915050565b5f805f60608486031215612d7a57612d79612540565b5b5f612d8786828701612d4f565b9350506020612d9886828701612d4f565b9250506040612da986828701612d4f565b9150509250925092565b5f604082019050612dc65f830185612757565b612dd36020830184612642565b9392505050565b612de38161260f565b8114612ded575f80fd5b50565b5f81519050612dfe81612dda565b92915050565b5f60208284031215612e1957612e18612540565b5b5f612e2684828501612df0565b91505092915050565b7f74726164696e6720616c7265616479206f70656e0000000000000000000000005f82015250565b5f612e636014836124a0565b9150612e6e82612e2f565b602082019050919050565b5f6020820190508181035f830152612e9081612e57565b9050919050565b5f604082019050612eaa5f83018561261a565b612eb7602083018461261a565b9392505050565b7f45524332303a20617070726f766520746865207a65726f2061646472657373005f82015250565b5f612ef2601f836124a0565b9150612efd82612ebe565b602082019050919050565b5f6020820190508181035f830152612f1f81612ee6565b9050919050565b7f45524332303a207472616e7366657220746865207a65726f20616464726573735f82015250565b5f612f5a6020836124a0565b9150612f6582612f26565b602082019050919050565b5f6020820190508181035f830152612f8781612f4e565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612fe86029836124a0565b9150612ff382612f8e565b604082019050919050565b5f6020820190508181035f83015261301581612fdc565b9050919050565b7f74726164696e67206e6f7420796574206f70656e0000000000000000000000005f82015250565b5f6130506014836124a0565b915061305b8261301c565b602082019050919050565b5f6020820190508181035f83015261307d81613044565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f6130b86019836124a0565b91506130c382613084565b602082019050919050565b5f6020820190508181035f8301526130e5816130ac565b9050919050565b5f6130f68261259e565b91506131018361259e565b9250828201905080821115613119576131186127bd565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f613153601a836124a0565b915061315e8261311f565b602082019050919050565b5f6020820190508181035f83015261318081613147565b9050919050565b5f6131918261259e565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036131c3576131c26127bd565b5b600182019050919050565b5f6131d88261259e565b91506131e38361259e565b92508282039050818111156131fb576131fa6127bd565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6132388261259e565b91506132438361259e565b92508261325357613252613201565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f6132b86021836124a0565b91506132c38261325e565b604082019050919050565b5f6020820190508181035f8301526132e5816132ac565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61337881612563565b82525050565b5f613389838361336f565b60208301905092915050565b5f602082019050919050565b5f6133ab82613346565b6133b58185613350565b93506133c083613360565b805f5b838110156133f05781516133d7888261337e565b97506133e283613395565b9250506001810190506133c3565b5085935050505092915050565b5f60a0820190506134105f830188612642565b61341d6020830187612ce1565b818103604083015261342f81866133a1565b905061343e6060830185612757565b61344b6080830184612642565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f613489601b836124a0565b915061349482613455565b602082019050919050565b5f6020820190508181035f8301526134b68161347d565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212203fb46c3a591f62e4317d9e041fa13576059f3a83701be9c38e98e68a0f06e02a64736f6c63430008140033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000eba22782973a2406a7c6bf8042720d5701113651
-----Decoded View---------------
Arg [0] : taxWallet (address): 0xeBa22782973a2406a7c6bF8042720d5701113651
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000eba22782973a2406a7c6bf8042720d5701113651
Deployed Bytecode Sourcemap
4063:9717:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6145:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7051:193;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5099:61;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5240:52;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6422:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12959:301;;;;;;;;;;;;;:::i;:::-;;7252:446;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13268:472;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6331:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11645:915;;;;;;;;;;;;;:::i;:::-;;12797:154;;;;;;;;;;;;;:::i;:::-;;6525:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3016:148;;;;;;;;;;;;;:::i;:::-;;5299:53;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12568:221;;;;;;;;;;;;;:::i;:::-;;2802:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5359:55;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6236:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6652:199;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5167:66;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6859:184;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6145:83;6182:13;6215:5;;;;;;;;;;;;;;;;;6208:12;;6145:83;:::o;7051:193::-;7153:4;7175:39;7184:12;:10;:12::i;:::-;7198:7;7207:6;7175:8;:39::i;:::-;7232:4;7225:11;;7051:193;;;;:::o;5099:61::-;5024:1;5147:2;:13;;;;:::i;:::-;5139:5;:21;;;;:::i;:::-;5099:61;:::o;5240:52::-;;;;:::o;6422:95::-;6475:7;5024:1;5079:2;:13;;;;:::i;:::-;5067:9;:25;;;;:::i;:::-;6495:14;;6422:95;:::o;12959:301::-;2939:12;:10;:12::i;:::-;2929:22;;:6;;;;;;;;;;:22;;;2921:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13010:18:::1;13031:21;13010:42;;13084:1;13071:10;:14;13063:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;13136:12;13161:4;13153:18;;13179:10;13153:41;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13135:59;;;13213:7;13205:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;12999:261;;12959:301::o:0;7252:446::-;7384:4;7401:36;7411:6;7419:9;7430:6;7401:9;:36::i;:::-;7448:220;7471:6;7492:12;:10;:12::i;:::-;7519:138;7575:6;7519:138;;;;;;;;;;;;;;;;;:11;:19;7531:6;7519:19;;;;;;;;;;;;;;;:33;7539:12;:10;:12::i;:::-;7519:33;;;;;;;;;;;;;;;;:37;;:138;;;;;:::i;:::-;7448:8;:220::i;:::-;7686:4;7679:11;;7252:446;;;;;:::o;13268:472::-;2939:12;:10;:12::i;:::-;2929:22;;:6;;;;;;;;;;:22;;;2921:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13382:2:::1;13369:9;:15;;:35;;;;;13402:2;13388:10;:16;;13369:35;:50;;;;;13408:11;;;;;;;;;;;13369:50;13360:100;;;;;;;;;;;;:::i;:::-;;;;;;;;;13486:9;13471:12;:24;;;;13522:10;13506:13;:26;;;;13543:18;13580:1;13564:13;;:17;:81;;13624:21;13641:3;5024:1;5079:2;:13;;;;:::i;:::-;5067:9;:25;;;;:::i;:::-;13625:1;:10;;;;:::i;:::-;13624:16;;:21;;;;:::i;:::-;13564:81;;;13598:22;13615:4;5024:1;5079:2;:13;;;;:::i;:::-;5067:9;:25;;;;:::i;:::-;13599:1;:10;;;;:::i;:::-;13598:16;;:22;;;;:::i;:::-;13584:11;:36;;;13564:81;13543:102;;13661:71;13670:9;13681:10;13708:22;13725:4;5024:1;5079:2;:13;;;;:::i;:::-;5067:9;:25;;;;:::i;:::-;13709:1;:10;;;;:::i;:::-;13708:16;;:22;;;;:::i;:::-;13694:10;:36;13661:71;;;;;;;;:::i;:::-;;;;;;;;13349:391;13268:472:::0;;:::o;6331:83::-;6372:5;5024:1;6390:16;;6331:83;:::o;11645:915::-;2939:12;:10;:12::i;:::-;2929:22;;:6;;;;;;;;;;:22;;;2921:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11705:11:::1;;;;;;;;;;;11704:12;11696:44;;;;;;;;;;;;:::i;:::-;;;;;;;;;11751:19;11773:90;11816:36;11848:3;11816:27;4504:2;5024:1;5079:2;:13;;;;:::i;:::-;5067:9;:25;;;;:::i;:::-;11816:11;;:27;;;;:::i;:::-;:31;;:36;;;;:::i;:::-;11773:24;11791:4;11773:9;:24::i;:::-;:28;;:90;;;;:::i;:::-;11751:112;;11925:42;11874:15;;:104;;;;;;;;;;;;;;;;;;11989:58;12006:4;12021:15;;;;;;;;;;;5024:1;5079:2;:13;;;;:::i;:::-;5067:9;:25;;;;:::i;:::-;11989:8;:58::i;:::-;12092:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12074:54;;;12151:4;12171:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12074:130;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12058:13;;:146;;;;;;;;;;;;;;;;;;12215:15;;;;;;;;;;;:31;;;12254:21;12299:4;12319:11;12345:1;12361::::0;12377:12:::1;:10;:12::i;:::-;12404:15;12215:215;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;12448:13;;;;;;;;;;;12441:29;;;12493:15;;;;;;;;;;;12524:17;12441:111;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11685:875;11645:915::o:0;12797:154::-;2939:12;:10;:12::i;:::-;2929:22;;:6;;;;;;;;;;:22;;;2921:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;5024:1:::1;5079:2;:13;;;;:::i;:::-;5067:9;:25;;;;:::i;:::-;12852:12;:22;;;;5024:1;5079:2;:13;;;;:::i;:::-;5067:9;:25;;;;:::i;:::-;12885:14;:24;;;;12925:18;5024:1;5079:2;:13;;;;:::i;:::-;5067:9;:25;;;;:::i;:::-;12925:18;;;;;;:::i;:::-;;;;;;;;12797:154::o:0;6525:119::-;6591:7;6618:9;:18;6628:7;6618:18;;;;;;;;;;;;;;;;6611:25;;6525:119;;;:::o;3016:148::-;2939:12;:10;:12::i;:::-;2929:22;;:6;;;;;;;;;;:22;;;2921:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3123:1:::1;3086:40;;3107:6;::::0;::::1;;;;;;;;3086:40;;;;;;;;;;;;3154:1;3137:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;3016:148::o:0;5299:53::-;;;;:::o;12568:221::-;2939:12;:10;:12::i;:::-;2929:22;;:6;;;;;;;;;;:22;;;2921:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12632:11:::1;;;;;;;;;;;12631:12;12623:45;;;;;;;;;;;;:::i;:::-;;;;;;;;;12693:4;12679:11;;:18;;;;;;;;;;;;;;;;;;12722:4;12708:11;;:18;;;;;;;;;;;;;;;;;;12742:39;12756:11;;;;;;;;;;;12769;;;;;;;;;;;12742:39;;;;;;;:::i;:::-;;;;;;;;12568:221::o:0;2802:79::-;2840:7;2867:6;;;;;;;;;;;2860:13;;2802:79;:::o;5359:55::-;;;;:::o;6236:87::-;6275:13;6308:7;;;;;;;;;;;;;;;;;6301:14;;6236:87;:::o;6652:199::-;6757:4;6779:42;6789:12;:10;:12::i;:::-;6803:9;6814:6;6779:9;:42::i;:::-;6839:4;6832:11;;6652:199;;;;:::o;5167:66::-;5024:1;5220:2;:13;;;;:::i;:::-;5211:6;:22;;;;:::i;:::-;5167:66;:::o;6859:184::-;6976:7;7008:11;:18;7020:5;7008:18;;;;;;;;;;;;;;;:27;7027:7;7008:27;;;;;;;;;;;;;;;;7001:34;;6859:184;;;;:::o;342:98::-;395:7;422:10;415:17;;342:98;:::o;7706:347::-;7864:1;7847:19;;:5;:19;;;;:44;;;;;7889:1;7870:21;;:7;:21;;;;7847:44;7825:125;;;;;;;;;;;;:::i;:::-;;;;;;;;;7991:6;7961:11;:18;7973:5;7961:18;;;;;;;;;;;;;;;:27;7980:7;7961:27;;;;;;;;;;;;;;;:36;;;;8029:7;8013:32;;8022:5;8013:32;;;8038:6;8013:32;;;;;;:::i;:::-;;;;;;;;7706:347;;;:::o;8061:2985::-;8213:1;8197:18;;:4;:18;;;;:38;;;;;8233:1;8219:16;;:2;:16;;;;8197:38;8175:120;;;;;;;;;;;;:::i;:::-;;;;;;;;;8323:1;8314:6;:10;8306:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8381:17;8427:7;:5;:7::i;:::-;8419:15;;:4;:15;;;;:32;;;;;8444:7;:5;:7::i;:::-;8438:13;;:2;:13;;;;8419:32;8415:2260;;;8473:11;;;;;;;;;;;8468:197;;8535:18;:22;8554:2;8535:22;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;8561:18;:24;8580:4;8561:24;;;;;;;;;;;;;;;;;;;;;;;;;8535:50;8505:144;;;;;;;;;;;;:::i;:::-;;;;;;;;;8468:197;8711:13;;;;;;;;;;;8703:21;;:4;:21;;;:72;;;;;8759:15;;;;;;;;;;;8745:30;;:2;:30;;;;8703:72;:116;;;;;8797:18;:22;8816:2;8797:22;;;;;;;;;;;;;;;;;;;;;;;;;8796:23;8703:116;8681:438;;;8872:12;;8862:6;:22;;8854:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;8989:14;;8979:6;8963:13;8973:2;8963:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;8933:140;;;;;;;;;;;;:::i;:::-;;;;;;;;;9092:9;;:11;;;;;;;;;:::i;:::-;;;;;;8681:438;9145:13;;;;;;;;;;;9139:19;;:2;:19;;;:44;;;;;9178:4;9162:21;;:4;:21;;;;9139:44;9135:667;;;9216:235;9447:3;9216:204;4661:2;9276:9;;:28;9275:122;;4556:2;9275:122;;;9337:13;;9275:122;9216:6;:32;;:204;;;;:::i;:::-;:230;;:235;;;;:::i;:::-;9204:247;;9135:667;;;9485:13;;;;;;;;;;;9477:21;;:4;:21;;;:44;;;;;9516:4;9502:19;;:2;:19;;;;9477:44;9473:329;;;9554:232;9782:3;9554:201;4608:2;9614:9;;:27;9613:119;;4504:2;9613:119;;;9674:12;;9613:119;9554:6;:32;;:201;;;;:::i;:::-;:227;;:232;;;;:::i;:::-;9542:244;;9473:329;9135:667;9831:9;9818;;:22;;;;;;;:::i;:::-;;;;;;;;9855:28;9886:24;9904:4;9886:9;:24::i;:::-;9855:55;;9948:6;;;;;;;;;;;9947:7;:47;;;;;9981:13;;;;;;;;;;;9975:19;;:2;:19;;;9947:47;:79;;;;;10015:11;;;;;;;;;;;9947:79;:140;;;;;5024:1;5220:2;:13;;;;:::i;:::-;5211:6;:22;;;;:::i;:::-;10047:20;:40;9947:140;:191;;;;;4716:2;10108:9;;:30;9947:191;:237;;;;;5024:1;5147:2;:13;;;;:::i;:::-;5139:5;:21;;;;:::i;:::-;10159:9;;:25;9947:237;9925:739;;;10219:14;10260:11;;10237:20;:34;10236:115;;10331:20;10236:115;;;10296:11;;10236:115;10219:132;;10370:53;10397:6;10388;:15;10387:35;;10416:6;10387:35;;;10407:6;10387:35;10370:16;:53::i;:::-;10442:26;10471:21;10442:50;;10536:1;10515:18;:22;10511:106;;;10562:35;10575:21;10562:12;:35::i;:::-;10511:106;10647:1;10635:9;:13;;;;10200:464;;9925:739;8453:2222;8415:2260;10703:1;10691:9;:13;10687:172;;;10748:39;10777:9;10748;:24;10766:4;10748:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;10721:9;:24;10739:4;10721:24;;;;;;;;;;;;;;;:66;;;;10830:4;10807:40;;10816:4;10807:40;;;10837:9;10807:40;;;;;;:::i;:::-;;;;;;;;10687:172;10887:27;10907:6;10887:9;:15;10897:4;10887:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;10869:9;:15;10879:4;10869:15;;;;;;;;;;;;;;;:45;;;;10941:40;10959:21;10970:9;10959:6;:10;;:21;;;;:::i;:::-;10941:9;:13;10951:2;10941:13;;;;;;;;;;;;;;;;:17;;:40;;;;:::i;:::-;10925:9;:13;10935:2;10925:13;;;;;;;;;;;;;;;:56;;;;11012:2;10997:41;;11006:4;10997:41;;;11016:21;11027:9;11016:6;:10;;:21;;;;:::i;:::-;10997:41;;;;;;:::i;:::-;;;;;;;;8164:2882;8061:2985;;;:::o;1604:224::-;1724:7;1757:1;1752;:6;;1760:12;1744:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1784:9;1800:1;1796;:5;;;;:::i;:::-;1784:17;;1819:1;1812:8;;;1604:224;;;;;:::o;2090:132::-;2148:7;2175:39;2179:1;2182;2175:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2168:46;;2090:132;;;;:::o;1836:246::-;1894:7;1923:1;1918;:6;1914:47;;1948:1;1941:8;;;;1914:47;1971:9;1987:1;1983;:5;;;;:::i;:::-;1971:17;;2016:1;2011;2007;:5;;;;:::i;:::-;:10;1999:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2073:1;2066:8;;;1836:246;;;;;:::o;1460:136::-;1518:7;1545:43;1549:1;1552;1545:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1538:50;;1460:136;;;;:::o;11154:483::-;5750:4;5741:6;;:13;;;;;;;;;;;;;;;;;;11232:21:::1;11270:1;11256:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11232:40;;11301:4;11283;11288:1;11283:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;11327:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11317:4;11322:1;11317:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;11360:62;11377:4;11392:15;;;;;;;;;;;11410:11;11360:8;:62::i;:::-;11433:15;;;;;;;;;;;:66;;;11514:11;11540:1;11556:4;11583;11603:15;11433:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;11221:416;5786:5:::0;5777:6;;:14;;;;;;;;;;;;;;;;;;11154:483;:::o;11054:92::-;11111:10;;;;;;;;;;;:19;;:27;11131:6;11111:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11054:92;:::o;1273:179::-;1331:7;1351:9;1367:1;1363;:5;;;;:::i;:::-;1351:17;;1392:1;1387;:6;;1379:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1443:1;1436:8;;;1273:179;;;;:::o;2230:223::-;2350:7;2382:1;2378;:5;2385:12;2370:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2409:9;2425:1;2421;:5;;;;:::i;:::-;2409:17;;2444:1;2437:8;;;2230:223;;;;;:::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:118::-;3533:24;3551:5;3533:24;:::i;:::-;3528:3;3521:37;3446:118;;:::o;3570:222::-;3663:4;3701:2;3690:9;3686:18;3678:26;;3714:71;3782:1;3771:9;3767:17;3758:6;3714:71;:::i;:::-;3570:222;;;;:::o;3798:619::-;3875:6;3883;3891;3940:2;3928:9;3919:7;3915:23;3911:32;3908:119;;;3946:79;;:::i;:::-;3908:119;4066:1;4091:53;4136:7;4127:6;4116:9;4112:22;4091:53;:::i;:::-;4081:63;;4037:117;4193:2;4219:53;4264:7;4255:6;4244:9;4240:22;4219:53;:::i;:::-;4209:63;;4164:118;4321:2;4347:53;4392:7;4383:6;4372:9;4368:22;4347:53;:::i;:::-;4337:63;;4292:118;3798:619;;;;;:::o;4423:474::-;4491:6;4499;4548:2;4536:9;4527:7;4523:23;4519:32;4516:119;;;4554:79;;:::i;:::-;4516:119;4674:1;4699:53;4744:7;4735:6;4724:9;4720:22;4699:53;:::i;:::-;4689:63;;4645:117;4801:2;4827:53;4872:7;4863:6;4852:9;4848:22;4827:53;:::i;:::-;4817:63;;4772:118;4423:474;;;;;:::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:180::-;6548:77;6545:1;6538:88;6645:4;6642:1;6635:15;6669:4;6666:1;6659:15;6686:102;6728:8;6775:5;6772:1;6768:13;6747:34;;6686:102;;;:::o;6794:848::-;6855:5;6862:4;6886:6;6877:15;;6910:5;6901:14;;6924:712;6945:1;6935:8;6932:15;6924:712;;;7040:4;7035:3;7031:14;7025:4;7022:24;7019:50;;;7049:18;;:::i;:::-;7019:50;7099:1;7089:8;7085:16;7082:451;;;7514:4;7507:5;7503:16;7494:25;;7082:451;7564:4;7558;7554:15;7546:23;;7594:32;7617:8;7594:32;:::i;:::-;7582:44;;6924:712;;;6794:848;;;;;;;:::o;7648:1073::-;7702:5;7893:8;7883:40;;7914:1;7905:10;;7916:5;;7883:40;7942:4;7932:36;;7959:1;7950:10;;7961:5;;7932:36;8028:4;8076:1;8071:27;;;;8112:1;8107:191;;;;8021:277;;8071:27;8089:1;8080:10;;8091:5;;;8107:191;8152:3;8142:8;8139:17;8136:43;;;8159:18;;:::i;:::-;8136:43;8208:8;8205:1;8201:16;8192:25;;8243:3;8236:5;8233:14;8230:40;;;8250:18;;:::i;:::-;8230:40;8283:5;;;8021:277;;8407:2;8397:8;8394:16;8388:3;8382:4;8379:13;8375:36;8357:2;8347:8;8344:16;8339:2;8333:4;8330:12;8326:35;8310:111;8307:246;;;8463:8;8457:4;8453:19;8444:28;;8498:3;8491:5;8488:14;8485:40;;;8505:18;;:::i;:::-;8485:40;8538:5;;8307:246;8578:42;8616:3;8606:8;8600:4;8597:1;8578:42;:::i;:::-;8563:57;;;;8652:4;8647:3;8643:14;8636:5;8633:25;8630:51;;;8661:18;;:::i;:::-;8630:51;8710:4;8703:5;8699:16;8690:25;;7648:1073;;;;;;:::o;8727:281::-;8785:5;8809:23;8827:4;8809:23;:::i;:::-;8801:31;;8853:25;8869:8;8853:25;:::i;:::-;8841:37;;8897:104;8934:66;8924:8;8918:4;8897:104;:::i;:::-;8888:113;;8727:281;;;;:::o;9014:410::-;9054:7;9077:20;9095:1;9077:20;:::i;:::-;9072:25;;9111:20;9129:1;9111:20;:::i;:::-;9106:25;;9166:1;9163;9159:9;9188:30;9206:11;9188:30;:::i;:::-;9177:41;;9367:1;9358:7;9354:15;9351:1;9348:22;9328:1;9321:9;9301:83;9278:139;;9397:18;;:::i;:::-;9278:139;9062:362;9014:410;;;;:::o;9430:182::-;9570:34;9566:1;9558:6;9554:14;9547:58;9430:182;:::o;9618:366::-;9760:3;9781:67;9845:2;9840:3;9781:67;:::i;:::-;9774:74;;9857:93;9946:3;9857:93;:::i;:::-;9975:2;9970:3;9966:12;9959:19;;9618:366;;;:::o;9990:419::-;10156:4;10194:2;10183:9;10179:18;10171:26;;10243:9;10237:4;10233:20;10229:1;10218:9;10214:17;10207:47;10271:131;10397:4;10271:131;:::i;:::-;10263:139;;9990:419;;;:::o;10415:221::-;10555:34;10551:1;10543:6;10539:14;10532:58;10624:4;10619:2;10611:6;10607:15;10600:29;10415:221;:::o;10642:366::-;10784:3;10805:67;10869:2;10864:3;10805:67;:::i;:::-;10798:74;;10881:93;10970:3;10881:93;:::i;:::-;10999:2;10994:3;10990:12;10983:19;;10642:366;;;:::o;11014:419::-;11180:4;11218:2;11207:9;11203:18;11195:26;;11267:9;11261:4;11257:20;11253:1;11242:9;11238:17;11231:47;11295:131;11421:4;11295:131;:::i;:::-;11287:139;;11014:419;;;:::o;11439:147::-;11540:11;11577:3;11562:18;;11439:147;;;;:::o;11592:114::-;;:::o;11712:398::-;11871:3;11892:83;11973:1;11968:3;11892:83;:::i;:::-;11885:90;;11984:93;12073:3;11984:93;:::i;:::-;12102:1;12097:3;12093:11;12086:18;;11712:398;;;:::o;12116:379::-;12300:3;12322:147;12465:3;12322:147;:::i;:::-;12315:154;;12486:3;12479:10;;12116:379;;;:::o;12501:177::-;12641:29;12637:1;12629:6;12625:14;12618:53;12501:177;:::o;12684:366::-;12826:3;12847:67;12911:2;12906:3;12847:67;:::i;:::-;12840:74;;12923:93;13012:3;12923:93;:::i;:::-;13041:2;13036:3;13032:12;13025:19;;12684:366;;;:::o;13056:419::-;13222:4;13260:2;13249:9;13245:18;13237:26;;13309:9;13303:4;13299:20;13295:1;13284:9;13280:17;13273:47;13337:131;13463:4;13337:131;:::i;:::-;13329:139;;13056:419;;;:::o;13481:163::-;13621:15;13617:1;13609:6;13605:14;13598:39;13481:163;:::o;13650:366::-;13792:3;13813:67;13877:2;13872:3;13813:67;:::i;:::-;13806:74;;13889:93;13978:3;13889:93;:::i;:::-;14007:2;14002:3;13998:12;13991:19;;13650:366;;;:::o;14022:419::-;14188:4;14226:2;14215:9;14211:18;14203:26;;14275:9;14269:4;14265:20;14261:1;14250:9;14246:17;14239:47;14303:131;14429:4;14303:131;:::i;:::-;14295:139;;14022:419;;;:::o;14447:430::-;14590:4;14628:2;14617:9;14613:18;14605:26;;14641:71;14709:1;14698:9;14694:17;14685:6;14641:71;:::i;:::-;14722:72;14790:2;14779:9;14775:18;14766:6;14722:72;:::i;:::-;14804:66;14866:2;14855:9;14851:18;14842:6;14804:66;:::i;:::-;14447:430;;;;;;:::o;14883:169::-;15023:21;15019:1;15011:6;15007:14;15000:45;14883:169;:::o;15058:366::-;15200:3;15221:67;15285:2;15280:3;15221:67;:::i;:::-;15214:74;;15297:93;15386:3;15297:93;:::i;:::-;15415:2;15410:3;15406:12;15399:19;;15058:366;;;:::o;15430:419::-;15596:4;15634:2;15623:9;15619:18;15611:26;;15683:9;15677:4;15673:20;15669:1;15658:9;15654:17;15647:47;15711:131;15837:4;15711:131;:::i;:::-;15703:139;;15430:419;;;:::o;15855:143::-;15912:5;15943:6;15937:13;15928:22;;15959:33;15986:5;15959:33;:::i;:::-;15855:143;;;;:::o;16004:351::-;16074:6;16123:2;16111:9;16102:7;16098:23;16094:32;16091:119;;;16129:79;;:::i;:::-;16091:119;16249:1;16274:64;16330:7;16321:6;16310:9;16306:22;16274:64;:::i;:::-;16264:74;;16220:128;16004:351;;;;:::o;16361:332::-;16482:4;16520:2;16509:9;16505:18;16497:26;;16533:71;16601:1;16590:9;16586:17;16577:6;16533:71;:::i;:::-;16614:72;16682:2;16671:9;16667:18;16658:6;16614:72;:::i;:::-;16361:332;;;;;:::o;16699:85::-;16744:7;16773:5;16762:16;;16699:85;;;:::o;16790:60::-;16818:3;16839:5;16832:12;;16790:60;;;:::o;16856:158::-;16914:9;16947:61;16965:42;16974:32;17000:5;16974:32;:::i;:::-;16965:42;:::i;:::-;16947:61;:::i;:::-;16934:74;;16856:158;;;:::o;17020:147::-;17115:45;17154:5;17115:45;:::i;:::-;17110:3;17103:58;17020:147;;:::o;17173:807::-;17422:4;17460:3;17449:9;17445:19;17437:27;;17474:71;17542:1;17531:9;17527:17;17518:6;17474:71;:::i;:::-;17555:72;17623:2;17612:9;17608:18;17599:6;17555:72;:::i;:::-;17637:80;17713:2;17702:9;17698:18;17689:6;17637:80;:::i;:::-;17727;17803:2;17792:9;17788:18;17779:6;17727:80;:::i;:::-;17817:73;17885:3;17874:9;17870:19;17861:6;17817:73;:::i;:::-;17900;17968:3;17957:9;17953:19;17944:6;17900:73;:::i;:::-;17173:807;;;;;;;;;:::o;17986:143::-;18043:5;18074:6;18068:13;18059:22;;18090:33;18117:5;18090:33;:::i;:::-;17986:143;;;;:::o;18135:663::-;18223:6;18231;18239;18288:2;18276:9;18267:7;18263:23;18259:32;18256:119;;;18294:79;;:::i;:::-;18256:119;18414:1;18439:64;18495:7;18486:6;18475:9;18471:22;18439:64;:::i;:::-;18429:74;;18385:128;18552:2;18578:64;18634:7;18625:6;18614:9;18610:22;18578:64;:::i;:::-;18568:74;;18523:129;18691:2;18717:64;18773:7;18764:6;18753:9;18749:22;18717:64;:::i;:::-;18707:74;;18662:129;18135:663;;;;;:::o;18804:332::-;18925:4;18963:2;18952:9;18948:18;18940:26;;18976:71;19044:1;19033:9;19029:17;19020:6;18976:71;:::i;:::-;19057:72;19125:2;19114:9;19110:18;19101:6;19057:72;:::i;:::-;18804:332;;;;;:::o;19142:116::-;19212:21;19227:5;19212:21;:::i;:::-;19205:5;19202:32;19192:60;;19248:1;19245;19238:12;19192:60;19142:116;:::o;19264:137::-;19318:5;19349:6;19343:13;19334:22;;19365:30;19389:5;19365:30;:::i;:::-;19264:137;;;;:::o;19407:345::-;19474:6;19523:2;19511:9;19502:7;19498:23;19494:32;19491:119;;;19529:79;;:::i;:::-;19491:119;19649:1;19674:61;19727:7;19718:6;19707:9;19703:22;19674:61;:::i;:::-;19664:71;;19620:125;19407:345;;;;:::o;19758:170::-;19898:22;19894:1;19886:6;19882:14;19875:46;19758:170;:::o;19934:366::-;20076:3;20097:67;20161:2;20156:3;20097:67;:::i;:::-;20090:74;;20173:93;20262:3;20173:93;:::i;:::-;20291:2;20286:3;20282:12;20275:19;;19934:366;;;:::o;20306:419::-;20472:4;20510:2;20499:9;20495:18;20487:26;;20559:9;20553:4;20549:20;20545:1;20534:9;20530:17;20523:47;20587:131;20713:4;20587:131;:::i;:::-;20579:139;;20306:419;;;:::o;20731:308::-;20840:4;20878:2;20867:9;20863:18;20855:26;;20891:65;20953:1;20942:9;20938:17;20929:6;20891:65;:::i;:::-;20966:66;21028:2;21017:9;21013:18;21004:6;20966:66;:::i;:::-;20731:308;;;;;:::o;21045:181::-;21185:33;21181:1;21173:6;21169:14;21162:57;21045:181;:::o;21232:366::-;21374:3;21395:67;21459:2;21454:3;21395:67;:::i;:::-;21388:74;;21471:93;21560:3;21471:93;:::i;:::-;21589:2;21584:3;21580:12;21573:19;;21232:366;;;:::o;21604:419::-;21770:4;21808:2;21797:9;21793:18;21785:26;;21857:9;21851:4;21847:20;21843:1;21832:9;21828:17;21821:47;21885:131;22011:4;21885:131;:::i;:::-;21877:139;;21604:419;;;:::o;22029:182::-;22169:34;22165:1;22157:6;22153:14;22146:58;22029:182;:::o;22217:366::-;22359:3;22380:67;22444:2;22439:3;22380:67;:::i;:::-;22373:74;;22456:93;22545:3;22456:93;:::i;:::-;22574:2;22569:3;22565:12;22558:19;;22217:366;;;:::o;22589:419::-;22755:4;22793:2;22782:9;22778:18;22770:26;;22842:9;22836:4;22832:20;22828:1;22817:9;22813:17;22806:47;22870:131;22996:4;22870:131;:::i;:::-;22862:139;;22589:419;;;:::o;23014:228::-;23154:34;23150:1;23142:6;23138:14;23131:58;23223:11;23218:2;23210:6;23206:15;23199:36;23014:228;:::o;23248:366::-;23390:3;23411:67;23475:2;23470:3;23411:67;:::i;:::-;23404:74;;23487:93;23576:3;23487:93;:::i;:::-;23605:2;23600:3;23596:12;23589:19;;23248:366;;;:::o;23620:419::-;23786:4;23824:2;23813:9;23809:18;23801:26;;23873:9;23867:4;23863:20;23859:1;23848:9;23844:17;23837:47;23901:131;24027:4;23901:131;:::i;:::-;23893:139;;23620:419;;;:::o;24045:170::-;24185:22;24181:1;24173:6;24169:14;24162:46;24045:170;:::o;24221:366::-;24363:3;24384:67;24448:2;24443:3;24384:67;:::i;:::-;24377:74;;24460:93;24549:3;24460:93;:::i;:::-;24578:2;24573:3;24569:12;24562:19;;24221:366;;;:::o;24593:419::-;24759:4;24797:2;24786:9;24782:18;24774:26;;24846:9;24840:4;24836:20;24832:1;24821:9;24817:17;24810:47;24874:131;25000:4;24874:131;:::i;:::-;24866:139;;24593:419;;;:::o;25018:175::-;25158:27;25154:1;25146:6;25142:14;25135:51;25018:175;:::o;25199:366::-;25341:3;25362:67;25426:2;25421:3;25362:67;:::i;:::-;25355:74;;25438:93;25527:3;25438:93;:::i;:::-;25556:2;25551:3;25547:12;25540:19;;25199:366;;;:::o;25571:419::-;25737:4;25775:2;25764:9;25760:18;25752:26;;25824:9;25818:4;25814:20;25810:1;25799:9;25795:17;25788:47;25852:131;25978:4;25852:131;:::i;:::-;25844:139;;25571:419;;;:::o;25996:191::-;26036:3;26055:20;26073:1;26055:20;:::i;:::-;26050:25;;26089:20;26107:1;26089:20;:::i;:::-;26084:25;;26132:1;26129;26125:9;26118:16;;26153:3;26150:1;26147:10;26144:36;;;26160:18;;:::i;:::-;26144:36;25996:191;;;;:::o;26193:176::-;26333:28;26329:1;26321:6;26317:14;26310:52;26193:176;:::o;26375:366::-;26517:3;26538:67;26602:2;26597:3;26538:67;:::i;:::-;26531:74;;26614:93;26703:3;26614:93;:::i;:::-;26732:2;26727:3;26723:12;26716:19;;26375:366;;;:::o;26747:419::-;26913:4;26951:2;26940:9;26936:18;26928:26;;27000:9;26994:4;26990:20;26986:1;26975:9;26971:17;26964:47;27028:131;27154:4;27028:131;:::i;:::-;27020:139;;26747:419;;;:::o;27172:233::-;27211:3;27234:24;27252:5;27234:24;:::i;:::-;27225:33;;27280:66;27273:5;27270:77;27267:103;;27350:18;;:::i;:::-;27267:103;27397:1;27390:5;27386:13;27379:20;;27172:233;;;:::o;27411:194::-;27451:4;27471:20;27489:1;27471:20;:::i;:::-;27466:25;;27505:20;27523:1;27505:20;:::i;:::-;27500:25;;27549:1;27546;27542:9;27534:17;;27573:1;27567:4;27564:11;27561:37;;;27578:18;;:::i;:::-;27561:37;27411:194;;;;:::o;27611:180::-;27659:77;27656:1;27649:88;27756:4;27753:1;27746:15;27780:4;27777:1;27770:15;27797:185;27837:1;27854:20;27872:1;27854:20;:::i;:::-;27849:25;;27888:20;27906:1;27888:20;:::i;:::-;27883:25;;27927:1;27917:35;;27932:18;;:::i;:::-;27917:35;27974:1;27971;27967:9;27962:14;;27797:185;;;;:::o;27988:220::-;28128:34;28124:1;28116:6;28112:14;28105:58;28197:3;28192:2;28184:6;28180:15;28173:28;27988:220;:::o;28214:366::-;28356:3;28377:67;28441:2;28436:3;28377:67;:::i;:::-;28370:74;;28453:93;28542:3;28453:93;:::i;:::-;28571:2;28566:3;28562:12;28555:19;;28214:366;;;:::o;28586:419::-;28752:4;28790:2;28779:9;28775:18;28767:26;;28839:9;28833:4;28829:20;28825:1;28814:9;28810:17;28803:47;28867:131;28993:4;28867:131;:::i;:::-;28859:139;;28586:419;;;:::o;29011:180::-;29059:77;29056:1;29049:88;29156:4;29153:1;29146:15;29180:4;29177:1;29170:15;29197:180;29245:77;29242:1;29235:88;29342:4;29339:1;29332:15;29366:4;29363:1;29356:15;29383:114;29450:6;29484:5;29478:12;29468:22;;29383:114;;;:::o;29503:184::-;29602:11;29636:6;29631:3;29624:19;29676:4;29671:3;29667:14;29652:29;;29503:184;;;;:::o;29693:132::-;29760:4;29783:3;29775:11;;29813:4;29808:3;29804:14;29796:22;;29693:132;;;:::o;29831:108::-;29908:24;29926:5;29908:24;:::i;:::-;29903:3;29896:37;29831:108;;:::o;29945:179::-;30014:10;30035:46;30077:3;30069:6;30035:46;:::i;:::-;30113:4;30108:3;30104:14;30090:28;;29945:179;;;;:::o;30130:113::-;30200:4;30232;30227:3;30223:14;30215:22;;30130:113;;;:::o;30279:732::-;30398:3;30427:54;30475:5;30427:54;:::i;:::-;30497:86;30576:6;30571:3;30497:86;:::i;:::-;30490:93;;30607:56;30657:5;30607:56;:::i;:::-;30686:7;30717:1;30702:284;30727:6;30724:1;30721:13;30702:284;;;30803:6;30797:13;30830:63;30889:3;30874:13;30830:63;:::i;:::-;30823:70;;30916:60;30969:6;30916:60;:::i;:::-;30906:70;;30762:224;30749:1;30746;30742:9;30737:14;;30702:284;;;30706:14;31002:3;30995:10;;30403:608;;;30279:732;;;;:::o;31017:831::-;31280:4;31318:3;31307:9;31303:19;31295:27;;31332:71;31400:1;31389:9;31385:17;31376:6;31332:71;:::i;:::-;31413:80;31489:2;31478:9;31474:18;31465:6;31413:80;:::i;:::-;31540:9;31534:4;31530:20;31525:2;31514:9;31510:18;31503:48;31568:108;31671:4;31662:6;31568:108;:::i;:::-;31560:116;;31686:72;31754:2;31743:9;31739:18;31730:6;31686:72;:::i;:::-;31768:73;31836:3;31825:9;31821:19;31812:6;31768:73;:::i;:::-;31017:831;;;;;;;;:::o;31854:177::-;31994:29;31990:1;31982:6;31978:14;31971:53;31854:177;:::o;32037:366::-;32179:3;32200:67;32264:2;32259:3;32200:67;:::i;:::-;32193:74;;32276:93;32365:3;32276:93;:::i;:::-;32394:2;32389:3;32385:12;32378:19;;32037:366;;;:::o;32409:419::-;32575:4;32613:2;32602:9;32598:18;32590:26;;32662:9;32656:4;32652:20;32648:1;32637:9;32633:17;32626:47;32690:131;32816:4;32690:131;:::i;:::-;32682:139;;32409:419;;;:::o
Swarm Source
ipfs://3fb46c3a591f62e4317d9e041fa13576059f3a83701be9c38e98e68a0f06e02a
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | Ether (ETH) | 100.00% | $3,078.53 | 1 | $3,078.53 |
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.