ERC-20
Overview
Max Total Supply
690,000,000,000 ELE
Holders
29
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
Elefant
Compiler Version
v0.8.20+commit.a1b79de6
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-01-14 */ // SPDX-License-Identifier: MIT 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 createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); } contract Elefant 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; bool public transferDelayEnabled = true; string private constant _name = unicode"Elefant"; string private constant _symbol = unicode"ELE"; address payable private _devWallet; uint256 private _buyFeeTax = 30; uint256 private _sellFeeTax = 50; uint8 private constant _decimals = 9; uint256 private constant _tTotal = 690000000000 * 10**_decimals; uint256 public _maxTxAmount = 13800000000 * 10**_decimals; uint256 public _maxWalletSize = 13800000000 * 10**_decimals; uint256 public _taxSwapThreshold = 13800000000 * 10**_decimals; uint256 public _maxSwapContract = 13800000000 * 10**_decimals; IUniswapV2Router02 private uniswapV2Router; address private uniswapV2Pair; bool private tradingOpen; bool private inSwap = false; bool private swapEnabled = false; event MaxTxAmountUpdated(uint _maxTxAmount); modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor () { _devWallet = payable(_msgSender()); _balances[_msgSender()] = _tTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[_devWallet] = true; emit Transfer(address(0), _msgSender(), _tTotal); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); return true; } function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _transfer(address from, address to, uint256 amount) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); uint256 taxAmount = 0; if (from != owner() && to != owner() && from != _devWallet && to != _devWallet) { taxAmount = amount.mul(_buyFeeTax).div(100); if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) { require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount."); require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize."); } if(to == uniswapV2Pair && from!= address(this) ){ taxAmount = amount.mul(_sellFeeTax).div(100); } uint256 contractTokenBalance = balanceOf(address(this)); if (!inSwap && to == uniswapV2Pair && swapEnabled && contractTokenBalance > _taxSwapThreshold) { swapTokensForEth(min(amount,min(contractTokenBalance,_maxSwapContract))); uint256 contractETHBalance = address(this).balance; if(contractETHBalance > 0) { ethTodev(address(this).balance); } } } if ((_isExcludedFromFee[from] || _isExcludedFromFee[to]) || (from != uniswapV2Pair && to != uniswapV2Pair)) { taxAmount = 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 min(uint256 a, uint256 b) private pure returns (uint256){ return (a>b)?b:a; } 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 removeLimits() external onlyOwner{ _maxTxAmount = _tTotal; _maxWalletSize = _tTotal; transferDelayEnabled = false; emit MaxTxAmountUpdated(_tTotal); } function setTaxes(uint256 newBuyTax, uint256 newSellTax) public onlyOwner { _buyFeeTax = newBuyTax; _sellFeeTax = newSellTax; } function ethTodev(uint256 amount) private { _devWallet.transfer(amount); } function openTrading() external onlyOwner() { require(!tradingOpen,"trading is already open"); uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); _approve(address(this), address(uniswapV2Router), _tTotal); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH()); uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp); IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); swapEnabled = true; tradingOpen = true; } receive() external payable {} function manualSend() external { require(_msgSender() == _devWallet); uint256 amount = balanceOf(address(this)); _transfer(address(this), _devWallet, amount); } function manualSwap() external { require(_msgSender() == _devWallet); uint256 ethBalance = address(this).balance; if(ethBalance>0){ ethTodev(address(this).balance); } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxSwapContract","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":[{"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":"manualSend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBuyTax","type":"uint256"},{"internalType":"uint256","name":"newSellTax","type":"uint256"}],"name":"setTaxes","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":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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
6080604052600160045f6101000a81548160ff021916908315150217905550601e60055560326006556009600a620000389190620005f9565b6403368b4a006200004a919062000649565b6007556009600a6200005d9190620005f9565b6403368b4a006200006f919062000649565b6008556009600a620000829190620005f9565b6403368b4a0062000094919062000649565b6009556009600a620000a79190620005f9565b6403368b4a00620000b9919062000649565b600a555f600c60156101000a81548160ff0219169083151502179055505f600c60166101000a81548160ff021916908315150217905550348015620000fc575f80fd5b505f6200010e6200043960201b60201c565b9050805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350620001ba6200043960201b60201c565b600460016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a6200020a9190620005f9565b64a0a73474006200021c919062000649565b60015f6200022f6200043960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550600160035f620002816200044060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f600460019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550620003ac6200043960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a6200040a9190620005f9565b64a0a73474006200041c919062000649565b6040516200042b9190620006a4565b60405180910390a3620006bf565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115620004f157808604811115620004c957620004c862000467565b5b6001851615620004d95780820291505b8081029050620004e98562000494565b9450620004a9565b94509492505050565b5f826200050b5760019050620005dd565b816200051a575f9050620005dd565b81600181146200053357600281146200053e5762000574565b6001915050620005dd565b60ff84111562000553576200055262000467565b5b8360020a9150848211156200056d576200056c62000467565b5b50620005dd565b5060208310610133831016604e8410600b8410161715620005ae5782820a905083811115620005a857620005a762000467565b5b620005dd565b620005bd8484846001620004a0565b92509050818404811115620005d757620005d662000467565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f6200060582620005e4565b91506200061283620005ed565b9250620006417fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620004fa565b905092915050565b5f6200065582620005e4565b91506200066283620005e4565b92508282026200067281620005e4565b915082820484148315176200068c576200068b62000467565b5b5092915050565b6200069e81620005e4565b82525050565b5f602082019050620006b95f83018462000693565b92915050565b61304680620006cd5f395ff3fe60806040526004361061012d575f3560e01c80638da5cb5b116100aa578063c647b20e1161006e578063c647b20e146103ba578063c876d0b9146103e2578063c9567bf91461040c578063dd62ed3e14610422578063f42938901461045e578063f67a05131461047457610134565b80638da5cb5b146102d65780638f9a55c01461030057806395d89b411461032a578063a9059cbb14610354578063bf474bed1461039057610134565b806351bc3c85116100f157806351bc3c851461022e57806370a0823114610244578063715018a614610280578063751039fc146102965780637d1db4a5146102ac57610134565b806306fdde0314610138578063095ea7b31461016257806318160ddd1461019e57806323b872dd146101c8578063313ce5671461020457610134565b3661013457005b5f80fd5b348015610143575f80fd5b5061014c61049e565b60405161015991906121f5565b60405180910390f35b34801561016d575f80fd5b50610188600480360381019061018391906122a6565b6104db565b60405161019591906122fe565b60405180910390f35b3480156101a9575f80fd5b506101b26104f8565b6040516101bf9190612326565b60405180910390f35b3480156101d3575f80fd5b506101ee60048036038101906101e9919061233f565b61051c565b6040516101fb91906122fe565b60405180910390f35b34801561020f575f80fd5b506102186105f0565b60405161022591906123aa565b60405180910390f35b348015610239575f80fd5b506102426105f8565b005b34801561024f575f80fd5b5061026a600480360381019061026591906123c3565b610671565b6040516102779190612326565b60405180910390f35b34801561028b575f80fd5b506102946106b7565b005b3480156102a1575f80fd5b506102aa610805565b005b3480156102b7575f80fd5b506102c0610950565b6040516102cd9190612326565b60405180910390f35b3480156102e1575f80fd5b506102ea610956565b6040516102f791906123fd565b60405180910390f35b34801561030b575f80fd5b5061031461097d565b6040516103219190612326565b60405180910390f35b348015610335575f80fd5b5061033e610983565b60405161034b91906121f5565b60405180910390f35b34801561035f575f80fd5b5061037a600480360381019061037591906122a6565b6109c0565b60405161038791906122fe565b60405180910390f35b34801561039b575f80fd5b506103a46109dd565b6040516103b19190612326565b60405180910390f35b3480156103c5575f80fd5b506103e060048036038101906103db9190612416565b6109e3565b005b3480156103ed575f80fd5b506103f6610a89565b60405161040391906122fe565b60405180910390f35b348015610417575f80fd5b50610420610a9b565b005b34801561042d575f80fd5b5061044860048036038101906104439190612454565b610fbe565b6040516104559190612326565b60405180910390f35b348015610469575f80fd5b50610472611040565b005b34801561047f575f80fd5b506104886110dc565b6040516104959190612326565b60405180910390f35b60606040518060400160405280600781526020017f456c6566616e7400000000000000000000000000000000000000000000000000815250905090565b5f6104ee6104e76110e2565b84846110e9565b6001905092915050565b5f6009600a61050791906125ee565b64a0a73474006105179190612638565b905090565b5f6105288484846112ac565b6105e5846105346110e2565b6105e085604051806060016040528060288152602001612fe96028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6105976110e2565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611c569092919063ffffffff16565b6110e9565b600190509392505050565b5f6009905090565b600460019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166106396110e2565b73ffffffffffffffffffffffffffffffffffffffff1614610658575f80fd5b5f4790505f81111561066e5761066d47611cb8565b5b50565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6106bf6110e2565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461074b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610742906126c3565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b61080d6110e2565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610899576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610890906126c3565b60405180910390fd5b6009600a6108a791906125ee565b64a0a73474006108b79190612638565b6007819055506009600a6108cb91906125ee565b64a0a73474006108db9190612638565b6008819055505f60045f6101000a81548160ff0219169083151502179055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a61092991906125ee565b64a0a73474006109399190612638565b6040516109469190612326565b60405180910390a1565b60075481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60085481565b60606040518060400160405280600381526020017f454c450000000000000000000000000000000000000000000000000000000000815250905090565b5f6109d36109cc6110e2565b84846112ac565b6001905092915050565b60095481565b6109eb6110e2565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a77576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6e906126c3565b60405180910390fd5b81600581905550806006819055505050565b60045f9054906101000a900460ff1681565b610aa36110e2565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b2f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b26906126c3565b60405180910390fd5b600c60149054906101000a900460ff1615610b7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b769061272b565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d600b5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610c1c30600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610c0791906125ee565b64a0a7347400610c179190612638565b6110e9565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c86573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610caa919061275d565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d30573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d54919061275d565b6040518363ffffffff1660e01b8152600401610d71929190612788565b6020604051808303815f875af1158015610d8d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610db1919061275d565b600c5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610e3830610671565b5f80610e42610956565b426040518863ffffffff1660e01b8152600401610e64969594939291906127f1565b60606040518083038185885af1158015610e80573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610ea59190612864565b505050600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610f459291906128b4565b6020604051808303815f875af1158015610f61573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f859190612905565b506001600c60166101000a81548160ff0219169083151502179055506001600c60146101000a81548160ff021916908315150217905550565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b600460019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166110816110e2565b73ffffffffffffffffffffffffffffffffffffffff16146110a0575f80fd5b5f6110aa30610671565b90506110d930600460019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836112ac565b50565b600a5481565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611157576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161114e906129a0565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036111c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111bc90612a2e565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161129f9190612326565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361131a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131190612abc565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611388576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137f90612b4a565b60405180910390fd5b5f81116113ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113c190612bd8565b60405180910390fd5b5f6113d3610956565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156114415750611411610956565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b801561149b5750600460019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b80156114f55750600460019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561185157611522606461151460055485611d2190919063ffffffff16565b611d9890919063ffffffff16565b9050600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156115cd5750600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611620575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b156116c35760075482111561166a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161166190612c40565b60405180910390fd5b6008548261167785610671565b6116819190612c5e565b11156116c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116b990612cdb565b60405180910390fd5b5b600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561174b57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b1561177b57611778606461176a60065485611d2190919063ffffffff16565b611d9890919063ffffffff16565b90505b5f61178530610671565b9050600c60159054906101000a900460ff161580156117f05750600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156118085750600c60169054906101000a900460ff165b8015611815575060095481115b1561184f576118376118328461182d84600a54611de1565b611de1565b611df9565b5f4790505f81111561184d5761184c47611cb8565b5b505b505b60035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16806118ec575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b8061199d5750600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561199c5750600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b5b156119a6575f90505b5f811115611aa5576119fe8160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461206490919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611a9c9190612326565b60405180910390a35b611af58260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546120c190919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611b98611b4c82846120c190919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461206490919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611c3b84866120c190919063ffffffff16565b604051611c489190612326565b60405180910390a350505050565b5f838311158290611c9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c9491906121f5565b60405180910390fd5b505f8385611cab9190612cf9565b9050809150509392505050565b600460019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015611d1d573d5f803e3d5ffd5b5050565b5f808303611d31575f9050611d92565b5f8284611d3e9190612638565b9050828482611d4d9190612d59565b14611d8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d8490612df9565b60405180910390fd5b809150505b92915050565b5f611dd983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061210a565b905092915050565b5f818311611def5782611df1565b815b905092915050565b6001600c60156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611e3057611e2f612e17565b5b604051908082528060200260200182016040528015611e5e5781602001602082028036833780820191505090505b50905030815f81518110611e7557611e74612e44565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611f19573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f3d919061275d565b81600181518110611f5157611f50612e44565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611fb730600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846110e9565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401612019959493929190612f28565b5f604051808303815f87803b158015612030575f80fd5b505af1158015612042573d5f803e3d5ffd5b50505050505f600c60156101000a81548160ff02191690831515021790555050565b5f8082846120729190612c5e565b9050838110156120b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120ae90612fca565b60405180910390fd5b8091505092915050565b5f61210283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611c56565b905092915050565b5f8083118290612150576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161214791906121f5565b60405180910390fd5b505f838561215e9190612d59565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156121a2578082015181840152602081019050612187565b5f8484015250505050565b5f601f19601f8301169050919050565b5f6121c78261216b565b6121d18185612175565b93506121e1818560208601612185565b6121ea816121ad565b840191505092915050565b5f6020820190508181035f83015261220d81846121bd565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61224282612219565b9050919050565b61225281612238565b811461225c575f80fd5b50565b5f8135905061226d81612249565b92915050565b5f819050919050565b61228581612273565b811461228f575f80fd5b50565b5f813590506122a08161227c565b92915050565b5f80604083850312156122bc576122bb612215565b5b5f6122c98582860161225f565b92505060206122da85828601612292565b9150509250929050565b5f8115159050919050565b6122f8816122e4565b82525050565b5f6020820190506123115f8301846122ef565b92915050565b61232081612273565b82525050565b5f6020820190506123395f830184612317565b92915050565b5f805f6060848603121561235657612355612215565b5b5f6123638682870161225f565b93505060206123748682870161225f565b925050604061238586828701612292565b9150509250925092565b5f60ff82169050919050565b6123a48161238f565b82525050565b5f6020820190506123bd5f83018461239b565b92915050565b5f602082840312156123d8576123d7612215565b5b5f6123e58482850161225f565b91505092915050565b6123f781612238565b82525050565b5f6020820190506124105f8301846123ee565b92915050565b5f806040838503121561242c5761242b612215565b5b5f61243985828601612292565b925050602061244a85828601612292565b9150509250929050565b5f806040838503121561246a57612469612215565b5b5f6124778582860161225f565b92505060206124888582860161225f565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115612514578086048111156124f0576124ef612492565b5b60018516156124ff5780820291505b808102905061250d856124bf565b94506124d4565b94509492505050565b5f8261252c57600190506125e7565b81612539575f90506125e7565b816001811461254f576002811461255957612588565b60019150506125e7565b60ff84111561256b5761256a612492565b5b8360020a91508482111561258257612581612492565b5b506125e7565b5060208310610133831016604e8410600b84101617156125bd5782820a9050838111156125b8576125b7612492565b5b6125e7565b6125ca84848460016124cb565b925090508184048111156125e1576125e0612492565b5b81810290505b9392505050565b5f6125f882612273565b91506126038361238f565b92506126307fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461251d565b905092915050565b5f61264282612273565b915061264d83612273565b925082820261265b81612273565b9150828204841483151761267257612671612492565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6126ad602083612175565b91506126b882612679565b602082019050919050565b5f6020820190508181035f8301526126da816126a1565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f612715601783612175565b9150612720826126e1565b602082019050919050565b5f6020820190508181035f83015261274281612709565b9050919050565b5f8151905061275781612249565b92915050565b5f6020828403121561277257612771612215565b5b5f61277f84828501612749565b91505092915050565b5f60408201905061279b5f8301856123ee565b6127a860208301846123ee565b9392505050565b5f819050919050565b5f819050919050565b5f6127db6127d66127d1846127af565b6127b8565b612273565b9050919050565b6127eb816127c1565b82525050565b5f60c0820190506128045f8301896123ee565b6128116020830188612317565b61281e60408301876127e2565b61282b60608301866127e2565b61283860808301856123ee565b61284560a0830184612317565b979650505050505050565b5f8151905061285e8161227c565b92915050565b5f805f6060848603121561287b5761287a612215565b5b5f61288886828701612850565b935050602061289986828701612850565b92505060406128aa86828701612850565b9150509250925092565b5f6040820190506128c75f8301856123ee565b6128d46020830184612317565b9392505050565b6128e4816122e4565b81146128ee575f80fd5b50565b5f815190506128ff816128db565b92915050565b5f6020828403121561291a57612919612215565b5b5f612927848285016128f1565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f61298a602483612175565b915061299582612930565b604082019050919050565b5f6020820190508181035f8301526129b78161297e565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612a18602283612175565b9150612a23826129be565b604082019050919050565b5f6020820190508181035f830152612a4581612a0c565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612aa6602583612175565b9150612ab182612a4c565b604082019050919050565b5f6020820190508181035f830152612ad381612a9a565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612b34602383612175565b9150612b3f82612ada565b604082019050919050565b5f6020820190508181035f830152612b6181612b28565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612bc2602983612175565b9150612bcd82612b68565b604082019050919050565b5f6020820190508181035f830152612bef81612bb6565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f612c2a601983612175565b9150612c3582612bf6565b602082019050919050565b5f6020820190508181035f830152612c5781612c1e565b9050919050565b5f612c6882612273565b9150612c7383612273565b9250828201905080821115612c8b57612c8a612492565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f612cc5601a83612175565b9150612cd082612c91565b602082019050919050565b5f6020820190508181035f830152612cf281612cb9565b9050919050565b5f612d0382612273565b9150612d0e83612273565b9250828203905081811115612d2657612d25612492565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612d6382612273565b9150612d6e83612273565b925082612d7e57612d7d612d2c565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612de3602183612175565b9150612dee82612d89565b604082019050919050565b5f6020820190508181035f830152612e1081612dd7565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612ea381612238565b82525050565b5f612eb48383612e9a565b60208301905092915050565b5f602082019050919050565b5f612ed682612e71565b612ee08185612e7b565b9350612eeb83612e8b565b805f5b83811015612f1b578151612f028882612ea9565b9750612f0d83612ec0565b925050600181019050612eee565b5085935050505092915050565b5f60a082019050612f3b5f830188612317565b612f4860208301876127e2565b8181036040830152612f5a8186612ecc565b9050612f6960608301856123ee565b612f766080830184612317565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612fb4601b83612175565b9150612fbf82612f80565b602082019050919050565b5f6020820190508181035f830152612fe181612fa8565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220c20616c880eb3e67a0ca42c1e19ea455847361cf17a8bcab45b7d8b5c93c471a64736f6c63430008140033
Deployed Bytecode
0x60806040526004361061012d575f3560e01c80638da5cb5b116100aa578063c647b20e1161006e578063c647b20e146103ba578063c876d0b9146103e2578063c9567bf91461040c578063dd62ed3e14610422578063f42938901461045e578063f67a05131461047457610134565b80638da5cb5b146102d65780638f9a55c01461030057806395d89b411461032a578063a9059cbb14610354578063bf474bed1461039057610134565b806351bc3c85116100f157806351bc3c851461022e57806370a0823114610244578063715018a614610280578063751039fc146102965780637d1db4a5146102ac57610134565b806306fdde0314610138578063095ea7b31461016257806318160ddd1461019e57806323b872dd146101c8578063313ce5671461020457610134565b3661013457005b5f80fd5b348015610143575f80fd5b5061014c61049e565b60405161015991906121f5565b60405180910390f35b34801561016d575f80fd5b50610188600480360381019061018391906122a6565b6104db565b60405161019591906122fe565b60405180910390f35b3480156101a9575f80fd5b506101b26104f8565b6040516101bf9190612326565b60405180910390f35b3480156101d3575f80fd5b506101ee60048036038101906101e9919061233f565b61051c565b6040516101fb91906122fe565b60405180910390f35b34801561020f575f80fd5b506102186105f0565b60405161022591906123aa565b60405180910390f35b348015610239575f80fd5b506102426105f8565b005b34801561024f575f80fd5b5061026a600480360381019061026591906123c3565b610671565b6040516102779190612326565b60405180910390f35b34801561028b575f80fd5b506102946106b7565b005b3480156102a1575f80fd5b506102aa610805565b005b3480156102b7575f80fd5b506102c0610950565b6040516102cd9190612326565b60405180910390f35b3480156102e1575f80fd5b506102ea610956565b6040516102f791906123fd565b60405180910390f35b34801561030b575f80fd5b5061031461097d565b6040516103219190612326565b60405180910390f35b348015610335575f80fd5b5061033e610983565b60405161034b91906121f5565b60405180910390f35b34801561035f575f80fd5b5061037a600480360381019061037591906122a6565b6109c0565b60405161038791906122fe565b60405180910390f35b34801561039b575f80fd5b506103a46109dd565b6040516103b19190612326565b60405180910390f35b3480156103c5575f80fd5b506103e060048036038101906103db9190612416565b6109e3565b005b3480156103ed575f80fd5b506103f6610a89565b60405161040391906122fe565b60405180910390f35b348015610417575f80fd5b50610420610a9b565b005b34801561042d575f80fd5b5061044860048036038101906104439190612454565b610fbe565b6040516104559190612326565b60405180910390f35b348015610469575f80fd5b50610472611040565b005b34801561047f575f80fd5b506104886110dc565b6040516104959190612326565b60405180910390f35b60606040518060400160405280600781526020017f456c6566616e7400000000000000000000000000000000000000000000000000815250905090565b5f6104ee6104e76110e2565b84846110e9565b6001905092915050565b5f6009600a61050791906125ee565b64a0a73474006105179190612638565b905090565b5f6105288484846112ac565b6105e5846105346110e2565b6105e085604051806060016040528060288152602001612fe96028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6105976110e2565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611c569092919063ffffffff16565b6110e9565b600190509392505050565b5f6009905090565b600460019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166106396110e2565b73ffffffffffffffffffffffffffffffffffffffff1614610658575f80fd5b5f4790505f81111561066e5761066d47611cb8565b5b50565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6106bf6110e2565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461074b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610742906126c3565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b61080d6110e2565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610899576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610890906126c3565b60405180910390fd5b6009600a6108a791906125ee565b64a0a73474006108b79190612638565b6007819055506009600a6108cb91906125ee565b64a0a73474006108db9190612638565b6008819055505f60045f6101000a81548160ff0219169083151502179055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a61092991906125ee565b64a0a73474006109399190612638565b6040516109469190612326565b60405180910390a1565b60075481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60085481565b60606040518060400160405280600381526020017f454c450000000000000000000000000000000000000000000000000000000000815250905090565b5f6109d36109cc6110e2565b84846112ac565b6001905092915050565b60095481565b6109eb6110e2565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a77576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6e906126c3565b60405180910390fd5b81600581905550806006819055505050565b60045f9054906101000a900460ff1681565b610aa36110e2565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b2f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b26906126c3565b60405180910390fd5b600c60149054906101000a900460ff1615610b7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b769061272b565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d600b5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610c1c30600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610c0791906125ee565b64a0a7347400610c179190612638565b6110e9565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c86573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610caa919061275d565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d30573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d54919061275d565b6040518363ffffffff1660e01b8152600401610d71929190612788565b6020604051808303815f875af1158015610d8d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610db1919061275d565b600c5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610e3830610671565b5f80610e42610956565b426040518863ffffffff1660e01b8152600401610e64969594939291906127f1565b60606040518083038185885af1158015610e80573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610ea59190612864565b505050600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610f459291906128b4565b6020604051808303815f875af1158015610f61573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f859190612905565b506001600c60166101000a81548160ff0219169083151502179055506001600c60146101000a81548160ff021916908315150217905550565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b600460019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166110816110e2565b73ffffffffffffffffffffffffffffffffffffffff16146110a0575f80fd5b5f6110aa30610671565b90506110d930600460019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836112ac565b50565b600a5481565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611157576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161114e906129a0565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036111c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111bc90612a2e565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161129f9190612326565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361131a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131190612abc565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611388576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137f90612b4a565b60405180910390fd5b5f81116113ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113c190612bd8565b60405180910390fd5b5f6113d3610956565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156114415750611411610956565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b801561149b5750600460019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b80156114f55750600460019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561185157611522606461151460055485611d2190919063ffffffff16565b611d9890919063ffffffff16565b9050600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156115cd5750600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611620575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b156116c35760075482111561166a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161166190612c40565b60405180910390fd5b6008548261167785610671565b6116819190612c5e565b11156116c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116b990612cdb565b60405180910390fd5b5b600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561174b57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b1561177b57611778606461176a60065485611d2190919063ffffffff16565b611d9890919063ffffffff16565b90505b5f61178530610671565b9050600c60159054906101000a900460ff161580156117f05750600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156118085750600c60169054906101000a900460ff165b8015611815575060095481115b1561184f576118376118328461182d84600a54611de1565b611de1565b611df9565b5f4790505f81111561184d5761184c47611cb8565b5b505b505b60035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16806118ec575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b8061199d5750600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561199c5750600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b5b156119a6575f90505b5f811115611aa5576119fe8160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461206490919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611a9c9190612326565b60405180910390a35b611af58260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546120c190919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611b98611b4c82846120c190919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461206490919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611c3b84866120c190919063ffffffff16565b604051611c489190612326565b60405180910390a350505050565b5f838311158290611c9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c9491906121f5565b60405180910390fd5b505f8385611cab9190612cf9565b9050809150509392505050565b600460019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015611d1d573d5f803e3d5ffd5b5050565b5f808303611d31575f9050611d92565b5f8284611d3e9190612638565b9050828482611d4d9190612d59565b14611d8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d8490612df9565b60405180910390fd5b809150505b92915050565b5f611dd983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061210a565b905092915050565b5f818311611def5782611df1565b815b905092915050565b6001600c60156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611e3057611e2f612e17565b5b604051908082528060200260200182016040528015611e5e5781602001602082028036833780820191505090505b50905030815f81518110611e7557611e74612e44565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611f19573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f3d919061275d565b81600181518110611f5157611f50612e44565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611fb730600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846110e9565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401612019959493929190612f28565b5f604051808303815f87803b158015612030575f80fd5b505af1158015612042573d5f803e3d5ffd5b50505050505f600c60156101000a81548160ff02191690831515021790555050565b5f8082846120729190612c5e565b9050838110156120b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120ae90612fca565b60405180910390fd5b8091505092915050565b5f61210283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611c56565b905092915050565b5f8083118290612150576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161214791906121f5565b60405180910390fd5b505f838561215e9190612d59565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156121a2578082015181840152602081019050612187565b5f8484015250505050565b5f601f19601f8301169050919050565b5f6121c78261216b565b6121d18185612175565b93506121e1818560208601612185565b6121ea816121ad565b840191505092915050565b5f6020820190508181035f83015261220d81846121bd565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61224282612219565b9050919050565b61225281612238565b811461225c575f80fd5b50565b5f8135905061226d81612249565b92915050565b5f819050919050565b61228581612273565b811461228f575f80fd5b50565b5f813590506122a08161227c565b92915050565b5f80604083850312156122bc576122bb612215565b5b5f6122c98582860161225f565b92505060206122da85828601612292565b9150509250929050565b5f8115159050919050565b6122f8816122e4565b82525050565b5f6020820190506123115f8301846122ef565b92915050565b61232081612273565b82525050565b5f6020820190506123395f830184612317565b92915050565b5f805f6060848603121561235657612355612215565b5b5f6123638682870161225f565b93505060206123748682870161225f565b925050604061238586828701612292565b9150509250925092565b5f60ff82169050919050565b6123a48161238f565b82525050565b5f6020820190506123bd5f83018461239b565b92915050565b5f602082840312156123d8576123d7612215565b5b5f6123e58482850161225f565b91505092915050565b6123f781612238565b82525050565b5f6020820190506124105f8301846123ee565b92915050565b5f806040838503121561242c5761242b612215565b5b5f61243985828601612292565b925050602061244a85828601612292565b9150509250929050565b5f806040838503121561246a57612469612215565b5b5f6124778582860161225f565b92505060206124888582860161225f565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115612514578086048111156124f0576124ef612492565b5b60018516156124ff5780820291505b808102905061250d856124bf565b94506124d4565b94509492505050565b5f8261252c57600190506125e7565b81612539575f90506125e7565b816001811461254f576002811461255957612588565b60019150506125e7565b60ff84111561256b5761256a612492565b5b8360020a91508482111561258257612581612492565b5b506125e7565b5060208310610133831016604e8410600b84101617156125bd5782820a9050838111156125b8576125b7612492565b5b6125e7565b6125ca84848460016124cb565b925090508184048111156125e1576125e0612492565b5b81810290505b9392505050565b5f6125f882612273565b91506126038361238f565b92506126307fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461251d565b905092915050565b5f61264282612273565b915061264d83612273565b925082820261265b81612273565b9150828204841483151761267257612671612492565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6126ad602083612175565b91506126b882612679565b602082019050919050565b5f6020820190508181035f8301526126da816126a1565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f612715601783612175565b9150612720826126e1565b602082019050919050565b5f6020820190508181035f83015261274281612709565b9050919050565b5f8151905061275781612249565b92915050565b5f6020828403121561277257612771612215565b5b5f61277f84828501612749565b91505092915050565b5f60408201905061279b5f8301856123ee565b6127a860208301846123ee565b9392505050565b5f819050919050565b5f819050919050565b5f6127db6127d66127d1846127af565b6127b8565b612273565b9050919050565b6127eb816127c1565b82525050565b5f60c0820190506128045f8301896123ee565b6128116020830188612317565b61281e60408301876127e2565b61282b60608301866127e2565b61283860808301856123ee565b61284560a0830184612317565b979650505050505050565b5f8151905061285e8161227c565b92915050565b5f805f6060848603121561287b5761287a612215565b5b5f61288886828701612850565b935050602061289986828701612850565b92505060406128aa86828701612850565b9150509250925092565b5f6040820190506128c75f8301856123ee565b6128d46020830184612317565b9392505050565b6128e4816122e4565b81146128ee575f80fd5b50565b5f815190506128ff816128db565b92915050565b5f6020828403121561291a57612919612215565b5b5f612927848285016128f1565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f61298a602483612175565b915061299582612930565b604082019050919050565b5f6020820190508181035f8301526129b78161297e565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612a18602283612175565b9150612a23826129be565b604082019050919050565b5f6020820190508181035f830152612a4581612a0c565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612aa6602583612175565b9150612ab182612a4c565b604082019050919050565b5f6020820190508181035f830152612ad381612a9a565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612b34602383612175565b9150612b3f82612ada565b604082019050919050565b5f6020820190508181035f830152612b6181612b28565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612bc2602983612175565b9150612bcd82612b68565b604082019050919050565b5f6020820190508181035f830152612bef81612bb6565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f612c2a601983612175565b9150612c3582612bf6565b602082019050919050565b5f6020820190508181035f830152612c5781612c1e565b9050919050565b5f612c6882612273565b9150612c7383612273565b9250828201905080821115612c8b57612c8a612492565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f612cc5601a83612175565b9150612cd082612c91565b602082019050919050565b5f6020820190508181035f830152612cf281612cb9565b9050919050565b5f612d0382612273565b9150612d0e83612273565b9250828203905081811115612d2657612d25612492565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612d6382612273565b9150612d6e83612273565b925082612d7e57612d7d612d2c565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612de3602183612175565b9150612dee82612d89565b604082019050919050565b5f6020820190508181035f830152612e1081612dd7565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612ea381612238565b82525050565b5f612eb48383612e9a565b60208301905092915050565b5f602082019050919050565b5f612ed682612e71565b612ee08185612e7b565b9350612eeb83612e8b565b805f5b83811015612f1b578151612f028882612ea9565b9750612f0d83612ec0565b925050600181019050612eee565b5085935050505092915050565b5f60a082019050612f3b5f830188612317565b612f4860208301876127e2565b8181036040830152612f5a8186612ecc565b9050612f6960608301856123ee565b612f766080830184612317565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612fb4601b83612175565b9150612fbf82612f80565b602082019050919050565b5f6020820190508181035f830152612fe181612fa8565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220c20616c880eb3e67a0ca42c1e19ea455847361cf17a8bcab45b7d8b5c93c471a64736f6c63430008140033
Deployed Bytecode Sourcemap
3471:7416:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5084:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5917:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5361:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6086:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5270:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10664:220;;;;;;;;;;;;;:::i;:::-;;5464:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2554:148;;;;;;;;;;;;;:::i;:::-;;9286:200;;;;;;;;;;;;;:::i;:::-;;4143:57;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2340:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4207:59;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5175:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5591:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4273:62;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9494:150;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3750:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9748:671;;;;;;;;;;;;;:::i;:::-;;5766:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10464:192;;;;;;;;;;;;;:::i;:::-;;4342:61;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5084:83;5121:13;5154:5;;;;;;;;;;;;;;;;;5147:12;;5084:83;:::o;5917:161::-;5992:4;6009:39;6018:12;:10;:12::i;:::-;6032:7;6041:6;6009:8;:39::i;:::-;6066:4;6059:11;;5917:161;;;;:::o;5361:95::-;5414:7;4065:1;4123:2;:13;;;;:::i;:::-;4108:12;:28;;;;:::i;:::-;5434:14;;5361:95;:::o;6086:313::-;6184:4;6201:36;6211:6;6219:9;6230:6;6201:9;:36::i;:::-;6248:121;6257:6;6265:12;:10;:12::i;:::-;6279:89;6317:6;6279:89;;;;;;;;;;;;;;;;;:11;:19;6291:6;6279:19;;;;;;;;;;;;;;;:33;6299:12;:10;:12::i;:::-;6279:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;6248:8;:121::i;:::-;6387:4;6380:11;;6086:313;;;;;:::o;5270:83::-;5311:5;4065:1;5329:16;;5270:83;:::o;10664:220::-;10730:10;;;;;;;;;;;10714:26;;:12;:10;:12::i;:::-;:26;;;10706:35;;;;;;10752:18;10773:21;10752:42;;10819:1;10808:10;:12;10805:72;;;10834:31;10843:21;10834:8;:31::i;:::-;10805:72;10695:189;10664:220::o;5464:119::-;5530:7;5557:9;:18;5567:7;5557:18;;;;;;;;;;;;;;;;5550:25;;5464:119;;;:::o;2554:148::-;2477:12;:10;:12::i;:::-;2467:22;;:6;;;;;;;;;;:22;;;2459:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2661:1:::1;2624:40;;2645:6;::::0;::::1;;;;;;;;2624:40;;;;;;;;;;;;2692:1;2675:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2554:148::o:0;9286:200::-;2477:12;:10;:12::i;:::-;2467:22;;:6;;;;;;;;;;:22;;;2459:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;4065:1:::1;4123:2;:13;;;;:::i;:::-;4108:12;:28;;;;:::i;:::-;9339:12;:22;;;;4065:1;4123:2;:13;;;;:::i;:::-;4108:12;:28;;;;:::i;:::-;9372:14;:24;;;;9430:5;9407:20;;:28;;;;;;;;;;;;;;;;;;9451:27;4065:1;4123:2;:13;;;;:::i;:::-;4108:12;:28;;;;:::i;:::-;9451:27;;;;;;:::i;:::-;;;;;;;;9286:200::o:0;4143:57::-;;;;:::o;2340:79::-;2378:7;2405:6;;;;;;;;;;;2398:13;;2340:79;:::o;4207:59::-;;;;:::o;5175:87::-;5214:13;5247:7;;;;;;;;;;;;;;;;;5240:14;;5175:87;:::o;5591:167::-;5669:4;5686:42;5696:12;:10;:12::i;:::-;5710:9;5721:6;5686:9;:42::i;:::-;5746:4;5739:11;;5591:167;;;;:::o;4273:62::-;;;;:::o;9494:150::-;2477:12;:10;:12::i;:::-;2467:22;;:6;;;;;;;;;;:22;;;2459:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9592:9:::1;9579:10;:22;;;;9626:10;9612:11;:24;;;;9494:150:::0;;:::o;3750:39::-;;;;;;;;;;;;;:::o;9748:671::-;2477:12;:10;:12::i;:::-;2467:22;;:6;;;;;;;;;;:22;;;2459:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9812:11:::1;;;;;;;;;;;9811:12;9803:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;9898:42;9861:15;;:80;;;;;;;;;;;;;;;;;;9952:58;9969:4;9984:15;;;;;;;;;;;4065:1;4123:2;:13;;;;:::i;:::-;4108:12;:28;;;;:::i;:::-;9952:8;:58::i;:::-;10055:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10037:55;;;10101:4;10108:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10037:94;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10021:13;;:110;;;;;;;;;;;;;;;;;;10142:15;;;;;;;;;;;:31;;;10181:21;10212:4;10218:24;10236:4;10218:9;:24::i;:::-;10243:1;10245::::0;10247:7:::1;:5;:7::i;:::-;10255:15;10142:129;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;10289:13;;;;;;;;;;;10282:29;;;10320:15;;;;;;;;;;;10338:14;10282:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10378:4;10364:11;;:18;;;;;;;;;;;;;;;;;;10407:4;10393:11;;:18;;;;;;;;;;;;;;;;;;9748:671::o:0;5766:143::-;5847:7;5874:11;:18;5886:5;5874:18;;;;;;;;;;;;;;;:27;5893:7;5874:27;;;;;;;;;;;;;;;;5867:34;;5766:143;;;;:::o;10464:192::-;10530:10;;;;;;;;;;;10514:26;;:12;:10;:12::i;:::-;:26;;;10506:35;;;;;;10552:14;10569:24;10587:4;10569:9;:24::i;:::-;10552:41;;10604:44;10622:4;10629:10;;;;;;;;;;;10641:6;10604:9;:44::i;:::-;10495:161;10464:192::o;4342:61::-;;;;:::o;95:98::-;148:7;175:10;168:17;;95:98;:::o;6407:335::-;6517:1;6500:19;;:5;:19;;;6492:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6598:1;6579:21;;:7;:21;;;6571:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6680:6;6650:11;:18;6662:5;6650:18;;;;;;;;;;;;;;;:27;6669:7;6650:27;;;;;;;;;;;;;;;:36;;;;6718:7;6702:32;;6711:5;6702:32;;;6727:6;6702:32;;;;;;:::i;:::-;;;;;;;;6407:335;;;:::o;6750:1929::-;6854:1;6838:18;;:4;:18;;;6830:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6931:1;6917:16;;:2;:16;;;6909:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7001:1;6992:6;:10;6984:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7059:17;7103:7;:5;:7::i;:::-;7095:15;;:4;:15;;;;:32;;;;;7120:7;:5;:7::i;:::-;7114:13;;:2;:13;;;;7095:32;:54;;;;;7139:10;;;;;;;;;;;7131:18;;:4;:18;;;;7095:54;:74;;;;;7159:10;;;;;;;;;;;7153:16;;:2;:16;;;;7095:74;7091:1068;;;7198:31;7225:3;7198:22;7209:10;;7198:6;:10;;:22;;;;:::i;:::-;:26;;:31;;;;:::i;:::-;7186:43;;7258:13;;;;;;;;;;;7250:21;;:4;:21;;;:55;;;;;7289:15;;;;;;;;;;;7275:30;;:2;:30;;;;7250:55;:83;;;;;7311:18;:22;7330:2;7311:22;;;;;;;;;;;;;;;;;;;;;;;;;7309:24;7250:83;7246:283;;;7373:12;;7363:6;:22;;7355:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;7468:14;;7458:6;7442:13;7452:2;7442:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;7434:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;7246:283;7554:13;;;;;;;;;;;7548:19;;:2;:19;;;:43;;;;;7586:4;7571:20;;:4;:20;;;;7548:43;7545:127;;;7624:32;7652:3;7624:23;7635:11;;7624:6;:10;;:23;;;;:::i;:::-;:27;;:32;;;;:::i;:::-;7612:44;;7545:127;7688:28;7719:24;7737:4;7719:9;:24::i;:::-;7688:55;;7763:6;;;;;;;;;;;7762:7;:30;;;;;7779:13;;;;;;;;;;;7773:19;;:2;:19;;;7762:30;:45;;;;;7796:11;;;;;;;;;;;7762:45;:89;;;;;7834:17;;7811:20;:40;7762:89;7758:390;;;7872:72;7889:54;7893:6;7900:42;7904:20;7925:16;;7900:3;:42::i;:::-;7889:3;:54::i;:::-;7872:16;:72::i;:::-;7963:26;7992:21;7963:50;;8056:1;8035:18;:22;8032:101;;;8082:31;8091:21;8082:8;:31::i;:::-;8032:101;7853:295;7758:390;7171:988;7091:1068;8176:18;:24;8195:4;8176:24;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;8204:18;:22;8223:2;8204:22;;;;;;;;;;;;;;;;;;;;;;;;;8176:50;8175:102;;;;8240:13;;;;;;;;;;;8232:21;;:4;:21;;;;:44;;;;;8263:13;;;;;;;;;;;8257:19;;:2;:19;;;;8232:44;8175:102;8171:148;;;8306:1;8294:13;;8171:148;8346:1;8334:9;:13;8331:163;;;8386:39;8415:9;8386;:24;8404:4;8386:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;8361:9;:24;8379:4;8361:24;;;;;;;;;;;;;;;:64;;;;8466:4;8443:39;;8452:4;8443:39;;;8472:9;8443:39;;;;;;:::i;:::-;;;;;;;;8331:163;8522:27;8542:6;8522:9;:15;8532:4;8522:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;8506:9;:15;8516:4;8506:15;;;;;;;;;;;;;;;:43;;;;8574:40;8592:21;8603:9;8592:6;:10;;:21;;;;:::i;:::-;8574:9;:13;8584:2;8574:13;;;;;;;;;;;;;;;;:17;;:40;;;;:::i;:::-;8560:9;:13;8570:2;8560:13;;;;;;;;;;;;;;;:54;;;;8645:2;8630:41;;8639:4;8630:41;;;8649:21;8660:9;8649:6;:10;;:21;;;;:::i;:::-;8630:41;;;;;;:::i;:::-;;;;;;;;6819:1860;6750:1929;;;:::o;1232:190::-;1318:7;1351:1;1346;:6;;1354:12;1338:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1378:9;1394:1;1390;:5;;;;:::i;:::-;1378:17;;1413:1;1406:8;;;1232:190;;;;;:::o;9652:88::-;9705:10;;;;;;;;;;;:19;;:27;9725:6;9705:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9652:88;:::o;1430:246::-;1488:7;1517:1;1512;:6;1508:47;;1542:1;1535:8;;;;1508:47;1565:9;1581:1;1577;:5;;;;:::i;:::-;1565:17;;1610:1;1605;1601;:5;;;;:::i;:::-;:10;1593:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1667:1;1660:8;;;1430:246;;;;;:::o;1684:132::-;1742:7;1769:39;1773:1;1776;1769:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1762:46;;1684:132;;;;:::o;8689:98::-;8746:7;8773:1;8771;:3;8770:9;;8778:1;8770:9;;;8776:1;8770:9;8763:16;;8689:98;;;;:::o;8795:483::-;4694:4;4685:6;;:13;;;;;;;;;;;;;;;;;;8873:21:::1;8911:1;8897:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8873:40;;8942:4;8924;8929:1;8924:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;8968:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8958:4;8963:1;8958:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;9001:62;9018:4;9033:15;;;;;;;;;;;9051:11;9001:8;:62::i;:::-;9074:15;;;;;;;;;;;:66;;;9155:11;9181:1;9197:4;9224;9244:15;9074:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;8862:416;4730:5:::0;4721:6;;:14;;;;;;;;;;;;;;;;;;8795:483;:::o;901:179::-;959:7;979:9;995:1;991;:5;;;;:::i;:::-;979:17;;1020:1;1015;:6;;1007:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1071:1;1064:8;;;901:179;;;;:::o;1088:136::-;1146:7;1173:43;1177:1;1180;1173:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1166:50;;1088:136;;;;:::o;1824:189::-;1910:7;1942:1;1938;:5;1945:12;1930:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1969:9;1985:1;1981;:5;;;;:::i;:::-;1969:17;;2004:1;1997:8;;;1824:189;;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446: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:86::-;4458:7;4498:4;4491:5;4487:16;4476:27;;4423:86;;;:::o;4515:112::-;4598:22;4614:5;4598:22;:::i;:::-;4593:3;4586:35;4515:112;;:::o;4633:214::-;4722:4;4760:2;4749:9;4745:18;4737:26;;4773:67;4837:1;4826:9;4822:17;4813:6;4773:67;:::i;:::-;4633:214;;;;:::o;4853:329::-;4912:6;4961:2;4949:9;4940:7;4936:23;4932:32;4929:119;;;4967:79;;:::i;:::-;4929:119;5087:1;5112:53;5157:7;5148:6;5137:9;5133:22;5112:53;:::i;:::-;5102:63;;5058:117;4853:329;;;;:::o;5188:118::-;5275:24;5293:5;5275:24;:::i;:::-;5270:3;5263:37;5188:118;;:::o;5312:222::-;5405:4;5443:2;5432:9;5428:18;5420:26;;5456:71;5524:1;5513:9;5509:17;5500:6;5456:71;:::i;:::-;5312:222;;;;:::o;5540:474::-;5608:6;5616;5665:2;5653:9;5644:7;5640:23;5636:32;5633:119;;;5671:79;;:::i;:::-;5633:119;5791:1;5816:53;5861:7;5852:6;5841:9;5837:22;5816:53;:::i;:::-;5806:63;;5762:117;5918:2;5944:53;5989:7;5980:6;5969:9;5965:22;5944:53;:::i;:::-;5934:63;;5889:118;5540:474;;;;;:::o;6020:::-;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:173::-;10555:25;10551:1;10543:6;10539:14;10532:49;10415:173;:::o;10594:366::-;10736:3;10757:67;10821:2;10816:3;10757:67;:::i;:::-;10750:74;;10833:93;10922:3;10833:93;:::i;:::-;10951:2;10946:3;10942:12;10935:19;;10594:366;;;:::o;10966:419::-;11132:4;11170:2;11159:9;11155:18;11147:26;;11219:9;11213:4;11209:20;11205:1;11194:9;11190:17;11183:47;11247:131;11373:4;11247:131;:::i;:::-;11239:139;;10966:419;;;:::o;11391:143::-;11448:5;11479:6;11473:13;11464:22;;11495:33;11522:5;11495:33;:::i;:::-;11391:143;;;;:::o;11540:351::-;11610:6;11659:2;11647:9;11638:7;11634:23;11630:32;11627:119;;;11665:79;;:::i;:::-;11627:119;11785:1;11810:64;11866:7;11857:6;11846:9;11842:22;11810:64;:::i;:::-;11800:74;;11756:128;11540:351;;;;:::o;11897:332::-;12018:4;12056:2;12045:9;12041:18;12033:26;;12069:71;12137:1;12126:9;12122:17;12113:6;12069:71;:::i;:::-;12150:72;12218:2;12207:9;12203:18;12194:6;12150:72;:::i;:::-;11897:332;;;;;:::o;12235:85::-;12280:7;12309:5;12298:16;;12235:85;;;:::o;12326:60::-;12354:3;12375:5;12368:12;;12326:60;;;:::o;12392:158::-;12450:9;12483:61;12501:42;12510:32;12536:5;12510:32;:::i;:::-;12501:42;:::i;:::-;12483:61;:::i;:::-;12470:74;;12392:158;;;:::o;12556:147::-;12651:45;12690:5;12651:45;:::i;:::-;12646:3;12639:58;12556:147;;:::o;12709:807::-;12958:4;12996:3;12985:9;12981:19;12973:27;;13010:71;13078:1;13067:9;13063:17;13054:6;13010:71;:::i;:::-;13091:72;13159:2;13148:9;13144:18;13135:6;13091:72;:::i;:::-;13173:80;13249:2;13238:9;13234:18;13225:6;13173:80;:::i;:::-;13263;13339:2;13328:9;13324:18;13315:6;13263:80;:::i;:::-;13353:73;13421:3;13410:9;13406:19;13397:6;13353:73;:::i;:::-;13436;13504:3;13493:9;13489:19;13480:6;13436:73;:::i;:::-;12709:807;;;;;;;;;:::o;13522:143::-;13579:5;13610:6;13604:13;13595:22;;13626:33;13653:5;13626:33;:::i;:::-;13522:143;;;;:::o;13671:663::-;13759:6;13767;13775;13824:2;13812:9;13803:7;13799:23;13795:32;13792:119;;;13830:79;;:::i;:::-;13792:119;13950:1;13975:64;14031:7;14022:6;14011:9;14007:22;13975:64;:::i;:::-;13965:74;;13921:128;14088:2;14114:64;14170:7;14161:6;14150:9;14146:22;14114:64;:::i;:::-;14104:74;;14059:129;14227:2;14253:64;14309:7;14300:6;14289:9;14285:22;14253:64;:::i;:::-;14243:74;;14198:129;13671:663;;;;;:::o;14340:332::-;14461:4;14499:2;14488:9;14484:18;14476:26;;14512:71;14580:1;14569:9;14565:17;14556:6;14512:71;:::i;:::-;14593:72;14661:2;14650:9;14646:18;14637:6;14593:72;:::i;:::-;14340:332;;;;;:::o;14678:116::-;14748:21;14763:5;14748:21;:::i;:::-;14741:5;14738:32;14728:60;;14784:1;14781;14774:12;14728:60;14678:116;:::o;14800:137::-;14854:5;14885:6;14879:13;14870:22;;14901:30;14925:5;14901:30;:::i;:::-;14800:137;;;;:::o;14943:345::-;15010:6;15059:2;15047:9;15038:7;15034:23;15030:32;15027:119;;;15065:79;;:::i;:::-;15027:119;15185:1;15210:61;15263:7;15254:6;15243:9;15239:22;15210:61;:::i;:::-;15200:71;;15156:125;14943:345;;;;:::o;15294:223::-;15434:34;15430:1;15422:6;15418:14;15411:58;15503:6;15498:2;15490:6;15486:15;15479:31;15294:223;:::o;15523:366::-;15665:3;15686:67;15750:2;15745:3;15686:67;:::i;:::-;15679:74;;15762:93;15851:3;15762:93;:::i;:::-;15880:2;15875:3;15871:12;15864:19;;15523:366;;;:::o;15895:419::-;16061:4;16099:2;16088:9;16084:18;16076:26;;16148:9;16142:4;16138:20;16134:1;16123:9;16119:17;16112:47;16176:131;16302:4;16176:131;:::i;:::-;16168:139;;15895:419;;;:::o;16320:221::-;16460:34;16456:1;16448:6;16444:14;16437:58;16529:4;16524:2;16516:6;16512:15;16505:29;16320:221;:::o;16547:366::-;16689:3;16710:67;16774:2;16769:3;16710:67;:::i;:::-;16703:74;;16786:93;16875:3;16786:93;:::i;:::-;16904:2;16899:3;16895:12;16888:19;;16547:366;;;:::o;16919:419::-;17085:4;17123:2;17112:9;17108:18;17100:26;;17172:9;17166:4;17162:20;17158:1;17147:9;17143:17;17136:47;17200:131;17326:4;17200:131;:::i;:::-;17192:139;;16919:419;;;:::o;17344:224::-;17484:34;17480:1;17472:6;17468:14;17461:58;17553:7;17548:2;17540:6;17536:15;17529:32;17344:224;:::o;17574:366::-;17716:3;17737:67;17801:2;17796:3;17737:67;:::i;:::-;17730:74;;17813:93;17902:3;17813:93;:::i;:::-;17931:2;17926:3;17922:12;17915:19;;17574:366;;;:::o;17946:419::-;18112:4;18150:2;18139:9;18135:18;18127:26;;18199:9;18193:4;18189:20;18185:1;18174:9;18170:17;18163:47;18227:131;18353:4;18227:131;:::i;:::-;18219:139;;17946:419;;;:::o;18371:222::-;18511:34;18507:1;18499:6;18495:14;18488:58;18580:5;18575:2;18567:6;18563:15;18556:30;18371:222;:::o;18599:366::-;18741:3;18762:67;18826:2;18821:3;18762:67;:::i;:::-;18755:74;;18838:93;18927:3;18838:93;:::i;:::-;18956:2;18951:3;18947:12;18940:19;;18599:366;;;:::o;18971:419::-;19137:4;19175:2;19164:9;19160:18;19152:26;;19224:9;19218:4;19214:20;19210:1;19199:9;19195:17;19188:47;19252:131;19378:4;19252:131;:::i;:::-;19244:139;;18971:419;;;:::o;19396:228::-;19536:34;19532:1;19524:6;19520:14;19513:58;19605:11;19600:2;19592:6;19588:15;19581:36;19396:228;:::o;19630:366::-;19772:3;19793:67;19857:2;19852:3;19793:67;:::i;:::-;19786:74;;19869:93;19958:3;19869:93;:::i;:::-;19987:2;19982:3;19978:12;19971:19;;19630:366;;;:::o;20002:419::-;20168:4;20206:2;20195:9;20191:18;20183:26;;20255:9;20249:4;20245:20;20241:1;20230:9;20226:17;20219:47;20283:131;20409:4;20283:131;:::i;:::-;20275:139;;20002:419;;;:::o;20427:175::-;20567:27;20563:1;20555:6;20551:14;20544:51;20427:175;:::o;20608:366::-;20750:3;20771:67;20835:2;20830:3;20771:67;:::i;:::-;20764:74;;20847:93;20936:3;20847:93;:::i;:::-;20965:2;20960:3;20956:12;20949:19;;20608:366;;;:::o;20980:419::-;21146:4;21184:2;21173:9;21169:18;21161:26;;21233:9;21227:4;21223:20;21219:1;21208:9;21204:17;21197:47;21261:131;21387:4;21261:131;:::i;:::-;21253:139;;20980:419;;;:::o;21405:191::-;21445:3;21464:20;21482:1;21464:20;:::i;:::-;21459:25;;21498:20;21516:1;21498:20;:::i;:::-;21493:25;;21541:1;21538;21534:9;21527:16;;21562:3;21559:1;21556:10;21553:36;;;21569:18;;:::i;:::-;21553:36;21405:191;;;;:::o;21602:176::-;21742:28;21738:1;21730:6;21726:14;21719:52;21602:176;:::o;21784:366::-;21926:3;21947:67;22011:2;22006:3;21947:67;:::i;:::-;21940:74;;22023:93;22112:3;22023:93;:::i;:::-;22141:2;22136:3;22132:12;22125:19;;21784:366;;;:::o;22156:419::-;22322:4;22360:2;22349:9;22345:18;22337:26;;22409:9;22403:4;22399:20;22395:1;22384:9;22380:17;22373:47;22437:131;22563:4;22437:131;:::i;:::-;22429:139;;22156:419;;;:::o;22581:194::-;22621:4;22641:20;22659:1;22641:20;:::i;:::-;22636:25;;22675:20;22693:1;22675:20;:::i;:::-;22670:25;;22719:1;22716;22712:9;22704:17;;22743:1;22737:4;22734:11;22731:37;;;22748:18;;:::i;:::-;22731:37;22581:194;;;;:::o;22781:180::-;22829:77;22826:1;22819:88;22926:4;22923:1;22916:15;22950:4;22947:1;22940:15;22967:185;23007:1;23024:20;23042:1;23024:20;:::i;:::-;23019:25;;23058:20;23076:1;23058:20;:::i;:::-;23053:25;;23097:1;23087:35;;23102:18;;:::i;:::-;23087:35;23144:1;23141;23137:9;23132:14;;22967:185;;;;:::o;23158:220::-;23298:34;23294:1;23286:6;23282:14;23275:58;23367:3;23362:2;23354:6;23350:15;23343:28;23158:220;:::o;23384:366::-;23526:3;23547:67;23611:2;23606:3;23547:67;:::i;:::-;23540:74;;23623:93;23712:3;23623:93;:::i;:::-;23741:2;23736:3;23732:12;23725:19;;23384:366;;;:::o;23756:419::-;23922:4;23960:2;23949:9;23945:18;23937:26;;24009:9;24003:4;23999:20;23995:1;23984:9;23980:17;23973:47;24037:131;24163:4;24037:131;:::i;:::-;24029:139;;23756:419;;;:::o;24181:180::-;24229:77;24226:1;24219:88;24326:4;24323:1;24316:15;24350:4;24347:1;24340:15;24367:180;24415:77;24412:1;24405:88;24512:4;24509:1;24502:15;24536:4;24533:1;24526:15;24553:114;24620:6;24654:5;24648:12;24638:22;;24553:114;;;:::o;24673:184::-;24772:11;24806:6;24801:3;24794:19;24846:4;24841:3;24837:14;24822:29;;24673:184;;;;:::o;24863:132::-;24930:4;24953:3;24945:11;;24983:4;24978:3;24974:14;24966:22;;24863:132;;;:::o;25001:108::-;25078:24;25096:5;25078:24;:::i;:::-;25073:3;25066:37;25001:108;;:::o;25115:179::-;25184:10;25205:46;25247:3;25239:6;25205:46;:::i;:::-;25283:4;25278:3;25274:14;25260:28;;25115:179;;;;:::o;25300:113::-;25370:4;25402;25397:3;25393:14;25385:22;;25300:113;;;:::o;25449:732::-;25568:3;25597:54;25645:5;25597:54;:::i;:::-;25667:86;25746:6;25741:3;25667:86;:::i;:::-;25660:93;;25777:56;25827:5;25777:56;:::i;:::-;25856:7;25887:1;25872:284;25897:6;25894:1;25891:13;25872:284;;;25973:6;25967:13;26000:63;26059:3;26044:13;26000:63;:::i;:::-;25993:70;;26086:60;26139:6;26086:60;:::i;:::-;26076:70;;25932:224;25919:1;25916;25912:9;25907:14;;25872:284;;;25876:14;26172:3;26165:10;;25573:608;;;25449:732;;;;:::o;26187:831::-;26450:4;26488:3;26477:9;26473:19;26465:27;;26502:71;26570:1;26559:9;26555:17;26546:6;26502:71;:::i;:::-;26583:80;26659:2;26648:9;26644:18;26635:6;26583:80;:::i;:::-;26710:9;26704:4;26700:20;26695:2;26684:9;26680:18;26673:48;26738:108;26841:4;26832:6;26738:108;:::i;:::-;26730:116;;26856:72;26924:2;26913:9;26909:18;26900:6;26856:72;:::i;:::-;26938:73;27006:3;26995:9;26991:19;26982:6;26938:73;:::i;:::-;26187:831;;;;;;;;:::o;27024:177::-;27164:29;27160:1;27152:6;27148:14;27141:53;27024:177;:::o;27207:366::-;27349:3;27370:67;27434:2;27429:3;27370:67;:::i;:::-;27363:74;;27446:93;27535:3;27446:93;:::i;:::-;27564:2;27559:3;27555:12;27548:19;;27207:366;;;:::o;27579:419::-;27745:4;27783:2;27772:9;27768:18;27760:26;;27832:9;27826:4;27822:20;27818:1;27807:9;27803:17;27796:47;27860:131;27986:4;27860:131;:::i;:::-;27852:139;;27579:419;;;:::o
Swarm Source
ipfs://c20616c880eb3e67a0ca42c1e19ea455847361cf17a8bcab45b7d8b5c93c471a
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.